1. 12 Mar, 2016 3 commits
  2. 08 Mar, 2016 1 commit
  3. 11 Feb, 2016 1 commit
    • Ian Hickson's avatar
      Clean up imports and exports. · a94999ba
      Ian Hickson authored
      Each layer is supposed to reexport the parts of the previous layer
      that are part of its API.
      
      - In painting.dart, export from dart:ui all the Canvas-related APIs
        that make sense to be used at higher levels, e.g. PaintingStyle.
      
      - Delete painting/shadows.dart. It was dead code.
      
      - In rendering/object.dart, export all of painting.dart.
      
      - In widgets/basic.dart, export all of painting.dart and
        animation.dart. Some classes in animation/ are renamed to make this
        less disruptive and confusing to the namespace.
      
      - Split out Stocks back into an import model rather than a part model,
        so that it's easier to manage its dependencies on a per-file basis.
      
      - Move Ticker to scheduler library.
      
      - Remove as many redundant imports as possible now.
      
      - Some minor nit picking cleanup in various files.
      a94999ba
  4. 27 Jan, 2016 1 commit
  5. 21 Jan, 2016 1 commit
    • Adam Barth's avatar
      Use parent consistently for parent animation · d59da41b
      Adam Barth authored
      Some of the Animation classes that we converted from performances use
      the term "master" to refer to the animation upon which they're based.
      This patch changes them to use the term "parent", which is consistent
      with the rest of the animation classes.
      d59da41b
  6. 20 Jan, 2016 3 commits
    • Adam Barth's avatar
      Remove Performance and AnimatedValue · b988a875
      Adam Barth authored
      This patch removes Performance and AnimationValue now that we've ported the
      framework over to AnimationController and Tween. This patch also cleans up the
      names of the AnimationController classes now that they don't have to avoid
      conflicts with the old animation API. Specifically, I've made the following
      renames:
      
       * Animated -> Animation
       * Evaluatable -> Animatable
       * PerformanceStatus -> AnimationStatus
      
      This patch is just renames and moving code around. There aren't any changes in
      behavior.
      b988a875
    • Adam Barth's avatar
      Port most of widgets to AnimationController · 24872f69
      Adam Barth authored
      I've left transitions and enter_exit_transition out of this patch, but I've
      converted the rest.
      24872f69
    • Adam Barth's avatar
      Switch Navigator over to using AnimationController · 6cea5dc8
      Adam Barth authored
      This patch moves Navigator and related code over to using
      AnimationController.
      6cea5dc8
  7. 07 Jan, 2016 1 commit
  8. 11 Dec, 2015 1 commit
    • Adam Barth's avatar
      Add dartdoc for image classes · 40dda1ed
      Adam Barth authored
       - Adds dartdoc for all the `of` functions.
       - Renames Image to RawImage. This widget is rarely used and shouldn't take up
         such a nice global name.
      
      Fixes #361
      40dda1ed
  9. 09 Dec, 2015 2 commits
  10. 08 Dec, 2015 4 commits
  11. 07 Dec, 2015 1 commit
    • Hixie's avatar
      didChangeNext() · 18d5c5e7
      Hixie authored
      Replace didPushNext() and didReplaceNext() with didChangeNext(), and
      call it in more cases, so that a route can easily track the next route.
      
      Use this to make TransitionRoute properly track its next route so that
      you can do next-route-driven animations that work even with removes,
      replaces, and other crazy manipulations of the navigator stack.
      18d5c5e7
  12. 05 Dec, 2015 1 commit
  13. 04 Dec, 2015 2 commits
  14. 03 Dec, 2015 5 commits
    • Hixie's avatar
      Be more discerning with forward transitions · cd19702c
      Hixie authored
      So you don't fade out when going to a popup menu, for example.
      cd19702c
    • Hixie's avatar
      Navigator.canPop(context) · cf7a3b04
      Hixie authored
      cf7a3b04
    • Hixie's avatar
      Let MaterialApp.onGenerateRoute return a Route · df07a69b
      Hixie authored
      Also:
       - minor code reindents in places.
       - reset the widget tree between tests.
       - once you generate a route, don't let its builder change
         (previously it would keep changing as the routes table changed).
       - revert the stocks app toolbar-fading-on-forward-transition thing.
      df07a69b
    • Adam Barth's avatar
      Fix a large number of Drawer bugs · 1d195cb9
      Adam Barth authored
      This patch restructures how we handle drawer. The drawer is now a child of the
      Scaffold, which wraps the Drawer in a DrawerController. The DrawerController
      manages the interaction with the navigator as well as the edge swiping. The
      DrawerController's state machine is driven almost entirely off its Performance,
      which it now owns completely.
      
      Fixes #90
      Fixes #187
      Fixes #192
      Fixes #194
      Fixes #604
      1d195cb9
    • Hixie's avatar
      buildForwardTransition() · bc5307f5
      Hixie authored
      For those times when you want to do something as you move away from a
      route into the next one, as well as when you move into it from the
      previous one.
      bc5307f5
  15. 30 Nov, 2015 2 commits
  16. 26 Nov, 2015 2 commits
    • Hixie's avatar
      Turn the LocalHistoryRoute into a mixin. · 4e513822
      Hixie authored
      4e513822
    • Hixie's avatar
      Clean up the Navigator API again. · 88e74693
      Hixie authored
      * Split didPush() into didPush() and install(), so that we can install
        the overlays without triggering the push logic. This will be used in a
        subsequent patch to implement route replacement.
      
      * Split didPop() into didPop() and dispose(), so that we can remove
        overlays without triggering the pop logic. Also for a subsequent patch
        that implements replacement.
      
      * Clean up _navigator on the routes when the Navigator itself is
        disposed.
      
      * Drop the forwarding logic on willPushNext() -- now didPushNext() --
        and didPopNext(), since we no longer have StateRoutes to get in the
        way.
      
      * Implement isCurrent more broadly and without having to keep track of
        state.
      
      * Provide some toString()s on NamedRouteSettings and ModalRoutes.
      
      * Make OverlayState.initState() use the insertAl functionality.
      
      * Make OverlayRoute.builders abstract since that way you'll catch when
        you forget to do it. If you don't want overlays, don't inherit from
        this class.
      
      * Made handleStatusChanged() on TransitionRoute public so that it can be
        overridden by subclasses.
      88e74693
  17. 24 Nov, 2015 1 commit
  18. 22 Nov, 2015 2 commits
  19. 20 Nov, 2015 3 commits
    • Hixie's avatar
      Route refactor · 6e371875
      Hixie authored
      - Removed the concept of ephemeral routes.
      - Renamed the two _MenuRoutes to _PopupMenuRoute and _DropDownRoute.
      - Added type arguments in various places:
        - DropDownMenu
        - _DropDownRoute
        - _ModalBottomSheetRoute
        - PopupMenuItem
        - _PopupMenu
        - _PopupMenuRoute
      - Made _ModalBottomSheetRoute, the two ex _MenuRoutes, and _DialogRoute
        all inherit from ModalRoute, via PopupRoute.
      - Change "Dropdown" and "DropDown" to "DropDown" consistently.
      - Made MaterialPageRoute inherit from PageRoute.
      - Made ModalBarrier not create a box if it's always transparent.
      - Exposed the Futures on TransitionRoutes.
      - Fixed that menus were no longer dismissable by tapping the modal
        barrier.
      6e371875
    • Hixie's avatar
      Give type arguments to routes. · 13f3a9be
      Hixie authored
      These end up not actually being used, currently, because we don't have
      generic methods, which you'd need for showDialog() and friends, and we
      don't have any way to parameterise a class type at runtime, which you'd
      need for MaterialApp routes, but it's a step in the right direction.
      13f3a9be
    • Hixie's avatar
      OverlayRoute.finished() · 2e0e6aa4
      Hixie authored
      Rather than have delayed calls to super.didPop(), which raises my
      eyebrow every time I see it, this provides a separate finished()
      function to call, and uses the convention that if you want to call it
      yourself, you just don't call super.didPop().
      2e0e6aa4
  20. 19 Nov, 2015 2 commits
    • Adam Barth's avatar
      Popup menu in Stocks throws exception · 2d824894
      Adam Barth authored
      Previously, we were putting a ForcedLayer just below the overlay, but that
      causes trouble for routes like the popup menu that want to position themselves
      inside the overlay. Instead, I've moved the ForcedLayer down into ModalRoute.
      
      Also, rename ForcedLayer to RepaintBoundary, which is more descriptive of what
      this widget does.
      
      Fixes #485
      2d824894
    • Hixie's avatar
      Snackbar Refactor · 954713ab
      Hixie authored
      "showSnackBar()" is now a feature of a Scaffold. To get to a Scaffold
      you either use a global key (`scaffoldKey.currentState.showSnackBar(...)`),
      or you use `Scaffold.of(context)`.
      
      Snack bars no longer have a route. They are entirely managed by the
      Scaffold. Fixes #432.
      
      Snack bars now queue up when you have several of them. Fixes #374.
      
      Snack bars now auto-size themselves around their contents. This is step
      one towards implementing multiline snack bars.
      
      Snack bars now self-dismiss after some per-snackbar configurable period.
      
      The self-dismissing pauses while a dialog is up above the snackbar (or
      anything that uses ModalRoute). To enable this, there's now a
      `ModalRoute.of(context)` API that returns the current ModalRoute, and
      you will be rebuilt if you asked for this and the route's "current"
      status changes. To implement this, the Navigator now rebuilds
      unconditionally any time it pushes or pops a route.
      
      Snack bars now use the curves that Android uses for snack bars.
      
      Snack bar contents now fade in.
      954713ab
  21. 18 Nov, 2015 1 commit
    • Adam Barth's avatar
      Reduce record time in Stocks drawer animation by 55% · 298f4a6e
      Adam Barth authored
      Now we use a ForcedLayer in the navigator overlay to cache the recording for
      each entry in the overlay. This mechanism just caches the display list, not the
      underlying pixels.
      
      Also, remove the "dispose" notification in the Layer tree because it was
      disposing layer too eagerly. We don't actually need this notification for
      anything other than eagerly freeing some C++ memory.
      298f4a6e