1. 26 Feb, 2016 1 commit
  2. 25 Feb, 2016 4 commits
    • Hixie's avatar
      Remove size observers from scrollables. · f8080557
      Hixie authored
      Also:
       - add operator==/hashCode/toString to ViewportDimensions
       - add toString to BindingBase
       - add toString and debugFillDescription to ScrollBehavior
       - fix a bug in the RawGestureDetectorState's replaceGestureRecognizers
       - rename MixedViewport's onExtentsUpdate to onExtentChanged
       - replace ExtentsUpdateCallback with ValueChanged<double>
       - remove a microtask for dispatching scroll start, since it
         did not appear to have any purpose
       - added dartdocs to Instrumentation until I understood it
       - made all event dispatch in Instrumentation drain microtasks
      f8080557
    • Adam Barth's avatar
      Remove PointerRouter and GestureArena arguments · 4b1a9ff1
      Adam Barth authored
      There's no reason to make clients supply a PointerRounter and a
      GestureArena when constructing gesture recognizers. These objects are
      statics and the gesture recognizers can just grab them directly.
      
      Also, remove the callback constructor arguments. Almost no code used
      them. Instead, people seem to prefer using the `..` operator to set
      callbacks on the recognizers. Removing the arguments removes a bunch of
      boilerplate.
      4b1a9ff1
    • Hixie's avatar
      Fix move() to call markNeedsLayout(). · 512b2e19
      Hixie authored
      Otherwise, changing the order of your children (e.g. shuffling a list of
      children) will have no visible effect.
      512b2e19
    • Adam Barth's avatar
      Add the ability to recognize gestures on text spans · 8e326d72
      Adam Barth authored
      Currently the interface for recognizing gestures on text spans is pretty ugly,
      but hopefully we can improve it with time.
      
      Fixes #156
      8e326d72
  3. 24 Feb, 2016 2 commits
    • Eric Seidel's avatar
      Fix two bugs in Flex exposed by the Game in landscape mode · 4e7a9de5
      Eric Seidel authored
      One bug was masking the other, hence they both needed to be fixed
      and tested separately.
      
      @Hixie
      4e7a9de5
    • Adam Barth's avatar
      Improve TextSpan · fb4dbf45
      Adam Barth authored
      Now we just have one TextSpan class that handles both simple strings, trees of
      children, and styling both. This approach simplifies the interface for most
      clients.
      
      This patch also removes StyledText, which was weakly typed and tricky to use
      correctly. The replacement is RichText, which is strongly typed and uses
      TextSpan.
      fb4dbf45
  4. 23 Feb, 2016 1 commit
  5. 17 Feb, 2016 2 commits
  6. 16 Feb, 2016 2 commits
  7. 15 Feb, 2016 2 commits
    • Adam Barth's avatar
      Simplify the AutoLayout API · c7d71d8a
      Adam Barth authored
      This patch makes it easier to use the auto layout API:
      
      * We no longer use operator== because that requires an ugly cast by the
        API user.
      * Also, "leftEdge" is now just "left" for less verbosity.
      * AutoLayoutChild not implies its key from the AutoLayoutParam object.
      * We now correctly layout every child of a RenderAutoLayout object even
        if the solver doesn't flush any updates to that child.
      c7d71d8a
    • Adam Barth's avatar
      Add support for autolayout to widgets · 262dd7a6
      Adam Barth authored
      This patch teaches the widget framework how to use Cassowary-based
      autolayout. To integrate autolayout with widgets, I had to refactor how
      RenderAutoLayout worked a bit. Now RenderAutoLayout follows the same
      delegate pattern we use for custom paint and custom layout.
      262dd7a6
  8. 14 Feb, 2016 3 commits
  9. 13 Feb, 2016 1 commit
  10. 12 Feb, 2016 3 commits
  11. 11 Feb, 2016 1 commit
    • Ian Hickson's avatar
      Clean up imports and exports. · a94999ba
      Ian Hickson authored
      Each layer is supposed to reexport the parts of the previous layer
      that are part of its API.
      
      - In painting.dart, export from dart:ui all the Canvas-related APIs
        that make sense to be used at higher levels, e.g. PaintingStyle.
      
      - Delete painting/shadows.dart. It was dead code.
      
      - In rendering/object.dart, export all of painting.dart.
      
      - In widgets/basic.dart, export all of painting.dart and
        animation.dart. Some classes in animation/ are renamed to make this
        less disruptive and confusing to the namespace.
      
      - Split out Stocks back into an import model rather than a part model,
        so that it's easier to manage its dependencies on a per-file basis.
      
      - Move Ticker to scheduler library.
      
      - Remove as many redundant imports as possible now.
      
      - Some minor nit picking cleanup in various files.
      a94999ba
  12. 10 Feb, 2016 4 commits
    • 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
    • Hixie's avatar
      Improve asserts around BoxConstraints · 3bd8bc33
      Hixie authored
      Negative constraints never make sense, so catch those too.
      
      Make RenderObject.layout's isNormalized assert use the newer more fancy
      debug version of isNormalized.
      3bd8bc33
    • Adam Barth's avatar
      Teach ScrollableList about scroll anchors · d6ae53fe
      Adam Barth authored
      d6ae53fe
    • Hixie's avatar
      Tapping through drag targets. · 4d5e4067
      Hixie authored
      Factor out the HitTestBehavior logic so that RenderMetaData can use it.
      
      Use that in DragTarget.
      4d5e4067
  13. 09 Feb, 2016 6 commits
  14. 08 Feb, 2016 1 commit
  15. 06 Feb, 2016 2 commits
    • Adam Barth's avatar
      Add more dartdoc to widgets.dart · 9251504a
      Adam Barth authored
      This patch includes documentation for transitions.dart and for
      scrollable.dart.
      9251504a
    • Adam Barth's avatar
      Remove HomogeneousViewport · 5b896694
      Adam Barth authored
      The virtual viewport machinery now handles all of these use cases.
      Previous clients of ScrollableWidgetList can use ScrollableLazyList
      instead.
      5b896694
  16. 05 Feb, 2016 1 commit
    • Hixie's avatar
      Improve exceptions and asserts for rendering lib. · 1a0484cc
      Hixie authored
      * Use actual exceptions rather than assertions containing code
        containing strings when trying to give messages to authors.
      * Introduce RenderingError which is an AssertionError that takes a
        string argument, to support the above.
      * Provide a BoxDimensions.hasBoundedWidth/hasBoundedHeight API.
      * Document BoxDimensions.isNormalized.
      * Provide more useful information when we assert isNormalized and find
        that it is false.
      * When finding the size is infinite, crawl the tree to figure out which
        render box is likely responsible for the infinite constraints.
      * Provide more information when size doesn't match the constraints.
      * Provide more information when intrinsic dimension methods violate the
        constraints.
      * Only spam a huge amount of information for the first exception from
        the rendering library. I've noticed a lot of people looking at the
        last exception printed rather than the first and that's very
        misleading -- after the rendering library hits an exception, all bets
        are off regarding what'll happen in the future. All kinds of asserts
        might fire.
      * Improve docs around the debug methods and flags for the above.
      * Make Block default to have no children. Previously, giving no children
        crashed with a confusing message about a null deref in an assert.
      1a0484cc
  17. 04 Feb, 2016 1 commit
  18. 03 Feb, 2016 2 commits
  19. 02 Feb, 2016 1 commit