1. 26 Sep, 2016 1 commit
    • Ian Hickson's avatar
      LayoutBuilder + GlobalKey + setState assert (#6068) · 78c74116
      Ian Hickson authored
      This silences an assertion that fired when reparenting a widget with a
      global key inside a LayoutBuilder callback when that callback also
      happened to call setState (directly or indirectly) on that widget.
      
      Normally such setStates are considered ok since we know we haven't
      cleaned that subtree yet, but we were not correctly handling the case
      where the list needed resorting in that situation.
      78c74116
  2. 24 Sep, 2016 1 commit
  3. 22 Sep, 2016 1 commit
  4. 21 Sep, 2016 1 commit
  5. 20 Sep, 2016 3 commits
  6. 16 Sep, 2016 1 commit
  7. 15 Sep, 2016 2 commits
  8. 12 Sep, 2016 1 commit
  9. 09 Sep, 2016 2 commits
  10. 08 Sep, 2016 1 commit
    • Ian Hickson's avatar
      Make tests more realistic (#5762) · 5bc8888e
      Ian Hickson authored
      Previously, pumpWidget() would do a partial pump (it didn't trigger
      Ticker callbacks or post-frame callbacks), and pump() would do a full
      pump. This patch brings them closer together. It also makes runApp run a
      full actual frame, rather than skipping the transient callback part of
      the frame logic. Having "half-frames" in the system was confusing and
      could lead to bugs where code expecting to run before the next layout
      pass didn't because a "half-frame" ran first.
      
      Also, make Tickers start ticking in the frame that they were started in,
      if they were started during a frame. This means we no longer spin a
      frame for t=0, we jump straight to the first actual frame.
      
      Other changes in this patch:
      
      * rename WidgetsBinding._runApp to WidgetsBinding.attachRootWidget, so
        that tests can use it to more accurately mock out runApp.
      
      * allow loadStructuredData to return synchronously.
      
      * make handleBeginFrame handle not being given a time stamp.
      
      * make DataPipeImageProvider.loadAsync protected (rather than private),
        and document it. There wasn't really a reason for it to be private.
      
      * fix ImageConfiguration.toString.
      
      * introduce debugPrintBuildScope and debugPrintScheduleBuildForStacks,
        which can help debug problems with widgets getting marked as dirty but
        not cleaned.
      
      * make debugPrintRebuildDirtyWidgets say "Building" the first time and
        "Rebuilding" the second, to make it clearer when a widget is first
        created. This makes debugging widget lifecycle issues much easier.
      
      * make debugDumpApp more resilient.
      
      * debugPrintStack now takes a label that is printed before the stack.
      
      * improve the banner shown for debugPrintBeginFrameBanner.
      
      * various and sundry documentation fixes
      5bc8888e
  11. 07 Sep, 2016 1 commit
  12. 29 Aug, 2016 1 commit
  13. 26 Aug, 2016 3 commits
  14. 23 Aug, 2016 1 commit
  15. 09 Aug, 2016 1 commit
  16. 29 Jul, 2016 1 commit
  17. 28 Jul, 2016 1 commit
    • Ian Hickson's avatar
      Some cleanup for hot reload (#5108) · 2b343a93
      Ian Hickson authored
      - show the next error fully after a hot reload
      - hide _AssertionError in stacks
      - immediately rebuild after a reassemble, so that hit tests work
      - catch errors when notifying global key listeners
      2b343a93
  18. 27 Jul, 2016 1 commit
  19. 07 Jul, 2016 1 commit
  20. 01 Jul, 2016 1 commit
    • Adam Barth's avatar
      Update use of `@protected` (#4805) · 8c535ad7
      Adam Barth authored
      Now that protected can be accessed from inside the same library, we can
      use protected in a number of new places and we can remove some
      trampolines we were using to work around its previous semantics.
      8c535ad7
  21. 30 Jun, 2016 2 commits
  22. 26 Jun, 2016 1 commit
    • Adam Barth's avatar
      Document State (#4762) · 5fc04dab
      Adam Barth authored
      This patch documents State in detail because it's a very common class
      for developers to work with and it has a number of subtles.
      5fc04dab
  23. 25 Jun, 2016 1 commit
  24. 22 Jun, 2016 3 commits
    • pq's avatar
      _BuildFunction => WidgetBuilder · b2fed164
      pq authored
      b2fed164
    • pq's avatar
      Updated closure trampolines. · dcc7b144
      pq authored
      dcc7b144
    • pq's avatar
      Update to latest analyzer (0.27.4-alpha.14) and misc. analysis fixes. · 352e2f57
      pq authored
      * brings in analyzer version (`0.27.4-alpha.14`) corresponding to current Dart SDK (`1.18.0-dev.2.0`).
      * updates analysis to use prefered API for embedder URI resolution
      * adds trampolines to `State` and `StatelessWidget` to allow for warning-free within-library @protected access (needed since we closed off access to @protected closures from outside subclasses).
      * turns off cache dependency tracking for analysis (in DDC this amounted to a 10% speed improvement).
      352e2f57
  25. 07 Jun, 2016 2 commits
    • Ian Hickson's avatar
      Provide UI to paginate PaginatedDataTable (#4382) · 68f92d4f
      Ian Hickson authored
      Also:
      * Make PaginatedDataTable able to scroll itself horizontally.
      * Make drop down buttons support having an explicit text style and icon
        size given.
      * Fix a bug with drop-down buttons asserting when opened partly
        off-screen.
      * Make sure to pop the drop-down button's route if the drop-down button
        is discarded while the route is up.
      * Remove extraneous padding on drop-down buttons. (Couldn't figure out
        why it was there, and it breaks alignment when a drop-down is mixed
        with other text.)
      * Some docs improvements.
      * Add Route.isActive
      * Add a setState() method to ModalRoutes.
      68f92d4f
    • Adam Barth's avatar
      313c17fa
  26. 02 Jun, 2016 1 commit
  27. 01 Jun, 2016 2 commits
  28. 25 May, 2016 1 commit
  29. 24 May, 2016 1 commit