1. 04 Dec, 2015 1 commit
  2. 30 Nov, 2015 1 commit
    • Hixie's avatar
      NavigatorTransaction · f9ea1ce8
      Hixie authored
      To make it easier to avoid pushing twice in one frame, provide a
      transaction mechanism for the navigator.
      f9ea1ce8
  3. 20 Nov, 2015 2 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
  4. 18 Nov, 2015 1 commit
    • Hans Muller's avatar
      Update shadow rendering · d9153a13
      Hans Muller authored
      Shadows now render as three seprate MaskFilter.blur components per the most recent Material spec.
      
      The shadows Map was replaced by a similar Map called elevationToShadow with entries that match the 10 elevations specifed by http://www.google.com/design/spec/what-is-material/elevation-shadows.html.
      
      The "level" property (many classes) is now called "elevation", to match the Material spec.
      
      BoxShadow now includes a spreadRadius parameter - as in CSS box-shadow. Renamed the BoxShadow blur property to blurRadius to further align BoxShadow with CSS box-shadow.
      d9153a13
  5. 16 Nov, 2015 1 commit
    • Hixie's avatar
      Move Material page animations to Material layer. · 309d25d4
      Hixie authored
      PageRoute is now MaterialPageRoute.
      
      This also changes the following:
      
      - Now the HeroController is a Navigator observer, rather than a feature
        of HeroPageRoutes, which are gone. This means heroes can work between
        any kind of ModalRoute now.
      
      - ModalPageRoute is moved from modal_barrier.dart to routes.dart.
      
      - It allows routes to opt-out of their modal barrier being a shortcut to
        popping the route.
      
      - Features of PageRoute that aren't Material-specific get promoted to
        ModalRoute features: storage, the subtree key, offstageness...
      
      The AnimatedModalBarrier is still a ModalRoute feature.
      309d25d4
  6. 13 Nov, 2015 1 commit
  7. 03 Nov, 2015 1 commit
    • Adam Barth's avatar
      Stocks list doesn't update when stocks are loaded · 78d35391
      Adam Barth authored
      Previously, we passed widgets up the hierarchy to display them in the overlay,
      but that breaks the change propagation logic because those widgets won't get
      rebuilt.  Now we pass WidgetBuilders instead, which can be rebuilt when the
      overlay rebuilds.
      
      Fixes #1913
      78d35391
  8. 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
  9. 30 Oct, 2015 1 commit
  10. 27 Oct, 2015 1 commit
    • Adam Barth's avatar
      Use VoidCallback for onPressed and friends · d6dc9d47
      Adam Barth authored
      Previous these callbacks were leaking the implementation detail that they were
      triggered by taps. In a later patch, we're going to add a parameter to
      GestureTapCallback that these callbacks won't have.
      
      Related to #1807
      d6dc9d47
  11. 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
  12. 21 Oct, 2015 1 commit
    • Hixie's avatar
      Make Route.build() arguments match RouteBuilder() · babba2f0
      Hixie authored
      Assert at build time that PageRoute route builders do not return null
      widget trees.
      
      Also very minor new code comments and code reorg to help make the heroes
      patch easier to review.
      
      (These are changes that are unrelated to Heroes but that were part of
      the Heroes patch.)
      babba2f0
  13. 20 Oct, 2015 1 commit
  14. 16 Oct, 2015 1 commit
  15. 12 Oct, 2015 2 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
      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
  16. 10 Oct, 2015 1 commit
  17. 09 Oct, 2015 2 commits
  18. 08 Oct, 2015 1 commit
  19. 07 Oct, 2015 1 commit
  20. 06 Oct, 2015 1 commit
  21. 05 Oct, 2015 2 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
  22. 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
      Use `}) : super` consistently · e9aabcd5
      Adam Barth authored
      Fixes #1372
      e9aabcd5
  23. 01 Oct, 2015 3 commits
    • 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
    • Hixie's avatar
      Heroes: Pass next Performance to route builders · 8cce992f
      Hixie authored
      This is step 1 in making it possible to have hero transitions between
      routes. To make it possible for a route to have an "exit" animation when
      a new route has been pushed on top of it, we provide the next route's
      AnimationPerformance to the build function. It's null if there is no
      next route or if the next route has no performance.
      8cce992f
    • Adam Barth's avatar
      Make fn3 the default widget framework · 45c906d2
      Adam Barth authored
      45c906d2
  24. 18 Sep, 2015 4 commits
    • Hixie's avatar
      Introduce a showPopupMenu() function · a3ae46b9
      Hixie authored
      Instead of having to manage the popup menu from your app's build
      function, you now just call showPopupMenu() with the menu's position and
      it takes care of everything for you.
      
      This solves the problem that the popup menu was trying to mutate the
      state of the navigator from within its own initState() function.
      
      Also, remove the "route" argument to RouteBase.build() since it equals
      "this" by definition...
      
      Also, remove ModalOverlay, and instead put that logic in the navigator.
      a3ae46b9
    • Hixie's avatar
      Allow route transitions to be more flexible · d4dd786b
      Hixie authored
      - Fix AnimationTiming to have defaults for 'interval' and 'curve' since
        that seems to be how we use it.
      
      - Merge RouteBase.build and RouteBase.buildTransition
      
      - Get rid of HistoryEntry, since it added nothing
      
      - Broke out RouteBase.createPerformance() so subclasses can change what
        is created.
      
      - Build the routes backwards so that we more efficiently avoid building
        hidden routes.
      
      - Introduce an explicit way (!hasContent) for RouteState to avoid
        building, rather than the implicit "build returns null" we had before.
      d4dd786b
    • Hixie's avatar
      Require that you pass transitions a performance. · e73bbd94
      Hixie authored
      This fixes #1103.
      e73bbd94
    • 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
  25. 14 Sep, 2015 1 commit
  26. 08 Sep, 2015 1 commit
    • Adam Barth's avatar
      Introduce package:sky/animation.dart · b356d146
      Adam Barth authored
      Move the animation libraries into src/animation and change importers to use
      package:sky/animation.dart. Also, move scheduler.dart into the animation
      library so that the animation library can be self-contained.
      b356d146
  27. 04 Sep, 2015 1 commit
    • Adam Barth's avatar
      Center and Align should expand by default · 5af85d90
      Adam Barth authored
      This patch makes Center and Align expand by default, which is usually what you
      want. It also adds a ShrinkWrap option to let you shrink wrap in one or both
      directions if that's really what you want to do.
      5af85d90
  28. 02 Sep, 2015 1 commit
    • Adam Barth's avatar
      Move widgets and rendering inside src · 693ddcd8
      Adam Barth authored
      Code outside of package:sky should import this code using
      
      package:sky/rendering.dart
      package:sky/widgets.dart
      
      Moving this code into the "src" directory is a convention that signifies that
      and it cleans up the generated dartdoc because the libraries in the src
      directory aren't included in the generated documentation. Instead, the classes
      are documented in the widgets.dart and rendering.dart libraries.
      693ddcd8
  29. 28 Aug, 2015 2 commits