3924 Commits

Author SHA1 Message Date
Matt Perry
253d6874fd Merge pull request #913 from flutter/gcm
Adds Flutter GCM package
2016-01-11 14:00:52 -05:00
Matt Perry
1343a02032 Add Flutter GCM package and extend fitness app to use GCM. 2016-01-11 13:45:32 -05:00
Adam Barth
24c0645d93 Merge pull request #1182 from abarth/composite_blends
Always using OpacityLayer for blending
2016-01-11 00:25:00 -08:00
Adam Barth
635168d9f9 Always using OpacityLayer for blending
We don't know how to accuately compute paint bounds in the render tree.
Instead, we can rely on the compositor to compute the paint bounds for
us if we use OpacityLayer to do our opacity blends.

Fixes the shadow when closing the menu in the stocks app.
2016-01-11 00:18:26 -08:00
Adam Barth
91551c79f9 Merge pull request #1180 from abarth/always_be_compositing
Rename RenderObject.hasLayer to isRepaintBoundary
2016-01-11 00:07:09 -08:00
Adam Barth
0b7759841e Rename RenderObject.hasLayer to isRepaintBoundary
Also, introduce alwaysNeedsCompositing to force the "needs compositing"
bit to true without necessarily introducing a ContainerLayer into the
layer tree. A future patch will make use of alwaysNeedsCompositing to
optimize opacity layers.
2016-01-10 23:59:34 -08:00
Ian Hickson
88c43c3f4e Rename StatisticsOverlay to PerformanceOverlay. 2016-01-10 23:47:42 -08:00
Adam Barth
e20ef50221 Merge pull request #1178 from abarth/double_tap_assert
DoubleTap gesture asserts when rejected
2016-01-10 23:23:35 -08:00
Adam Barth
07a9cc758a DoubleTap gesture asserts when rejected
The pointer router was using an iteration pattern that always delivers
handleEvent calls even if you remove a route during the iteration.
That's awkward to program against and causes trouble for the double-tap
gesture.

This patch switches PointerRouter to using a re-entrant iteration
pattern that supports removing routes (but not adding routes) during the
iteration.
2016-01-10 23:12:37 -08:00
Ian Hickson
17ae19e8b2 Merge pull request #1166 from Hixie/stock-debugging
Add more debugging options to the stocks app.
2016-01-10 23:03:48 -08:00
Adam Barth
e0760e6a59 Merge pull request #1173 from abarth/fix_stocks_loading
TabView fails to update tab contents
2016-01-10 22:51:22 -08:00
Ian Hickson
48e1350e73 Add more debugging options to the stocks app.
- Add an option to enable debugPaintSizeEnabled.
- Add an option to enable the StatisticsOverlay.
- Add support for the StatisticsOverlay in MaterialApp.
- Change the layout behaviour of RenderStatisticsBox:
   - Give it a zero intrinsic width.
   - Give it an accurate intrinsic height that depends on the flags
     set. (Also, move the enum to the rendering/ layer from the
     widgets/ layer to enable this.)
   - Make the box automatically size itself full-width and the correct
     height, so that you can actually embed it (though most of the
     time you'd just put it in a Stack so this doesn't matter as
     much, really).
- Some style nit fixes in statistics_box.dart.
2016-01-10 22:42:16 -08:00
Adam Barth
432b179395 TabView fails to update tab contents
When the TabView widget's children change, we don't change the children
we give to the PageViewport because we fail to update _items. This patch
watches didChangeConfig and updates _items appropriately.

Fixes #1134
Fixes #1168
2016-01-10 22:18:56 -08:00
Adam Barth
c4545da2f2 Merge pull request #1172 from abarth/simplify_tabview
Simplify TabView API
2016-01-10 21:55:07 -08:00
Adam Barth
dd08bf7973 Simplify TabView API
Instead of taking a builder and a generic type, we can just take a
List<Widget>.
2016-01-10 21:44:24 -08:00
Ian Hickson
f757211f02 Merge pull request #1171 from Hixie/constraints
Merge Container's width, height, and constraints
2016-01-10 21:11:55 -08:00
Ian Hickson
0379744c92 Merge Container's width, height, and constraints
Without this, FlatButton ends up using two RenderConstrainedBoxes back
to back for no good reason.
2016-01-10 20:19:15 -08:00
Ian Hickson
c262842e93 Merge pull request #1170 from Hixie/box-constraints-tight
tightenWidth(), tightenHeight() => tighten(width:, height:)
2016-01-10 20:09:07 -08:00
Ian Hickson
bdf8aa59f1 Merge pull request #1167 from Hixie/firebase
Add a note about the firebase/ directory.
2016-01-10 19:59:43 -08:00
Ian Hickson
c21b565f0b tightenWidth(), tightenHeight() => tighten(width:, height:)
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).
2016-01-10 19:49:07 -08:00
Ian Hickson
74c806634e Add a note about the firebase/ directory.
Also, make dev/update_packages.dart skip directories that have no
pubspec.yaml, since firebase/ doesn't have one.
2016-01-10 16:54:25 -08:00
Ian Hickson
a03382033d Merge pull request #1164 from Hixie/AnimatedPositioned
AnimatedPositioned
2016-01-10 13:00:56 -08:00
Ian Hickson
63c2ac9c4e AnimatedPositioned 2016-01-10 11:35:20 -08:00
Ian Hickson
f37c29dddd Move AnimatedContainer to a new file so AnimatedPositioned can live with it. 2016-01-10 11:14:54 -08:00
Ian Hickson
948f3db270 Refactor AnimatedContainer to be reusable.
This will allow AnimatedPositioned to reuse all the same logic.
2016-01-10 11:14:46 -08:00
Adam Barth
682243efef Merge pull request #1156 from abarth/edge_swipe
Drawer edge swipe convers entire screen
2016-01-10 10:50:11 -08:00
Ian Hickson
4d696e62bf Merge pull request #1165 from Hixie/stock-settings
Refactor the Stocks app's settings
2016-01-10 09:27:01 -08:00
Ian Hickson
34cfb6082a Refactor the Stocks app's settings
This will make it much easier to add more settings.
2016-01-10 00:36:01 -08:00
Ian Hickson
71c2ccbf66 Merge pull request #1163 from Hixie/fix-animated-container
Fix crazy assertion.
2016-01-09 14:53:19 -08:00
Ian Hickson
f07a0c9873 Fix crazy assertion.
Not sure what I was doing when I wrote this assertion, but I'm pretty
sure it's wrong. I'm guessing the change here is what I actually meant
to write.
2016-01-09 13:30:51 -08:00
Ian Hickson
306a364fb5 Merge pull request #1158 from Hixie/padding-debug
Add more debugPaintSizeEnabled construction lines.
2016-01-08 23:43:34 -08:00
Ian Hickson
20a01b425e Add more debugPaintSizeEnabled construction lines.
- padding is shown in blue with a darker blue around the child
- spacing (empty size boxes or padding) is shown in gray
- alignment from a RenderPositionedBox is shown with yellow arrows
2016-01-08 23:13:20 -08:00
Adam Barth
1ef3f82e0f Drawer edge swipe convers entire screen
When I tightened up the layout constraints for the Drawer in the
Scaffold, I ended up making the edge swipe detector cover the entire
screen.  This patch fixes that issue by putting the gesture detector for
the edge swipe just around the container with the proper width. We now
use a global key to maintain the state across hierarchy changes.
2016-01-08 19:40:04 -08:00
Ian Hickson
fb66bf11b7 Merge pull request #1149 from Hixie/material-grid
Material baseline grid
2016-01-08 13:31:09 -08:00
Collin Jackson
632addf692 Merge pull request #1079 from collinjackson/firebase
Proof of concept for Firebase support in Flutter framework
2016-01-08 12:40:40 -08:00
Collin Jackson
8ac0641363 Add Firebase package to Flutter framework 2016-01-08 11:24:05 -08:00
Ian Hickson
d9d3114d14 Material baseline grid
See https://www.google.com/design/spec/layout/metrics-keylines.html#
2016-01-08 11:18:15 -08:00
Ian Hickson
99112425e2 Merge pull request #1143 from Hixie/GridPaper
GridPaper updates
2016-01-08 11:03:23 -08:00
Hans Muller
8899fe5ab3 Merge pull request #1142 from HansMuller/tabs_typo
Fixed a tabs scrolling typo
2016-01-08 10:36:49 -08:00
Hans Muller
d71afc3445 Fixed a typo 2016-01-08 10:29:10 -08:00
Ian Hickson
d502d2376c GridPaper updates
Change how GridPaper works so that it's easier to plug in anywhere.
It now takes a child that it will paint the grid over.
It defaults to semi-transparent grid-paper-blue.
The line spacing is also more configurable now.
2016-01-08 10:27:43 -08:00
Adam Barth
d8fd537ce3 Merge pull request #1136 from abarth/optimize_scaffold
Optimize repainting in Scaffold
2016-01-08 09:06:35 -08:00
Ian Hickson
17ef9488ff Transition callers from 'concat' to 'transform'
See: https://github.com/flutter/flutter/issues/1080
2016-01-08 08:58:31 -08:00
Hans Muller
606887a12c Merge pull request #1127 from HansMuller/fix_tabs
Fix tab fling scrolling when the last tab is selected
2016-01-08 07:58:48 -08:00
Adam Barth
ee88a685f8 Optimize repainting in Scaffold
Previously, we triggered a layout (and hence a repaint) when sliding the
draw because we gave the draw loose constraints. The drawer uses an
Align to move itself to the proper side of the screen, so it can have
tight constraints, which makes it a layout boundary.

Also, don't trigger a layout just because the Scaffold rebuilds. There
isn't any state in the scaffold custom layout, so it doesn't need to
repaint just because we created a new instance of the delegate.

Finally, add the debugging infrastructure I used to find these issues.
2016-01-08 01:57:30 -08:00
Adam Barth
39ad22c8bd Merge pull request #1124 from sethladd/gen-docs-for-sprites
generate docs for sprites
2016-01-07 23:26:34 -08:00
Ian Hickson
60ef3836a5 Merge pull request #1133 from Hixie/TabBarSelectionState.of
Reimplement TabBarSelectionState.of() using new methods
2016-01-07 23:12:10 -08:00
Ian Hickson
892cc272a6 Reimplement TabBarSelectionState.of() using new methods 2016-01-07 22:09:36 -08:00
Hans Muller
5966f67627 fix #1126 2016-01-07 16:31:30 -08:00
Seth Ladd
ef4ea9b776 generate docs for sprites 2016-01-07 15:55:41 -08:00