- 10 Dec, 2015 1 commit
-
-
Hans Muller authored
-
- 09 Dec, 2015 1 commit
-
-
Hans Muller authored
-
- 04 Dec, 2015 1 commit
-
-
Hixie authored
-
- 20 Nov, 2015 1 commit
-
-
Adam Barth authored
This patch improves the repaint strategy for HomogeneousViewport so that the list itself and every entry in the list has a repaint boundary. That means that we only record list items as they enter the view.
-
- 28 Oct, 2015 1 commit
-
-
Hixie authored
MixedViewport didn't use the building:true flag when locking itself, so when it caused a rebuild of its children, we assumed that nobody was allowed to mark things dirty below the list, and things crashed when Inherited people did in fact rebuild. Also: - default offset for MixedViewport - don't bother rebuilding if the underlying RenderObject is going to rebuild anyway for some reason - better docs for the "items must have keys" assert - keep the FlipComponent stuff together in test_widgets.dart
-
- 16 Oct, 2015 1 commit
-
-
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
-
- 14 Oct, 2015 1 commit
-
-
Hans Muller authored
Enabled displaying a scrollbar in ScrollingLists. The scrollbar is painted as an "overlay", i.e. it's painted on top of the scrolling list's visible children. Added an abstract Painter base class that encapsulates a paint method and the renderer that it's attached to. RenderBlockViewport and HomogenousViewport now support an overlayPainter property. If specified, RenderBlockViewport attaches itself to the overlayPainter when it's attached to the rendering tree. RenderBlockViewport now calls overlayPainter.paint() after it has painted its children. Added an abstract ScrollingListPainter class that exposes ScrollingList's state which might be needed for painting. Like its scroll direction and scrollOffset. The ScrollingListPainter is notified when a scroll starts and ends. Defined a Material-specific ScrollingListPainter that renders a scrollbar. The scrollbar thumb is faded in/out when the scroll starts/ends. Added onScrollStart and onScrollEnd listeners to Scrollable.
-
- 10 Oct, 2015 1 commit
-
-
Adam Barth authored
-
- 07 Oct, 2015 1 commit
-
-
Hixie authored
Previously, RenderObjectElements didn't support being marked dirty. This is fine, except for MixedViewport and HomogeneousViewport, which have builder functions to which they hand themselves as a BuildContext. If those builder functions call, e.g., Theme.of(), then when the theme changes, the Inherited logic tries to tell the RenderObjectElement object that its dependencies changed and that doesn't go down well. This patch fixes this by making RenderObjectElement a BuildableElement, and making MixedViewport and HomogeneousViewport hook into that to rebuild themselves appropriately. Also, this was only found at all because ThemeData didn't implement operator==, so we were aggressively marking the entire tree dirty all the time. That's fixed here too. Also, I changed card_collection.dart to have more features to make this easier to test. This found bugs #1524, #1522, #1528, #1529, #1530, #1531.
-
- 06 Oct, 2015 1 commit
-
-
Adam Barth authored
In the vast majority of cases, folks should be interacting with the Widget rather than its State. Fixes #267
-
- 01 Oct, 2015 1 commit
-
-
Adam Barth authored
-
- 11 Sep, 2015 1 commit
-
-
Hixie authored
If it's a StatefulComponent, then it's ok to reuse it so long as it hasn't been initialised. If it's a regular Component or a TagNode, then it's always ok to reuse. If it's a RenderObjectWrapper, then it's ok to reuse so long as it doesn't have a renderObject. To put it another way, this changes how we prevent the following nonsensical situations from arising: - Sync two stateful StatefulComponents together - Sync two RenderObjectWrappers with RenderObjects together When either of those cases happen, we just drop the old one on the ground and use the new one unchanged.
-
- 09 Sep, 2015 1 commit
-
-
Adam Barth authored
-
- 03 Sep, 2015 1 commit
-
-
Adam Barth authored
-
- 02 Sep, 2015 3 commits
-
-
Hans Muller authored
-
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.
-
Hans Muller authored
Makes PageableList with itemsWrap:true work again. Plumbed the itemsWrap parameter through to HomogenousViewport. Fixes issue #877.
-
- 31 Aug, 2015 1 commit
-
-
Hixie authored
Adds a HomogeneousViewport class that works like MixedViewport but handles only children that have all the same height. Converts ScrollableWidgetList to use that, so that we don't waste a frame looking at the size of the contents each time we change size. This allows a number of seemingly pointless double-pumps in the tests to be removed. Other changes that were necessary to support the above: - RenderBlock now supports minExtent (think 'min-height' in CSS) - RenderBlock now supports itemExtent (forces the height of each child to be the same, so that the itemExtent passed to the fixed- height scrollables are all authoritative instead of a source of bugs when they don't match) - RenderBlockViewport now supports horizontal scrolling - improved the style of the isInfinite assert in box.dart - fixed the position of a comment in mixed_viewport.dart - added a test - made the logic for how many items to show be more precise
-