3702 Commits

Author SHA1 Message Date
Seth Ladd
42d90c00cc starter app now has a button that does something 2016-01-12 10:28:40 -08:00
Adam Barth
d04e2221f1 Merge pull request #1204 from abarth/fix_time_picker
Fix time picker
2016-01-12 10:12:46 -08:00
Adam Barth
84957e5be8 Fix time picker
We were painting the contents of the RRect clip at the wrong offset. This patch
makes RRect match Rect and Path clips.

Fixes #1194
2016-01-12 10:07:09 -08:00
Eric Seidel
108eb749dc Merge pull request #1203 from eseidelGoogle/analyze_time
Teach analyze how to print out the total time spent
2016-01-12 10:00:22 -08:00
Eric Seidel
001c107858 Teach analyze how to print out the total time spent
Makes it more obvious that flutter analyze takes a long time.

@Hixie
2016-01-12 09:20:36 -08:00
Adam Barth
8e5dd7a385 Remove clamp() in favour of double.clamp()
Fixes #961
2016-01-12 09:19:33 -08:00
Ian Hickson
3e5264a21a Merge pull request #1199 from Hixie/sector-demo-hit-test-asserts
Provide a safe time to update a WidgetToRenderBoxAdapter
2016-01-12 08:58:58 -08:00
Ian Hickson
867bbcc9bd Provide a safe time to update a WidgetToRenderBoxAdapter
If you change the RenderObject tree between frames, you'll assert if
you subsequently hit test. So e.g. if you get two button presses back
to back, and you mutate the tree synchronously in response to the
first one, the second will assert.

This adds an onBuild callback to WidgetToRenderBoxAdapter to make it
easier to do the updates at the right time, i.e., during widget build.
It'll be called whenever you rebuild the WidgetToRenderBoxAdapter
itself, so all you have to do to use it is call setState() on whoever
is building the WidgetToRenderBoxAdapter.
2016-01-11 23:14:37 -08:00
Adam Barth
f10f79f8fd Merge pull request #1196 from abarth/rm_layer_bounds
Stop passing bogus bounds to SceneBuilder
2016-01-11 22:29:09 -08:00
Ian Hickson
e20ec39b81 Merge pull request #1195 from Hixie/raised-button
Fixed the RaisedButton shadow issue
2016-01-11 22:23:23 -08:00
Adam Barth
d2c22a490d Stop passing bogus bounds to SceneBuilder
We no longer need to pass bounds to SceneBuilder. Instead, the
compositor computes these bounds itself from the RTrees in the
SkPictures.
2016-01-11 22:18:43 -08:00
Adam Barth
a2f7bb7370 Merge pull request #1192 from abarth/composite_shader_mask
ShaderMask needs to play nicely with compositing
2016-01-11 22:06:37 -08:00
Ian Hickson
ac616df0bd Fixed the RaisedButton shadow issue
The onHighlightChanged callback was being given "true" every time
instead of the actual value.
2016-01-11 22:06:29 -08:00
Adam Barth
82bb3bd40d ShaderMask needs to play nicely with compositing
This patch adds ShaderLayer and makes ShaderMask use it.

Fixes #1155
2016-01-11 21:57:54 -08:00
Adam Barth
875da1f53f Update engine 2016-01-11 21:57:34 -08:00
Ian Hickson
8f894f3757 Merge pull request #1140 from Hixie/concat
Transition callers from 'concat' to 'transform'
2016-01-11 20:05:07 -08:00
Adam Barth
fafec81076 Merge pull request #1193 from afandria/patch-1
Add reference to "mojo:media_service" in sound.dart
2016-01-11 19:20:53 -08:00
Alex Fandrianto
9bf16fbd6a Also update piano.dart 2016-01-11 18:53:32 -08:00
Alex Fandrianto
ddb060d685 Add reference to "mojo:media_service" in sound.dart
Related: https://github.com/domokit/mojo/issues/614

Flutter can play sounds using this package. However, when Mojo Shell is running Flutter, it lacks the necessary media service.

This patch creates a hook to the mojo binary `media_service.mojo`. If Mojo Shell is built with this media service, then it will be able to play sounds when running Flutter.
2016-01-11 18:13:50 -08:00
Adam Barth
7fb70ecc23 Merge pull request #1191 from abarth/always_composting
RenderPerformanceOverlay needs alwaysNeedsCompositing
2016-01-11 14:55:48 -08:00
Adam Barth
00359a4f96 RenderPerformanceOverlay needs alwaysNeedsCompositing
The performance overlay is always drawn using the compositor. We should tell
the rest of the system that it's going to make a composited layer.

Fixes #1177
2016-01-11 14:23:49 -08:00
Adam Barth
41b8c988f2 Merge pull request #1189 from abarth/named_children
Use a named argument for Widget children
2016-01-11 13:25:47 -08:00
Adam Barth
056766414c Use a named argument for Widget children
Previously we used a positional argument for widgets that had multiple
children. Now we use a named argument that defaults to an empty list.

Fixes #241
2016-01-11 13:17:09 -08:00
Ian Hickson
26db7a2d95 Merge pull request #1188 from flutter/rev-engine
rev engine
2016-01-11 12:21:37 -08:00
Ian Hickson
d869c01035 Merge pull request #1181 from Hixie/stats-box-rename
Rename StatisticsOverlay to PerformanceOverlay.
2016-01-11 12:21:32 -08:00
Ian Hickson
4f20b07492 rev engine 2016-01-11 12:10:15 -08:00
Adam Barth
b6f3b29887 Merge pull request #1187 from abarth/axis
Rename ScrollDirection to Axis
2016-01-11 11:58:08 -08:00
Adam Barth
b2cef9f2b2 Rename ScrollDirection to Axis
We use the ScrollDirection for more than just scrolling.

Fixes #151
2016-01-11 11:28:42 -08:00
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