1. 16 Nov, 2015 1 commit
    • Hixie's avatar
      Fix some examples. · 5e221334
      Hixie authored
      - drag and drop was using the wrong draggables (long press vs short
        press).
      
      - navigation.dart wasn't using material correctly and so was ending up
        with some red text.
      
      - piano wasn't followig our style guide even a little.
      
      - date picker was not scrollable.
      5e221334
  2. 10 Nov, 2015 1 commit
  3. 05 Nov, 2015 1 commit
    • Hixie's avatar
      Make Draggable use gestures · 255ed0b9
      Hixie authored
      Draggable is now itself a gesture arena member. This means it won't
      conflict with other gesture recognisers in the same path.
      
      This also allows variants of Draggable that are triggered by other
      gestures.
      
      Also, some cleanup of DoubleTapGestureRecognizer, GestureDetector, and
      PrimaryPointerGestureRecognizer.
      
      Also, make MultiTapGestureRecognizer support a timeout for longpress.
      
      Also, make Draggable data be typed.
      
      Also, hide warnings about constructor warnings for now. Analyzer doesn't
      support them yet. (Have to do this on a per-line basis)
      
      Directions for future research:
       - animating the avatar (enter/exit transitions)
       - interaction with the navigator (canceling a drag on page navigation, etc)
       - double-tap draggable
      255ed0b9
  4. 27 Oct, 2015 1 commit
    • 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
  5. 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
  6. 19 Oct, 2015 1 commit
  7. 10 Oct, 2015 1 commit
  8. 09 Oct, 2015 2 commits
  9. 06 Oct, 2015 1 commit
    • Adam Barth's avatar
      Simplify Scaffold · 89a09822
      Adam Barth authored
      Rather than using a custom render object, we can just use a Stack.
      89a09822
  10. 05 Oct, 2015 1 commit
    • 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
  11. 03 Oct, 2015 1 commit
  12. 02 Oct, 2015 1 commit
    • Hixie's avatar
      Draggable offsets and fix default drag feedback · 894a1ca0
      Hixie authored
      You can now set an offset that will be used for the hit testing for
      drops. (It doesn't move the feedback by default; use a Transform for
      that.) I also made the default feedback not be Opacity 0.5 always.
      894a1ca0
  13. 01 Oct, 2015 1 commit
  14. 30 Sep, 2015 1 commit
    • Hixie's avatar
      Draggable · a91dd07c
      Hixie authored
      Introduce a Draggable class that wraps all the logic of dragging
      something and dropping it on a DragTarget.
      
      Update examples/widgets/drag_and_drop.dart accordingly.
      
      Make the performance/transition part of routes optional.
      a91dd07c
  15. 24 Sep, 2015 3 commits
  16. 21 Sep, 2015 1 commit
    • Adam Barth's avatar
      Remove EventDisposition · 051354ae
      Adam Barth authored
      All the use cases for EventDisposition are now addressed by the gesture
      detection system.
      051354ae
  17. 18 Sep, 2015 1 commit
    • Adam Barth's avatar
      Move theme into material.dart · 4467a268
      Adam Barth authored
      Also, introduce Colors and Typography to hold the material colors and the
      typography declarations. Previously we expected clients of these libraries to
      import them into a namespace, but that doesn't play nice with re-exporting them
      from material.dart.
      4467a268
  18. 26 Aug, 2015 1 commit
    • Hixie's avatar
      Replace Flex to Row and Column in tests and examples. · ce28a717
      Hixie authored
      This still leaves Flex and FlexDirection available. At some point once
      people have transitioned to Row/Column we should rename Flex to _Flex
      and stop reexporting FlexDirection from basic.dart.
      ce28a717
  19. 22 Aug, 2015 1 commit
  20. 17 Aug, 2015 1 commit
    • Adam Barth's avatar
      Add support for drag-and-drop · ac0ec322
      Adam Barth authored
      Widgets that want to receive drops should include a DropTarget in their build.
      Currently there's no widget for initiating a drag. Components can use the
      DragController directly. In the future, we'll probably want to add a Draggable
      that knows how to do some of this work automatically.
      
      Fixes #612
      ac0ec322