1. 08 Jan, 2016 1 commit
    • Adam Barth's avatar
      Optimize repainting in Scaffold · ee88a685
      Adam Barth authored
      Previously, we triggered a layout (and hence a repaint) when sliding the
      draw because we gave the draw loose constraints. The drawer uses an
      Align to move itself to the proper side of the screen, so it can have
      tight constraints, which makes it a layout boundary.
      
      Also, don't trigger a layout just because the Scaffold rebuilds. There
      isn't any state in the scaffold custom layout, so it doesn't need to
      repaint just because we created a new instance of the delegate.
      
      Finally, add the debugging infrastructure I used to find these issues.
      ee88a685
  2. 07 Jan, 2016 1 commit
  3. 02 Jan, 2016 1 commit
  4. 15 Dec, 2015 1 commit
    • Hans Muller's avatar
      CustomMultiChildLayout and CustomOneChildLayout now use their delegate's... · 0d983cd8
      Hans Muller authored
      CustomMultiChildLayout and CustomOneChildLayout now use their delegate's shouldRelayout() method instead of a "token" to decide if layout is needed.
      
      MultiChildLayoutDelegate and OnChildLayoutDelegate are now expected to be stateless, i.e. they'll typically be built each time their custom layout widget is built. If the identical layout delegate is provided to a new custom layout, layout will not happen.
      
      Revised the bottom sheet implementation per the new custom layout classes. Removed a SizeObserver.
      
      Fixes #899
      0d983cd8
  5. 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
  6. 05 Dec, 2015 1 commit
  7. 04 Dec, 2015 1 commit
  8. 03 Dec, 2015 1 commit
    • 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
  9. 01 Dec, 2015 1 commit
  10. 24 Nov, 2015 1 commit
  11. 20 Nov, 2015 2 commits
    • Hixie's avatar
      Expose the close()/closed API for snack bars · ee8c0ad3
      Hixie authored
      This lets you close them manually.
      ee8c0ad3
    • Hixie's avatar
      Convert Persistent Bottom Sheets to a Scaffold API · 03e094aa
      Hixie authored
      - `Scaffold.of(context).showBottomSheet(widget);`
      - Returns an object with .closed Future and .close() method.
      - Uses a StateRoute to handle back button.
      - Take the Navigator logic out of the BottomSheet widget.
      - Support showing a sheet while an old one is going away.
      - Add Navigator.remove().
      03e094aa
  12. 19 Nov, 2015 1 commit
    • 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
  13. 05 Nov, 2015 1 commit
  14. 04 Nov, 2015 1 commit
  15. 03 Nov, 2015 4 commits
  16. 28 Oct, 2015 1 commit
  17. 19 Oct, 2015 1 commit
  18. 16 Oct, 2015 1 commit
  19. 10 Oct, 2015 3 commits
  20. 09 Oct, 2015 2 commits
  21. 06 Oct, 2015 2 commits
  22. 01 Oct, 2015 1 commit
  23. 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
  24. 17 Sep, 2015 1 commit
    • Hixie's avatar
      Improve debugging aids for widgets, rendering. · 970c8ce8
      Hixie authored
      We need a short name more often than a tree dump, so toString() should
      be the short name.
      
      Make debugDumpRenderTree() a global like debugDumpApp(), for
      consistency. It's hard to remember the
      SkyBinding.instance.dumpRenderTree() incantation.
      
      Fixes #1179.
      970c8ce8
  25. 03 Sep, 2015 1 commit
  26. 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
  27. 20 Aug, 2015 2 commits
  28. 17 Aug, 2015 1 commit
  29. 14 Aug, 2015 1 commit
  30. 13 Aug, 2015 2 commits