1. 06 Nov, 2015 1 commit
    • Hixie's avatar
      Teach Block about padding. · 1f5844ea
      Hixie authored
      It's common to want a scrolling viewport but with padding around the
      contents. Teaching Block about this makes the places that do this
      substantially simpler and further buries ScrollableViewport and
      BlockBody (they're now only used in scrollable.dart).
      1f5844ea
  2. 02 Nov, 2015 1 commit
    • Adam Barth's avatar
      Routes shouldn't be interactive when animating out · 828775e9
      Adam Barth authored
      This patch introduces the notion of a ModalRoute that puts up a modal barrier
      and makes the route invisible to hit testing when its animating out. This patch
      also uses this mechanism in a number of places (including PageRoute). There are
      still a few more cases to convert, but that's work for a future patch.
      
      Fixes #1684
      828775e9
  3. 01 Nov, 2015 1 commit
  4. 30 Oct, 2015 1 commit
  5. 28 Oct, 2015 2 commits
  6. 27 Oct, 2015 2 commits
    • Ian Hickson's avatar
      Track scroll position · 8a900f90
      Ian Hickson authored
      - Change RouteArguments to pass the route's BuildContext rather than
        the Navigator. This caused the bulk of the examples/ and .../test/
        changes (those are mostly mechanical changes). It also meant I could
        simplify Navigator.of().
      
      - Make initState() actually get called when the State's Element is in
        the tree, so you can use Foo.of() functions there. Added a test for
        this also.
      
      - Provide a RouteWidget so that routes have a position in the Widget
        tree. The bulk of the route logic is still in a longer-lived Route
        object for now.
      
      - Make Route.setState() only rebuild the actual route, not the whole
        navigator.
      
      - Provided a Route.of().
      
      - Provided a Route.writeState / Route.readState API that tries to
        identify the clients by their runtimeType, their key, and their
        ancestors keys, up to the nearest ancestor with a GlobalKey.
      
      - Made scrollables hook into this API to track state. Added a test to
        make sure this works.
      
      - Fix the debug output of GestureDetector and the hashCode of
        MixedViewport.
      
      - Fixed ScrollableWidgetListState<T> to handle infinite lists.
      8a900f90
    • Hixie's avatar
      Use the presence of handler to determine 'enabled' · d11acc41
      Hixie authored
      Instread of an explicit 'enabled' bool, this uses the presence of the
      event handler to determine if a widget is enabled or not. This means
      that if you've not passed a handler, your widget will be disabled, which
      makes sense, since it wouldn't work anyway.
      
      Adds this feature to checkbox, and ports raised button, flat button, and
      radio buttons to this new model.
      
      Adds a checkbox to card_collection that can be disabled.
      
      Hide a (basically bogus) hint from the (soon to be disabled) strong hint
      mode in the analyzer that this reveals.
      d11acc41
  7. 26 Oct, 2015 3 commits
  8. 24 Oct, 2015 1 commit
    • Hixie's avatar
      Strong modeify the examples · a6c473ea
      Hixie authored
      This makes skyanalyzer also check the examples, and fixes everything it
      found there.
      a6c473ea
  9. 22 Oct, 2015 1 commit
    • Adam Barth's avatar
      Add Navigator.of · de395582
      Adam Barth authored
      Now you don't need to pass the navigator around everywhere.
      de395582
  10. 21 Oct, 2015 2 commits
  11. 20 Oct, 2015 1 commit
  12. 19 Oct, 2015 3 commits
  13. 15 Oct, 2015 1 commit
    • Hixie's avatar
      Improve debugging output · 1f40d96f
      Hixie authored
      Teach dumpRenderTree() to draw actual trees.
      Make the TextStyle output terser so it doesn't overflow the output.
      Make debugDumpApp() say what mode we're in (checked vs release).
      Hide lifecycle state from release mode dumps (since it's checked-only state).
      1f40d96f
  14. 12 Oct, 2015 3 commits
    • Hixie's avatar
      Lots of trivial warning fixes · f2cc43a4
      Hixie authored
      Add type annotations in many places.
      Fix some identifiers to have more lint-satisfying names.
      Make all operator==s consistent in style.
      Reorder some functions for consistency.
      Make ParentData no longer dynamic, and fix all the code around that.
      f2cc43a4
    • Adam Barth's avatar
      Update arrow in stocks search to use ColorFilter · a1d554a5
      Adam Barth authored
      We changed IconButton to require a ColorFilter to filter the color of the icon.
      a1d554a5
    • Adam Barth's avatar
      Change the default MaterialType to canvas · 09665c0d
      Adam Barth authored
      Canvas is by far the most popular type of material by call site (and makes for
      a faster default because it doesn't have a RRect clip).
      09665c0d
  15. 10 Oct, 2015 3 commits
  16. 09 Oct, 2015 2 commits
  17. 08 Oct, 2015 1 commit
  18. 06 Oct, 2015 4 commits
    • Hans Muller's avatar
      Remove PopupMenu margin · 56d9d85f
      Hans Muller authored
      The margins make using showMenu's menuPosition argument difficult and they're not really needed.
      
      I also made a few small gratuitous changes in navigator.dart.
      56d9d85f
    • Adam Barth's avatar
      Simplify Scaffold · 89a09822
      Adam Barth authored
      Rather than using a custom render object, we can just use a Stack.
      89a09822
    • Adam Barth's avatar
      ToolBar with a TabBar shouldn't have a shadow · 6cf105fe
      Adam Barth authored
      This patch makes the level of the ToolBar configurable. I've also cleaned up
      the Tab code slightly.
      
      For some reason, there's still a hairline between the ToolBar and the TabBar.
      We might need to rethink how we draw the background a bit here.
      
      Fixes #1454
      6cf105fe
    • Adam Barth's avatar
      Use Navigator to drive SnackBar · 2eec3011
      Adam Barth authored
      Now SnackBar is an ephemeral route that uses a Placeholder to put itself into
      the Scaffold.
      
      Fixes #673
      2eec3011
  19. 05 Oct, 2015 3 commits
    • Hixie's avatar
      Simplify the usage of Navigator's routes argument · 90a0f630
      Hixie authored
      (These are changes cherry-picked from in-flight branches since they are
      more independent and could be helpful even without those changes.)
      
      - Change RouteBuilder's signature to take a single argument in which the
        other fields are placed, so that we can keep iterating on those
        arguments without having to break compatibility each time. Also, this
        makes defining route builders much simpler (only one argument to
        ignore rather than a variable number).
      
      - Expose the next performance to RouteBuilders, since sometimes the
        route itself might not be where it's used.
      
      - Allow BuildContext to be used to walk children, just like it can for
        ancestors
      
      - Allow BuildContext to be used to get the Widget of the current
        BuildContext
      
      - Allow StatefulComponentElement to be referenced with a type
        specialisation so that you don't have to cast when you know what the
        type you're dealing with actually is.
      90a0f630
    • Adam Barth's avatar
      Improves names of animation classes · 3f82552d
      Adam Barth authored
      Fixes #1170
      3f82552d
    • Adam Barth's avatar
      Convert Drawer to using navigator · 49c47876
      Adam Barth authored
      This patch converts drawer to using the "openDialog" pattern for managing its
      state. Currently, the drawer entrance and exit animation aren't integrated with
      the navigator's animation system because the drawer's animations can be stopped
      and reversed, which the navigator can't yet understand. That means dismissing
      the drawer via the system back button causes the drawer to be removed
      instanteously.
      
      Fixes #715
      Fixes #1187
      49c47876
  20. 03 Oct, 2015 2 commits
    • Adam Barth's avatar
      RenderInkWell should use gestures · cf889934
      Adam Barth authored
      After this patch, InkWell is driven by gesture recognizers, which lets us
      cleanly cancel splashes when the user actually scrolls.
      
      I've also refactored all the clients of InkWell to use InkWell to detect
      gestures instead of wrapping InkWell in a GestureDetector.
      
      Fixes #1271
      cf889934
    • Adam Barth's avatar
      Clean up some style in GestureDetector · 426ce937
      Adam Barth authored
       * Rename GestureTapListener (and friends) To GestureTapCallback to match the
         other gesture callbacks.
       * Replace "ensureFoo" pattern with ??= operator.
      426ce937
  21. 02 Oct, 2015 1 commit
    • Hixie's avatar
      Groundwork for heroes transition in Stocks app · 7734c0b0
      Hixie authored
      Identify specific parts of a Stock row with a Global Key that can be
      regenerated later, and pass that key back to event handlers so they can
      use them to do the transition.
      7734c0b0
  22. 01 Oct, 2015 1 commit
    • Hixie's avatar
      EdgeDims changes and other fixes to core classes. · ce2c56b3
      Hixie authored
      - Rename EdgeDims constructor to EdgeDims.TRBL().
      
      - Add operator== to Size and Offset so that you can compare Size to
        DebugSize in checked mode.
      
      - Add Size.lerp().
      
      - Add various operators to EdgeDims. (*, /, ~/, %)
      
      - Add EdgeDims.lerp().
      
      - Update style guide. I went there to fix an EdgeDims constructor
        example, and stayed because some recent things came up and I wanted to
        add them before I forgot.
      ce2c56b3