1. 23 Aug, 2017 1 commit
  2. 07 Aug, 2017 1 commit
  3. 29 Jun, 2017 1 commit
  4. 23 Jun, 2017 1 commit
    • Ian Hickson's avatar
      Deep linking: automatically push the route hiearchy on load. (#10894) · 9adb4a78
      Ian Hickson authored
      The main purpose of this PR is to make it so that when you set the
      initial route and it's a hierarchical route (e.g. `/a/b/c`), it
      implies multiple pushes, one for each step of the route (so in that
      case, `/`, `/a`, `/a/b`, and `/a/b/c`, in that order). If any of those
      routes don't exist, it falls back to '/'.
      
      As part of doing that, I:
      
       * Changed the default for MaterialApp.initialRoute to honor the
         actual initial route.
      
       * Added a MaterialApp.onUnknownRoute for handling bad routes.
      
       * Added a feature to flutter_driver that allows the host test script
         and the device test app to communicate.
      
       * Added a test to make sure `flutter drive --route` works.
         (Hopefully that will also prove `flutter run --route` works, though
         this isn't testing the `flutter` tool's side of that. My main
         concern is over whether the engine side works.)
      
       * Fixed `flutter drive` to output the right target file name.
      
       * Changed how the stocks app represents its data, so that we can
         show a page for a stock before we know if it exists.
      
       * Made it possible to show a stock page that doesn't exist. It shows
         a progress indicator if we're loading the data, or else shows a
         message saying it doesn't exist.
      
       * Changed the pathing structure of routes in stocks to work more
         sanely.
      
       * Made search in the stocks app actually work (before it only worked
         if we happened to accidentally trigger a rebuild). Added a test.
      
       * Replaced some custom code in the stocks app with a BackButton.
      
       * Added a "color" feature to BackButton to support the stocks use case.
      
       * Spaced out the ErrorWidget text a bit more.
      
       * Added `RouteSettings.copyWith`, which I ended up not using.
      
       * Improved the error messages around routing.
      
      While I was in some files I made a few formatting fixes, fixed some
      code health issues, and also removed `flaky: true` from some devicelab
      tests that have been stable for a while. Also added some documentation
      here and there.
      9adb4a78
  5. 20 Jun, 2017 1 commit
  6. 08 Jun, 2017 1 commit
  7. 29 May, 2017 1 commit
  8. 19 May, 2017 1 commit
  9. 18 May, 2017 1 commit
  10. 15 May, 2017 1 commit
  11. 12 May, 2017 1 commit
  12. 27 Apr, 2017 1 commit
  13. 23 Apr, 2017 1 commit
  14. 21 Apr, 2017 1 commit
  15. 19 Apr, 2017 1 commit
  16. 13 Apr, 2017 1 commit
  17. 12 Apr, 2017 1 commit
    • Ian Hickson's avatar
      Move Point to Offset (#9277) · bf017b79
      Ian Hickson authored
      * Manually fix every use of Point.x and Point.y
      
      Some of these were moved to dx/dy, but not all.
      
      * Manually convert uses of the old gradient API
      
      * Remove old reference to Point.
      
      * Mechanical changes
      
      I applied the following at the root of the Flutter repository:
      
      git ls-files -z | xargs -0 sed -i 's/\bPoint[.]origin\b/Offset.zero/g'
      git ls-files -z | xargs -0 sed -i 's/\bPoint[.]lerp\b/Offset.lerp/g'
      git ls-files -z | xargs -0 sed -i 's/\bnew Point\b/new Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\bconst Point\b/const Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\bstatic Point /static Offset /g'
      git ls-files -z | xargs -0 sed -i 's/\bfinal Point /final Offset /g'
      git ls-files -z | xargs -0 sed -i 's/^\( *\)Point /\1Offset /g'
      git ls-files -z | xargs -0 sed -i 's/ui[.]Point\b/ui.Offset/g'
      git ls-files -z | xargs -0 sed -i 's/(Point\b/(Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\([[{,]\) Point\b/\1 Offset/g'
      git ls-files -z | xargs -0 sed -i 's/@required Point\b/@required Offset/g'
      git ls-files -z | xargs -0 sed -i 's/<Point>/<Offset>/g'
      git ls-files -z | xargs -0 sed -i 's/[.]toOffset()//g'
      git ls-files -z | xargs -0 sed -i 's/[.]toPoint()//g'
      git ls-files -z | xargs -0 sed -i 's/\bshow Point, /show /g'
      git ls-files -z | xargs -0 sed -i 's/\bshow Point;/show Offset;/g'
      
      * Mechanical changes - dartdocs
      
      I applied the following at the root of the Flutter repository:
      
      git ls-files -z | xargs -0 sed -i 's/\ba \[Point\]/an [Offset]/g'
      git ls-files -z | xargs -0 sed -i 's/\[Point\]/[Offset]/g'
      
      * Further improvements and a test
      
      * Fix minor errors from rebasing...
      
      * Roll engine
      bf017b79
  18. 11 Apr, 2017 1 commit
    • xster's avatar
      Rename State.config to widget everywhere (#9273) · 89a7fdfc
      xster authored
      Rename State.config to State.widget
      Rename State.didUpdateConfig to State.didUpdateWidget
      Renamed all State subclasses' local variables named config to something else
      89a7fdfc
  19. 10 Apr, 2017 1 commit
  20. 08 Apr, 2017 1 commit
    • Alexandre Ardhuin's avatar
      upgrade to linter-0.1.30 (#9297) · 610955f8
      Alexandre Ardhuin authored
      * upgrade to linter-0.1.30
      
      * add prefer_is_empty lint
      * add directives_ordering lint
      * add no_adjacent_strings_in_list lint
      * add no_duplicate_case_values lint
      * add prefer_collection_literals lint
      * add prefer_const_constructors lint
      * add prefer_contains lint
      * add prefer_initializing_formals lint
      * add unnecessary_null_aware_assignments lint
      * add unnecessary_null_in_if_null_operators lint
      610955f8
  21. 07 Apr, 2017 1 commit
  22. 05 Apr, 2017 1 commit
  23. 02 Apr, 2017 1 commit
    • Adam Barth's avatar
      Rationalize text input widgets (#9119) · ae899486
      Adam Barth authored
      After this patch, there are three major text input widgets:
      
       * EditableText. This widget is a low-level editing control that
         interacts with the IME and displays a blinking cursor.
      
       * TextField. This widget is a Material Design text field, with all the
         bells and whistles. It is highly configurable and can be reduced down
         to a fairly simple control by setting its `decoration` property to
         null.
      
       * TextFormField. This widget is a FormField that wraps a TextField.
      
      This patch also replaces the InputValue data model for these widgets
      with a Listenable TextEditingController, which is much more flexible.
      
      Fixes #7031
      ae899486
  24. 31 Mar, 2017 1 commit
    • Adam Barth's avatar
      Improve focus management (#9074) · 89aaaa9c
      Adam Barth authored
      We now have an explicit focus tree that we manage. Instead of using
      GlobalKeys to manage focus, we use FocusNode and FocusScopeNode objects.
      The FocusNode is Listenable and notifies when its focus state changes.
      
      Focus notifications trigger by tree mutations are now delayed by one
      frame, which is necessary to handle certain complex tree mutations. In
      the common case of focus changes being triggered by user input, the
      focus notificiation still arives in the same frame.
      89aaaa9c
  25. 24 Mar, 2017 1 commit
  26. 21 Mar, 2017 1 commit
  27. 20 Mar, 2017 1 commit
  28. 17 Mar, 2017 1 commit
  29. 15 Mar, 2017 1 commit
  30. 08 Mar, 2017 1 commit
  31. 04 Mar, 2017 1 commit
  32. 24 Feb, 2017 1 commit
    • Adam Barth's avatar
      Add a `color` argument to `Container`. (#8396) · f20c3d10
      Adam Barth authored
      It's common to just want a simple colored box. Simple thing should be simple,
      so this patch adds a convenience argument to Continer for creating a box
      decoration that is just a color.
      
      Fixes #5555
      f20c3d10
  33. 21 Feb, 2017 1 commit
  34. 17 Feb, 2017 2 commits
    • Adam Barth's avatar
      Two becomes one (#8253) · e0b12ca1
      Adam Barth authored
      Rename all the "2" classes related to scrolling to remove the "2". Now that the
      old scrolling code is gone, we don't need to use the suffix.
      e0b12ca1
    • Adam Barth's avatar
      Remove Scrollable1 (#8225) · 90574b04
      Adam Barth authored
      All the clients have migrated to Scrollable2.
      90574b04
  35. 15 Feb, 2017 1 commit
  36. 11 Feb, 2017 1 commit
  37. 08 Feb, 2017 1 commit
  38. 06 Feb, 2017 1 commit
    • Jacob Richman's avatar
      Small Flutter strong mode cleanup fixes. (#7825) · 53fc96da
      Jacob Richman authored
      * Small Flutter strong mode cleanup fixes.
      
      These are cases where strong mode down cast composite errors
      generally indicated cases that would performance or correctness
      issues if Flutter code was run in a strong mode VM.
      
      * Fix Command API so that it is always in terms of Map<String,String>.
      
      * Fix typedef
      53fc96da
  39. 04 Feb, 2017 1 commit