1. 21 Oct, 2015 3 commits
    • Hixie's avatar
      RotationTransition · 86087cbb
      Hixie authored
      A transition that rotates its contents.
      86087cbb
    • 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
    • Hixie's avatar
      UniqueKey · 188aade2
      Hixie authored
      Sometimes you need a Key (not a GlobalKey) that is only equal to itself
      but can be used multiple times in the tree. Enter UniqueKey!
      188aade2
  2. 20 Oct, 2015 10 commits
  3. 19 Oct, 2015 9 commits
    • Hixie's avatar
      requestPostFrameCallback() · ed195cfa
      Hixie authored
      Provide a way to schedule a callback for immediately after the current
      frame has been sent to the GPU thread. This is useful for times where
      you want to immediately schedule yourself for another build or layout
      because, for instance, you just displayed frame zero of an animation and
      you want to use the metrics from that layout to set up the actual
      animation to begin immediately, such that the very next frame is frame 1.
      ed195cfa
    • Adam Barth's avatar
      Show ColorFilter · 40942233
      Adam Barth authored
      Instead of requiring clients to use ui.ColorFilter, we show show the
      ColorFilter class, similar to what we do for Color.
      40942233
    • Hixie's avatar
      Stop AnimatedContainer from animating every build · 552f26d7
      Hixie authored
      It turns out that an AnimatedContainer with a BoxDecoration would
      start animating every single time it was built, whether or not the
      container's decoration had changed.
      552f26d7
    • Adam Barth's avatar
      Convert Align to use FractionalOffset instead of two doubles · 715b304e
      Adam Barth authored
      It was confusing as to whether these were fractions or pixels.
      
      Fixes #1622
      715b304e
    • Adam Barth's avatar
      Remove ColorFilter widget · 9baf8eb3
      Adam Barth authored
      This widget is slow and not commonly used. The original reason we added it was
      to colorize images, but now that feature is built into the image and background
      image widgets.
      
      Fixes #1646
      9baf8eb3
    • Adam Barth's avatar
      Remove old setFoo functions on Paint · 2aa79d56
      Adam Barth authored
      We now just use Dart properties, which is more idiomatic.
      2aa79d56
    • Adam Barth's avatar
      Scaffold should wrap its body in a Material · 27b5fc14
      Adam Barth authored
      Fixes #1669
      27b5fc14
    • Adam Barth's avatar
      The dx and dy properties of PointerInputEvents shouldn't be null · ccc98c8f
      Adam Barth authored
      They should be 0.0 when there's no offset.
      
      Fixes #1661
      ccc98c8f
    • Adam Barth's avatar
      Add a MaterialList · 284eaa9c
      Adam Barth authored
      A MaterialList understands the sizing, padding, and scrollbar features of
      Material Design lists.
      
      Also, add CircleAvatar for showing the circular avatars that are commonly used
      in material lists.
      284eaa9c
  4. 18 Oct, 2015 2 commits
    • Hixie's avatar
      Enable Positioned to be animated. · fb8fe97a
      Hixie authored
      Add a AnimatedRelativeRectValue class for animating RelativeRects.
      
      Add a PositionedTransition class for animating Positioned using
      AnimatedRelativeRectValues.
      
      Add a test for PositionedTransition.
      
      Fix a math bug a RelativeRect found by the test.
      
      Fix a logic bug in the two ParentDataWidget classes found by the test.
      Specifically, they were marking the child dirty, rather than the parent.
      The parentData is for the parent's layout, not the child's, so they have
      to mark the parent dirty. (I didn't hoist this up to the superclass
      because ParentData could be used for painting, hit testing,
      accessibility, or any number of other things, and I didn't want to bake
      in the assumption that it needed markNeedsLayout.)
      fb8fe97a
    • Hixie's avatar
      toString()ify more stuff · 7c0c1c96
      Hixie authored
      - truncate pixel values to 1dp since there's really no point being told
        the Size is 302.98732587287 by 648.28498579187.
      
      - describe more Widgets so that debugDumpApp() is more useful.
      
      - remove bufferValue from ProgressIndicator (cc @hansmuller) since it's
        not yet implemented.
      
      - half-hearted toString() for ThemeData. There's no point making a
        complete one, since it would cause line-wrap even on big monitors in
        debugDumpApp dumps, and you can easily get the actual values from a
        debugging if that's the issue.
      
      - flesh out BoxConstraints.toString() so that fully unconstrained and
        fully infinite constraints are called out explicitly. I experimented
        with adding even more special cases, e.g. calling out unconstrained
        widths with fixed heights, etc, but it made the output less readable.
      
      - remove a redundant _updateVariable() in AnimatedContainer (cc
        @abarth).
      
      - add more information to RenderView.toString().
      7c0c1c96
  5. 17 Oct, 2015 2 commits
    • Hixie's avatar
      Reduce latency of low-volume debugPrint output · aed45ba9
      Hixie authored
      If we haven't printed anything for a second, then reset the count of how
      much we've printed.
      
      I also reduced the amount of data to ~16kb until we pause because I saw
      some corruption even pausing 1 second every ~32kb. (Numbers are
      approximate because we're counting UTF-16 characters and some of the
      characters in the output are multiple bytes in UTF-8.)
      aed45ba9
    • Hixie's avatar
      RelativeRect · c701ad6a
      Hixie authored
      Introduce a class that can describe the metrics used in a Positioned
      widget, to enable easier manipulation and storage of the values, e.g.
      for animation purposes.
      c701ad6a
  6. 16 Oct, 2015 4 commits
    • Hixie's avatar
      Sundry debugging aids and fixes · d0d84e16
      Hixie authored
      (These are all the debugging-related fixes and trivial typo fixes that I
      extracted out of my heroes branch.)
      
      Fix rendering.dart import order.
      
      Introduce a debugLabel for Performances so that when you create a
      performance, you can tag it so that if later you print it out, you can
      figure out which performance it is.
      
      Allow the progress of a PerformanceView to be determined (but not set).
      
      Allow subclasses of PerformanceView that are constants to be created by
      defining a constant constructor for PerformanceView.
      
      Introduce a debugPrint() method that throttles its output. This is a
      test to see if it resolves the problems people have been having with
      debugDumpRenderTree() et al having their output corrupted on Android. It
      turns out (according to some things I read On The Internets) that
      Android only has a 64KB kernel buffer for its logs and and if you output
      to it too fast, it'll drop data on the floor. If this does in fact
      reliably resolve this problem, we should probably move the fix over to
      C++ land (where "print" is implemented) so that any use of print is
      handled (avoiding the interleaving problem we have now if you use both
      debugPrint() and print()).
      
      Fix a bug with the debugging code for "size". In the specific case of a
      RenderBox having a parent that doesn't set parentUsesSize, then later
      the parent setting parentUsesSize but the child having its layout
      short-circuited (e.g. because the constraints didn't change), we didn't
      update the _DebugSize object to know that now it's ok that the size be
      used by the parent, and we'd assert.
      
      Also, allow a _DebugSize to be used to set the size of yourself.
      Previously you could only set your size from a regular Size or from your
      child's _DebugSize.
      
      Add more debugging information to various Widgets where it might be
      helpful.
      
      Make GlobalKey's toString() include the runtimeType so that when
      subclassing it the new class doesn't claim to be a GlobalKey instance.
      
      Include the Widget's key in the Element's description since we don't
      include it in the detailed description normally (it's in the name part).
      
      Fix a test that was returning null from a route.
      d0d84e16
    • Hans Muller's avatar
      Fix scollable tabs, add basic unit test · 09ac8de2
      Hans Muller authored
      09ac8de2
    • Hans Muller's avatar
    • Adam Barth's avatar
      Rationalize exports a bit more · 7b31d9b2
      Adam Barth authored
      The goal is to follow the guidelines in
      https://github.com/flutter/engine/blob/master/sky/specs/style-guide.md#packages
      
      Fixes #1638
      7b31d9b2
  7. 15 Oct, 2015 6 commits
  8. 14 Oct, 2015 4 commits