1. 14 Apr, 2016 1 commit
  2. 12 Apr, 2016 1 commit
  3. 07 Apr, 2016 1 commit
  4. 06 Apr, 2016 1 commit
    • Adam Barth's avatar
      PopupMenuButton should lazily build menu items · 7ab122e5
      Adam Barth authored
      Previously, the client of PopupMenuButton needed to build all the menu times
      
      when building the PopupMenuButton. This can get expensive if, for example, each
      item in a scrollable list has a popup menu associated with it.
      
      Now the client passes a builder function to the PopupMenuButton that gets
      invoked only when its time to show the menu items.
      7ab122e5
  5. 31 Mar, 2016 1 commit
  6. 29 Mar, 2016 1 commit
  7. 18 Mar, 2016 1 commit
  8. 14 Mar, 2016 1 commit
  9. 13 Mar, 2016 1 commit
    • Adam Barth's avatar
      [rename fixit] left -> leading, right -> trailing · e48c822c
      Adam Barth authored
      The terms "left" and "right" have an LTR bias. Instead, we now use
      "leading" and "trailing", for these list and grid decorations so that
      we can later rearrange them to match the reading order.
      
      Fixes #2540
      Fixes #2548
      e48c822c
  10. 12 Mar, 2016 7 commits
  11. 11 Mar, 2016 1 commit
    • Ian Hickson's avatar
      Enable ALL THE LINTS · 1b9cd520
      Ian Hickson authored
      Well, all the easy ones, anyway.
      
      For some reason `// ignore:` isn't working for me so I've disabled
      lints that need that. Also disabled those that require a ton of work
      (which I'm doing, but not in this PR, to keep it reviewable).
      
      This adds:
      - avoid_init_to_null
      - library_names
      - package_api_docs
      - package_names
      - package_prefixed_library_names
      - prefer_is_not_empty
      - sort_constructors_first
      - sort_unnamed_constructors_first
      - unnecessary_getters_setters
      1b9cd520
  12. 08 Mar, 2016 1 commit
  13. 02 Mar, 2016 2 commits
    • Adam Barth's avatar
      Switch Material Design icons to using the iconfont · 870894fc
      Adam Barth authored
      Rather than managing all the Material Design icons manually, we now
      manage them using an icon font. The icon font contains glyphs for each
      icon in an efficient vector format.
      
      This patch updates the FLX tooling to include the MaterialIcons font and
      updates the Icon widget to use the font instead of asset images.
      
      Fixes #2313
      Fixes #2218
      Fixes #2009
      Fixes #994
      870894fc
    • Hans Muller's avatar
      Added menu dividers · d8eaac42
      Hans Muller authored
      d8eaac42
  14. 26 Feb, 2016 3 commits
  15. 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
  16. 27 Jan, 2016 1 commit
  17. 22 Jan, 2016 1 commit
  18. 20 Jan, 2016 4 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
      AnimatedBuilder should have a child · d25951c5
      Adam Barth authored
      Providing a pre-built child is more efficient because we don't need to rebuild
      the child every tick of the animation.
      d25951c5
    • 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
    • Adam Barth's avatar
      Move Scaffold over to using AnimationController · 0b098ee2
      Adam Barth authored
      Also, clean up the class hierarchy for AnimationController now that
      we've renamed progress to value. That means everything in the hierarchy
      now has a value, include Watchable. This patch renames Watchable to
      Animated<T>, which lets us use that type almost everywhere.
      
      I've added some ducktape to modal bottom sheets to avoid having to
      refactor all of Navigator to use AnimationController. I'll remove the
      ducktape in the next patch.
      0b098ee2
  19. 08 Dec, 2015 1 commit
    • Adam Barth's avatar
      Material gallery crashes when you press the drop-down button · 4982c553
      Adam Barth authored
      Now use use the route's getPosition function to position the drop-down menu.
      Also, fix a number of other related bugs that blocked the dropdown button from
      working correctly. The dropdown menu still has the following issues:
      
      1) In the exit animation, the background of the menu disappears too quickly
         because of incorrect paint bounds computations in the layer tree.
      2) The drop down menu isn't positioned correctly after the device rotates.
         We'll need to address this issue in a separate patch.
      
      Fixes #630
      4982c553
  20. 05 Dec, 2015 2 commits
  21. 04 Dec, 2015 1 commit
  22. 30 Nov, 2015 2 commits
  23. 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
    • Adam Barth's avatar
      Callback identity is too fragile for CustomPaint · 72329cf4
      Adam Barth authored
      Many of the widgets that use CustomPaint were spamming repaints because
      CustomPaint repaints when the identity of the onPaint callback changes, which
      it does every build for StatelessComponents.
      
      This patch changes CustomPaint to use a CustomPainter, similar to the new
      custom layout widgets. The CustomPainter has a `shouldRepaint` function along
      with its `paint` function. This function gives clients explicit control over
      when the custom paint object repaints.
      72329cf4
  24. 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
  25. 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