1. 26 Apr, 2017 1 commit
  2. 25 Apr, 2017 1 commit
    • Ian Hickson's avatar
      Loosen the constraints for Stack non-positioned children. (#9581) · 596eb033
      Ian Hickson authored
      Also:
      
       * Add three explicit sizing modes to Stack for non-positioned
         children: loose, expand, and passthrough. (All three are used.)
      
       * Fix a bug whereby layers would try to paint in the same frame as
         they were removed from layout (but not detached).
      
       * Fix a bug whereby Offstage wasn't properly marking the parent dirty
         when changing its sizedByParent flag.
      
       * Explicitly make Overlay expand non-positioned children.
      
       * Explicitly have InputDecoration pass through the constraints from
         its Row to its Stack children.
      596eb033
  3. 19 Apr, 2017 1 commit
  4. 12 Apr, 2017 1 commit
    • Ian Hickson's avatar
      Move Point to Offset (#9277) · bf017b79
      Ian Hickson authored
      * Manually fix every use of Point.x and Point.y
      
      Some of these were moved to dx/dy, but not all.
      
      * Manually convert uses of the old gradient API
      
      * Remove old reference to Point.
      
      * Mechanical changes
      
      I applied the following at the root of the Flutter repository:
      
      git ls-files -z | xargs -0 sed -i 's/\bPoint[.]origin\b/Offset.zero/g'
      git ls-files -z | xargs -0 sed -i 's/\bPoint[.]lerp\b/Offset.lerp/g'
      git ls-files -z | xargs -0 sed -i 's/\bnew Point\b/new Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\bconst Point\b/const Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\bstatic Point /static Offset /g'
      git ls-files -z | xargs -0 sed -i 's/\bfinal Point /final Offset /g'
      git ls-files -z | xargs -0 sed -i 's/^\( *\)Point /\1Offset /g'
      git ls-files -z | xargs -0 sed -i 's/ui[.]Point\b/ui.Offset/g'
      git ls-files -z | xargs -0 sed -i 's/(Point\b/(Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\([[{,]\) Point\b/\1 Offset/g'
      git ls-files -z | xargs -0 sed -i 's/@required Point\b/@required Offset/g'
      git ls-files -z | xargs -0 sed -i 's/<Point>/<Offset>/g'
      git ls-files -z | xargs -0 sed -i 's/[.]toOffset()//g'
      git ls-files -z | xargs -0 sed -i 's/[.]toPoint()//g'
      git ls-files -z | xargs -0 sed -i 's/\bshow Point, /show /g'
      git ls-files -z | xargs -0 sed -i 's/\bshow Point;/show Offset;/g'
      
      * Mechanical changes - dartdocs
      
      I applied the following at the root of the Flutter repository:
      
      git ls-files -z | xargs -0 sed -i 's/\ba \[Point\]/an [Offset]/g'
      git ls-files -z | xargs -0 sed -i 's/\[Point\]/[Offset]/g'
      
      * Further improvements and a test
      
      * Fix minor errors from rebasing...
      
      * Roll engine
      bf017b79
  5. 05 Apr, 2017 1 commit
    • Adam Barth's avatar
      Add Wrap (#9225) · 882c992b
      Adam Barth authored
      The Wrap widget is a layout that places children in a run in order along its
      main axis until it runs out of space. At that point, starts placing children in
      a new run that is adjacent in the cross axis.
      
      Fixes #8831
      882c992b
  6. 31 Mar, 2017 1 commit
  7. 19 Mar, 2017 1 commit
  8. 10 Mar, 2017 1 commit
  9. 04 Mar, 2017 1 commit
  10. 14 Feb, 2017 1 commit
    • Ian Hickson's avatar
      Positioned.fromRelativeRect (#8123) · 8ecaff29
      Ian Hickson authored
      Since RelativeRect's whole purpose in life is to make work with Stack
      easier, it's silly that you can't directly use it with Positioned.
      
      Also, tests for RelativeRect.
      And fixes for the bugs that found...
      8ecaff29
  11. 01 Dec, 2016 1 commit
  12. 22 Nov, 2016 1 commit
  13. 19 Nov, 2016 1 commit
  14. 29 Aug, 2016 1 commit
  15. 11 Aug, 2016 1 commit
  16. 08 Jun, 2016 1 commit
  17. 02 Jun, 2016 1 commit
  18. 31 May, 2016 1 commit
  19. 27 May, 2016 1 commit
  20. 12 May, 2016 1 commit
  21. 24 Apr, 2016 1 commit
    • Adam Barth's avatar
      Add Flow layout · f53a5a52
      Adam Barth authored
      A flow layout is optimized for reposition children with transformation
      matrices. A flow layout can animate the position of its children very
      efficiently.
      f53a5a52
  22. 11 Apr, 2016 1 commit
    • Ian Hickson's avatar
      Add even more careful checks around BoxConstraints (#3243) · 47f5c6f2
      Ian Hickson authored
      I ran into a case where I was setting minHeight=∞ and then calling
      layout() with that constraint, which is all kinds of bad. To try to
      catch this earlier, this patch now provides a way to catch constraints
      that are requiring infinite values.
      
      We don't _always_ check this because there are valid uses for
      BoxConstraints.biggest, e.g. as an additionalConstraint.
      47f5c6f2
  23. 29 Mar, 2016 1 commit
  24. 17 Mar, 2016 1 commit
  25. 14 Mar, 2016 1 commit
  26. 12 Mar, 2016 3 commits
  27. 10 Feb, 2016 1 commit
    • Hixie's avatar
      More BoxConstraints asserts · 29654016
      Hixie authored
      The asserting will continue until morale improves!
      
      * Convert all assert(*.isNormalized) checks to use the new
        debugAssertIsNormalized technology.
      * Convert CustomMultiChildLayout to use the new RenderingError
        technology to greatly improve the detail in errors you get when
        writing CustomMultiChildLayout delegates.
      * Add BoxConstraints.copyWith().
      * Indent the descendants in the rendering exception data dump so that
        when you have multiple children it's clearer what's going on.
      29654016
  28. 09 Feb, 2016 1 commit
  29. 27 Jan, 2016 1 commit
  30. 19 Jan, 2016 1 commit
  31. 14 Jan, 2016 1 commit
    • Hixie's avatar
      Tooltips · 24cab899
      Hixie authored
      Introduces a new Tooltip class.
      Adds support for tooltips to IconButton and Scaffold.
      Adds some tooltips to various demos.
      
      Also some tweaks to stack.dart that I made before I decided not to go
      down a "CustomPositioned" route.
      24cab899
  32. 11 Jan, 2016 1 commit
    • Ian Hickson's avatar
      tightenWidth(), tightenHeight() => tighten(width:, height:) · c21b565f
      Ian Hickson authored
      This makes it more consistent with tightFor(), and also makes it
      easier to tighten both directions at once when you're not sure you
      will always do so (e.g. if you have a height and width that might be
      null, and want to tighten whichever ones aren't null).
      c21b565f
  33. 02 Jan, 2016 1 commit
  34. 24 Dec, 2015 1 commit
    • Ian Hickson's avatar
      RenderFractionalTranslation · 9bad312a
      Ian Hickson authored
      - Add RenderFractionalTranslation, a render box that does a
        translation based on a FractionalOffset.
      
      - Make FractionalOffset more like Offset
        - dx/dy instead of x/y
        - add /, ~/, %
        - add .zero
      
      - Add alongOffset and alongSize to FractionalOffset so that you can
        easily apply FractionalOffset to Offsets and Sizes. (Better name
        suggestions welcome.)
      
      - Add transformHitTests boolean to RenderTransform (also on
        RenderFractionalTranslation), and to classes based on it.
      
      - Remove the fade from Dismissable. We can add it back using the
        builder-with-child pattern like Draggable if we need it. See #1003
        for tha feature request.
      
      - Rename a bunch of variables in dismissable.dart.
      
      - Change the test for dismissable to not handle leftwards dismisses
        one pixel different from rightwards dismisses, and cleaned up the
        resulting effect on the test (mostly making sure we had the right
        number of pumps, with comments explaining what each one was).
      
      Fixes #174.
      9bad312a
  35. 16 Dec, 2015 1 commit
  36. 10 Dec, 2015 1 commit
  37. 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
  38. 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