1. 16 Dec, 2015 1 commit
  2. 10 Dec, 2015 1 commit
  3. 09 Dec, 2015 1 commit
    • Ian Hickson's avatar
      Catch un-normalized BoxConstraints · 1a049c14
      Ian Hickson authored
      Add BoxConstraints.isNormalized feature.
      
      Use this feature in asserts in all the intrinsic dimension methods, in
      various relevant BoxConstraints methods, and in layout().
      
      Wrap the _DebugSize logic in BoxConstraints.constrain() in an assert
      block to avoid a branch in release mode.
      
      Remove the logic in BoxConstraints.isSatisfiedBy() that dealt with
      non-normalized values.
      
      Add BoxConstraints.normalize().
      
      Make RenderCustomOneChildLayoutBox.performLayout() only set
      parentUsesSize on the child if the constraints aren't tight.
      1a049c14
  4. 07 Dec, 2015 1 commit
    • Adam Barth's avatar
      Parent data fixes · 2f3baf14
      Adam Barth authored
      Add some missing functionality to ParentData subclasses.
      
      Fixes #474
      2f3baf14
  5. 19 Nov, 2015 2 commits
    • Adam Barth's avatar
      Some paint functions were using canvas.save/restore around children · d689362d
      Adam Barth authored
      This pattern breaks when using compositing because we need to lift those
      operations into the compositing tree. This patch removes all the ones I could
      find and adds an assert to help prevent more from getting introduced.
      
      Fixes #191
      d689362d
    • Adam Barth's avatar
      Refactor PaintingContext · fc576814
      Adam Barth authored
      This patch simplifies PaintingContext with several goals:
      
      1) We now call a callback instead of assuming the caller has a single child to
         paint. This change will let us handle render objects that wish to paint more
         than one child.
      2) We now avoid creating lots of empty picture layers because we don't eagerly
         start recording pictures. Instead, we wait for the first caller to touch the
         canvas before creating the picture recorder.
      3) We now are more consistent about which values have incorporated the painting
         offset.
      fc576814
  6. 17 Nov, 2015 1 commit
    • Adam Barth's avatar
      Add a Positioned constructor from a Rect · c769d120
      Adam Barth authored
      A common pattern is to use a Positioned with a Sized box to give both an offset
      from the edge as well as a fixed size to the child. This patch rolls into into
      the Stack layout algorithm for simplicity.
      
      Fixes #250
      c769d120
  7. 05 Nov, 2015 1 commit
    • Adam Barth's avatar
      Improve hit testing · 9bc64540
      Adam Barth authored
      Now a RenderBox is considered hit if one of its children are hit or it itself
      decides that it's hit. In particular, empty space inside a flex won't be hit
      because none of the children are located there and a RenderFlex doesn't
      consider itself hittable.
      
      Fixes #53
      Fixes #1221
      9bc64540
  8. 22 Oct, 2015 1 commit
  9. 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
  10. 17 Oct, 2015 1 commit
    • 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
  11. 12 Oct, 2015 1 commit
    • Hixie's avatar
      Lots of trivial warning fixes · f2cc43a4
      Hixie authored
      Add type annotations in many places.
      Fix some identifiers to have more lint-satisfying names.
      Make all operator==s consistent in style.
      Reorder some functions for consistency.
      Make ParentData no longer dynamic, and fix all the code around that.
      f2cc43a4
  12. 09 Oct, 2015 1 commit
    • Hixie's avatar
      Relative paths in internal flutter libraries · 37bda251
      Hixie authored
      Now that you import a top-level file for each layer of the Flutter
      framework, within the framework we can use relative paths without being
      worried about the copy/pasta problem we used to have.
      37bda251
  13. 08 Oct, 2015 2 commits
    • Hans Muller's avatar
    • Hans Muller's avatar
      IndexedStack · 09d26302
      Hans Muller authored
      Added horizontal and vertical alignment properties to Stack so that the origin of non-positioned children can be specified. Currently all of the non-positioned children just end up with their top-left at 0,0. Now, for example, you can center the children by specifying verticalAlignment: 0.5, horizontalAlignment: 0.5.
      
      Added IndexedStack which only paints the stack child specified by the index property. Since it's a Stack, it's as big as the biggest non-positioned child. This component will be essential for building mobile drop down menus.
      
      Added a (likely temporary) example that demonstrates IndexedStack.
      09d26302
  14. 14 Sep, 2015 1 commit
  15. 11 Sep, 2015 2 commits
  16. 05 Sep, 2015 1 commit
    • Adam Barth's avatar
      Document and bring sanity to BoxConstraints · 95277953
      Adam Barth authored
      Turns out many of the functions on BoxConstraints weren't used or had callers
      that could easily be updated to other functions. I've added dartdoc to all the
      public functions as well as renamed some functions that had similar names but
      did different things.
      95277953
  17. 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
  18. 20 Aug, 2015 1 commit
  19. 13 Aug, 2015 1 commit
  20. 07 Aug, 2015 1 commit
  21. 30 Jul, 2015 1 commit
  22. 28 Jul, 2015 2 commits
  23. 16 Jul, 2015 1 commit