20087 Commits

Author SHA1 Message Date
Adam Barth
eca953c138 Enable raster cache in compositor
The raster cache show some significant speedups in some situations.
Let's turn it on by default and learn more.

In this patch, I've also switched us away from using the
SkPictureImageGenerator because the preroll patches haven't landed in
Skia yet. Once those have landed, we might want to switch back.
2016-01-12 19:59:18 -08:00
Jason Simmons
1b3232be45 Merge pull request #2254 from jason-simmons/jni_ctor
JNI bridge support for constructors, arrays, and strings
2016-01-12 16:09:49 -08:00
Jason Simmons
acfbced1dc JNI bridge support for constructors, arrays, and strings 2016-01-12 15:58:33 -08:00
Chinmay Garde
c43dff3046 Merge pull request #2253 from chinmaygarde/master
Dont fail the build when trying to detect if the archive can be uploaded
2016-01-12 15:10:10 -08:00
Jason Simmons
35863afd4d Merge pull request #2246 from jason-simmons/jni_method_call
Implement simple method calls in the Dart/JNI bridge
2016-01-12 14:49:27 -08:00
Chinmay Garde
2c445d15bc Dont fail the build when trying to detect if the archive can be uploaded 2016-01-12 14:46:18 -08:00
Adam Barth
bec6ad5d3f Merge pull request #2178 from floitschG/handleRealTime
Add 'HandleRealTimeEvents' to window.
2016-01-12 12:25:13 -08:00
Chinmay Garde
11e8199de7 Merge pull request #2252 from chinmaygarde/master
Upload Xcode artifacts from the build server if access to the service account is available
2016-01-12 12:24:53 -08:00
Chinmay Garde
7b0ced4a52 Upload Xcode artifacts from the build server if access to the service account is available 2016-01-12 11:53:26 -08:00
Adam Barth
d0073d30e8 Rev pub packages 2016-01-12 10:33:52 -08:00
Adam Barth
67708299f2 Merge pull request #2251 from abarth/rm_old_methods
Remove deprecated Dart methods
2016-01-12 10:32:55 -08:00
Adam Barth
d4506ee6a4 Remove deprecated Dart methods
All the clients have migrated to the new methods.

Fixes https://github.com/flutter/flutter/issues/1080
2016-01-12 10:32:13 -08:00
Adam Barth
a97b22a893 Merge pull request #2250 from abarth/translate_pictures
TabView children don't render correctly
2016-01-12 10:30:24 -08:00
Adam Barth
3931134bb0 TabView children don't render correctly
The matrix parameter to drawPicture doesn't quite work the way we expected.
This patch moves us back to using the translate function on SkCanvas.

Fixes https://github.com/flutter/flutter/issues/1205
2016-01-12 10:26:57 -08:00
Jason Simmons
a5104c4a61 Implement simple method calls in the Dart/JNI bridge
Also adopt a standard pattern for handling exceptions in JNI APIs
2016-01-12 10:02:32 -08:00
Adam Barth
38a0a4b15d Update versions 2016-01-11 19:57:56 -08:00
Adam Barth
d4a7fa8802 Merge pull request #2243 from abarth/faster_draw_image
Use a slightly faster path for drawImage
2016-01-11 19:49:25 -08:00
Adam Barth
a862fda816 Merge pull request #2249 from abarth/shader_mask_layer
ShaderLayer should actually be ShaderMaskLayer
2016-01-11 16:49:33 -08:00
Adam Barth
b63aac40f1 ShaderLayer should actually be ShaderMaskLayer
The shader is supposed to be drawn on top of the children as a mask. The
previous drawing code was incorrect.
2016-01-11 16:45:35 -08:00
Adam Barth
93cfbc8abd Merge pull request #2248 from abarth/shader_layer
Add ShaderLayer to Flutter compositor
2016-01-11 15:14:04 -08:00
Adam Barth
9949c8aaf6 Add ShaderLayer to Flutter compositor
We need this to implement RenderShaderMask properly. See #1155.
2016-01-11 15:03:25 -08:00
Chinmay Garde
ca0941bfd0 Merge pull request #2247 from chinmaygarde/master
Update Dart revision to pull in iOS fixes
2016-01-11 13:31:14 -08:00
Chinmay Garde
767399ddf5 Update Dart revision to pull in iOS fixes
https://codereview.chromium.org/1571343003
2016-01-11 13:25:45 -08:00
Ian Hickson
c24aea8b3b Merge pull request #2245 from Hixie/rev
revving engine
2016-01-11 11:19:54 -08:00
Hixie
243ca8e9ac revving engine
sky_engine and sky_services were somehow not aligned, so I pulled them
both up to the next highest number.
2016-01-11 11:18:35 -08:00
Adam Barth
1cb2e9a21a Merge pull request #2244 from abarth/fix_draw_atlas
Fix bindings for drawAtlas
2016-01-11 11:18:05 -08:00
Adam Barth
47040aafbb Fix bindings for drawAtlas
In changing the binding systems, I broke the colors parameter to drawAtlas. It
was looking for an array of ints rather than an array of Colors. Now we use
CanvasImage, which has the proper converter.

Fixes #1137
2016-01-11 11:17:34 -08:00
Ian Hickson
6bd3fb4dcc Merge pull request #2241 from Hixie/performance-overlay
Rename StatisticsOverlay to PerformanceOverlay.
2016-01-11 11:15:49 -08:00
Adam Barth
ca629db532 Use a slightly faster path for drawImage
We don't need the strict mode for legacy compatibility because we don't have
any legacy yet. At some point, we might want to expose the strict mode for
people who want to pack their sprite sheets very tightly, but the sprites
library uses drawAtlas instead already.
2016-01-11 11:11:38 -08:00
Adam Barth
100a38e0e7 Merge pull request #2242 from abarth/simplify_picture_layer
Simplify painting PictureLayer
2016-01-11 01:22:53 -08:00
Adam Barth
32f62deeab Simplify painting PictureLayer
This patch uses some fancier Skia APIs to simplify how PictureLayer
paints.
2016-01-11 01:22:42 -08:00
Ian Hickson
f77acf0e80 Rename StatisticsOverlay to PerformanceOverlay.
Also, remove compositor_options in favour of four int constants, four
bitwise ands, and a few zero-equality comparisons, since it doesn't
seem we'll need this to scale much after all.
2016-01-10 23:39:13 -08:00
Ian Hickson
4e3108bc42 Merge pull request #2240 from Hixie/stats-offset
StatisticsLayer was shifting subsequent paints.
2016-01-10 20:13:38 -08:00
Ian Hickson
455ceab5f9 StatisticsLayer was shifting subsequent paints.
Turns out we weren't actually saving and restoring the matrix, so our
combined 180.0 pixel downshift was also affecting all subsequent
paints in the frame.
2016-01-10 15:11:11 -08:00
Adam Barth
59c075786a Merge pull request #2239 from abarth/trace_compositor
Add some more trace events to the compositor
2016-01-09 09:25:04 -08:00
Adam Barth
3cce3f0d7e Add some more trace events to the compositor 2016-01-09 00:48:42 -08:00
Adam Barth
a72b88238a Merge pull request #2238 from abarth/rev_dart
Update DartVM revision
2016-01-08 20:25:19 -08:00
Adam Barth
865416855d Update DartVM revision 2016-01-08 20:12:22 -08:00
Adam Barth
1486d205f8 Merge pull request #2235 from abarth/compute_paint_bounds
Compute paint bounds from cull rects
2016-01-08 19:02:38 -08:00
Adam Barth
076d2643e9 Merge pull request #2237 from abarth/fix_build
The build failed without Firebase
2016-01-08 18:56:57 -08:00
Adam Barth
dfaa5d434e The build failed without Firebase
Firebase shouldn't be needed to build Flutter.
2016-01-08 18:49:37 -08:00
Ian Hickson
de37dcfba9 Merge pull request #2236 from Hixie/rect
Better Rect.intersect documentation.
2016-01-08 18:45:53 -08:00
Hixie
720bda36e8 Better Rect.intersect documentation. 2016-01-08 16:50:57 -08:00
Adam Barth
f7d1856bd0 Compute paint bounds from cull rects
Rather than relying upon the rects passed in from Dart, the compositor
should compute the paint bounds of layers from the cull rects of the
underlying SkPictures. This approach is better because it will handle
effects like shadows that paint outside the incorrect paint bounds we
use today (as well as shrinking around empty space).
2016-01-08 16:05:34 -08:00
Adam Barth
ad8b3de91f Fix build when raster cache is disabled 2016-01-08 15:41:28 -08:00
Adam Barth
8f2838238d Make RasterCache responsible for prerolling the image 2016-01-08 15:28:18 -08:00
Adam Barth
213054593d Use the cull rect to select the rasterize size
Using the picture's cull rect to select the size of the texture is more
accurate than using the paint bounds. The cull rect captures shadows and
other "out of bounds" drawing as well as shrinks down around empty space
in the recording.
2016-01-08 15:28:17 -08:00
Collin Jackson
d6ecaec440 Update sky_services with new interfaces 2016-01-08 15:28:17 -08:00
Collin Jackson
9d715b340a Initial Firebase Flutter service implementation 2016-01-08 15:28:07 -08:00
Jason Simmons
087da3237a Merge pull request #2227 from jason-simmons/jni_bind_library
Move the JNI bridge out of dart:ui and into a separate dart:jni library
2016-01-08 14:01:23 -08:00