1. 16 May, 2016 2 commits
  2. 06 May, 2016 1 commit
  3. 05 May, 2016 2 commits
    • Adam Barth's avatar
      DropDownMenu should use ScrollableList (#3745) · 2592f8f4
      Adam Barth authored
      Previously it used Block, which is less efficient for large numbers of items.
      Also move the top margin out of the menu item to fix the baseline alignment of
      the text.
      
      Fixes #1615
      2592f8f4
    • Adam Barth's avatar
      Ensure that DropDownMenus are always onscreen (#3742) · 6a46bf2e
      Adam Barth authored
      This patch sizes the menu such that it is always on screen, but doesn't scroll
      the menu to ensure that the currently selected item is always visible and on
      top of the button. That will need to wait for a later patch.
      
      Also, teach CustomPaint how to repaint animations more efficiently.
      
      Fixes #3720
      6a46bf2e
  4. 04 May, 2016 2 commits
  5. 22 Apr, 2016 1 commit
  6. 20 Apr, 2016 1 commit
  7. 15 Apr, 2016 1 commit
    • Ian Hickson's avatar
      Material Data Tables (#3337) · a91bc0ba
      Ian Hickson authored
      + Add new demo to gallery to show data tables. (This currently doesn't
      use a Card; I'll create a Card version in a subsequent patch.)
      
      + Fix checkbox alignment. It now centers in its box regardless.
      
      + Add Colors.black54.
      
      + Some minor fixes to dartdocs.
      
      + DataTable, DataColumn, DataRow, DataCell
      
      + RowInkWell
      
      + Augment dartdocs of materia/debug.dart.
      
      + DropDownButtonHideUnderline to hide the underline in a drop-down when
        used in a DataTable.
      
      + Add new capabilities to InkResponse to support RowInkWell.
      
      + Augment dartdocs of materia/material.dart.
      
      + Add an assert to catch nested Blocks.
      
      + Fix a crash in RenderBox when you remove an object and an ancestor
        used its baseline. (https://github.com/flutter/flutter/issues/2874)
      
      + Fix (and redocument) RenderBaseline/Baseline.
      
      + Add flex support to IntrinsicColumnWidth.
      
      + Document more stuff on the RenderTable side.
      
      + Fix a bug with parentData handling on RenderTable children.
      
      + Completely rewrite the column width computations. The old logic made
        no sense at all.
      
      + Add dartdocs to widgets/debug.dart.
      
      + Add a toString for TableRow.
      a91bc0ba
  8. 07 Apr, 2016 1 commit
  9. 01 Apr, 2016 2 commits
  10. 31 Mar, 2016 3 commits
  11. 29 Mar, 2016 1 commit
  12. 18 Mar, 2016 1 commit
  13. 14 Mar, 2016 1 commit
  14. 13 Mar, 2016 1 commit
    • Adam Barth's avatar
      [rename fixit] Flex alignments · d5b2e2a0
      Adam Barth authored
      * justifyContent -> mainAxisAlignment
      * alignItems -> crossAxisAlignment
      * FlexJustifyContent -> MainAxisAlignment
      * FlexAlignItems -> CrossAxisAlignment
      
      Fixes #231
      d5b2e2a0
  15. 12 Mar, 2016 6 commits
  16. 05 Mar, 2016 1 commit
  17. 02 Mar, 2016 1 commit
    • 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
  18. 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
  19. 22 Jan, 2016 1 commit
  20. 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
  21. 11 Jan, 2016 1 commit
  22. 16 Dec, 2015 2 commits
    • Hixie's avatar
      Canceling a dropdown menu selects null value · 0c6e3416
      Hixie authored
      Previously we didn't distinguish between canceling the menu (which
      popped the route with no return value, i.e. null) and explicitly
      selecting an item whose value is null (pop with value null). Both fired
      onChange(null).
      
      Now we box the return value so we can distinguish the two cases.
      
      I would have preferred to just disallow "null" as a value but it turns
      out people like being able to use "null" as a value for much the same
      reason we do, and it seems best for us to pay the complexity cost of
      boxing than having everyone else do it. :-)
      0c6e3416
    • Hixie's avatar
  23. 08 Dec, 2015 3 commits
    • Adam Barth's avatar
      Widgets that depend on Material should assert that · 8dc607a9
      Adam Barth authored
      After this patch, if you try to use a widget that depends on being enclosed in
      a material, you now get an assert and a debugPrint if you're not inside a
      material.
      
      Fixes #243
      8dc607a9
    • Ian Hickson's avatar
      Make BoxDecoration replaceable. · 2afa87df
      Ian Hickson authored
      Factor out a reusable interface called Decoration from BoxDecoration.
      
      Make all the consumers of BoxDecoration and the erstwhile BoxPainter
      into consumers of Decoration.
      
      Make a BoxPainter be something you get from a Decoration, rather than
      something to which you pass a BoxDecoration.
      
      Rename Shape to BoxShape now that it's documented specifically as
      applying to boxes.
      
      Move EdgeDims to its own file.
      
      Move FractionalOffset up so that it's with the other helper classes in
      its file rather than alone at the end.
      
      Minor change to RenderClipOval's hit testing to avoid taking an
      unnecessary square root.
      
      Rename BoxDecorationPosition to DecorationPosition since
      RenderDecoratedBox now takes any Decoration.
      
      Implement hit testing for rounded rects.
      
      Rename AnimatedBoxDecorationValue to AnimatedDecorationValue, and make
      it support lerping across any Decoration (by deferring to the objects
      involved).
      2afa87df
    • 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