Chinmay Garde
32ba859650
Only attempt to draw in the rasterizer if a valid layer tree is received. ( #2958 )
2016-08-19 16:03:14 -07:00
Chinmay Garde
d81634b70d
Remove the unused gpu_mojo GN target and associated source files. ( #2945 )
2016-08-18 11:39:55 -07:00
Chinmay Garde
ace7ce8c01
Make the engine provide layer trees to the rasterizer via a pipeline. ( #2942 )
2016-08-18 11:23:15 -07:00
Chinmay Garde
a413ef0bb0
If GrGLContext setup fails, log OpenGL platform specific information. ( #2897 )
2016-08-10 11:26:26 -07:00
Adam Barth
9c09565712
Update paths to account for buildroot
2016-08-09 13:52:15 -07:00
Adam Barth
5f75e0bf30
Remove more //base dependencies from //sky/shell ( #2889 )
...
This patch hides the base::SingleThreadedTaskRunner, which pulls a big
switchover to ftl::WeakPtr and std::function.
2016-08-08 20:00:37 -07:00
Adam Barth
4fa03ded48
Remove //base dependencies from //sky/shell ( #2888 )
2016-08-08 14:58:25 -07:00
Jason Simmons
d4b9ce9797
Unblock the Mojo main thread during rasterizer setup ( #2868 )
...
Fixes https://github.com/flutter/flutter/issues/4957
2016-08-04 16:52:54 -07:00
Adam Barth
410bc4c313
Remove skia::RefPtr ( #2851 )
...
Also, remove the hacks that integrate Skia ref counting with WTF. Now we
just use sk_sp everywhere for managing Skia ref counts.
2016-08-01 22:21:37 -07:00
Adam Barth
d6476a65c3
Port //flow to //lib/ftl ( #2847 )
...
This patch removes almost all //base dependency of //flow. The only dependency
left is on tracing.
2016-08-01 15:11:56 -07:00
Jason Simmons
3dac5a71ea
Drop the last layer tree when tearing down the rasterizer ( #2836 )
...
The LayerTree may be holding references to obsolete Skia/GPU resources,
notably the GrGLGpu. The old GrGLGpu should be deleted before a new
GrGLGpu is created during the next rasterizer setup.
Fixes https://github.com/flutter/flutter/issues/5074
2016-07-27 15:31:50 -07:00
Adam Barth
7c87227702
Update Skia ( #2825 )
2016-07-26 12:33:37 -07:00
Adam Barth
11dd5cada9
Add trace events to swap buffers ( #2823 )
2016-07-26 12:16:32 -07:00
Jason Simmons
d71a864e58
Clear invalid resources from the raster cache when the surface is destroyed ( #2821 )
2016-07-25 16:14:34 -07:00
Jason Simmons
789c1e799f
Disable rendering if the rasterizer can not create a GL/EGL context ( #2817 )
...
Fixes https://github.com/flutter/flutter/issues/4972
2016-07-22 11:13:21 -07:00
Jason Simmons
9546168c37
Recreate the EGL surface after a resize in order to correctly handle screen rotation on Android ( #2813 )
2016-07-21 15:13:26 -07:00
Chinmay Garde
c876974381
Attempt font fallback resolution using CoreText on iOS. ( #2800 )
2016-07-18 14:58:23 -07:00
Chinmay Garde
fe69b034c0
Remove dependencies on ui, third_party/mesa and mojo/convertors. Provide simple alternatives. ( #2783 )
2016-07-12 14:47:44 -07:00
Adam Barth
81ae27ab61
Remove startup flicker on Android ( #2733 )
...
According to hackbod on Stack Overflow, we're supposed to block in the
surfaceCreated callback until we've actually drawn into the surface:
http://stackoverflow.com/questions/8772862/surfaceview-flashes-black-on-load/8888108#8888108
2016-06-02 21:01:02 -07:00
Adam Barth
44429c06eb
Clear the background during load ( #2710 )
...
Previously we'd draw uninitialized memory. Now we draw black.
Fixes #3447
2016-05-25 17:45:40 -07:00
Jason Simmons
6110ec2d11
Fall back to an RGBA4444 canvas configuration if 8888 is not supported ( #2649 )
2016-05-05 11:55:45 -07:00
Adam Barth
6e3228cf81
Revert "Record layer tree to an SkPicture before rasterization ( #2628 )"
...
This reverts commit 5bc5c7b5246d62af70780ec7ba0203ac3f318226.
This commit appears to have caused
https://github.com/flutter/flutter/issues/3658
2016-05-01 14:23:13 -07:00
Adam Barth
5bc5c7b524
Record layer tree to an SkPicture before rasterization ( #2628 )
...
This lets Skia run an optimization pass over the SkPicture before actually
issuing GL commands.
2016-04-28 10:15:38 -07:00
Adam Barth
625e937442
Update Skia ( #2626 )
2016-04-27 14:59:06 -07:00
James Robinson
24adf9dbdc
Merge pull request #2611 from jamesr/better_tracing
...
Improve tracing in graphics stack, esp on Mojo
2016-04-22 12:38:55 -07:00
Adam Barth
b9ff394182
Break dependency from Layer to PaintContext ( #2609 )
...
Instead, make Layer::Paint take a new PaintContext that has just exactly
the state that it needs, mirroring PrerollContext. Also, rename
PaintContext to CompositorContext because it holds the context for the
whole compositor.
2016-04-21 23:05:41 -07:00
Adam Barth
dda79d0312
Fix style in //flow/instrumentation ( #2608 )
...
This patch makes these files better match Google C++ style.
Also, add the engine lap time when running on Mojo.
2016-04-21 22:36:46 -07:00
Tony Gentilcore
4062813e70
Set GLContext before calling MGLEcho.
2016-04-21 15:57:21 -07:00
Adam Barth
70d40c91d3
Use MGLEcho to provide back pressure for Mozart ( #2606 )
...
Related to https://github.com/domokit/mojo/issues/684
2016-04-21 14:25:00 -07:00
Adam Barth
d813b3d58c
Update to mojo a37b8c21cedc3d1b94f7be276e513cdea88e09ac
2016-04-21 14:12:34 -07:00
Jason Simmons
7182341f85
Merge pull request #2579 from jason-simmons/skia_skp_capture
...
Add an HTTP server for exporting Flutter debug info and a request han…
2016-04-06 10:22:46 -07:00
Adam Barth
2123899cc6
Jank insted of flicker in Mozart
...
Currently there's no good way of synchronizing layout changes with children in
Mozart. Previously we flickered when we were out of sync with our child. Now we
jank instead because that's a more acceptable artifact while we work on
improving Mozart.
Fixes https://github.com/flutter/flutter/issues/3024
2016-04-04 12:17:39 -07:00
Adam Barth
4e6fd739d1
Merge pull request #2566 from abarth/roll_mojo
...
Update Mojo
2016-03-30 15:27:57 -07:00
Chinmay Garde
d43bae3eeb
Don't crash if the scene has no root layer set.
2016-03-30 15:14:17 -07:00
Adam Barth
3f7d5ef6f8
Update code to account for Mozart changes
...
The layout protocol in Mozart changed. Now we need to pipe a scene version
through the system to the compositor.
2016-03-30 15:13:58 -07:00
Adam Barth
e3c3be1c21
Handle 0x0 sizes in Mozart
...
When we're created off-screen, Mozart gives us a 0x0 view to populate. Rather
than trying to draw a 0x0 texture, we just acknolwedge the frame request
immediately. This matches what we do in the non-Mozart rasterizer.
2016-03-15 13:37:17 -07:00
Adam Barth
3f4224d069
Update mojo_sdk
2016-03-10 12:58:18 -08:00
Adam Barth
e416866484
Enable Mozart hit testing
...
We now mark our root node as opaque to hit testing. We don't seem to be getting
events in child views, however.
2016-03-04 11:21:51 -08:00
Adam Barth
f7265449bf
Move ganesh_canvas to sky/shell/gpu/direct/
...
We only use the ganesh canvas in the direct configuration. This patch moves the
class into the directory to make that clear.
2016-02-17 11:16:14 -08:00
Adam Barth
c773bcac44
Attach a stencil buffer
...
Skia can go faster (and crashes less) when we have a stencil buffer.
Fixes https://github.com/flutter/flutter/issues/1931
2016-02-17 11:02:03 -08:00
Adam Barth
d3dbc1cda4
Polish Mojo platform implementation
...
* Use Node::Combinator::PRUNE, which stops the Mozart launcher from showing red
when we're loading child views. Instead of blocking the whole app, we'll now
just prune away the children that aren't ready. Eventually we'll want
to let authors control these operations.
* Grab the service registry in AcceptConnection rather than CreateView. The
CreateView comes from the Mozart launcher, which isn't where we want to get
the service registry. Now we get the service registry from the first app to
connect, which isn't right either but at least works while we sort out what
we really want.
2016-02-11 12:43:37 -08:00
Adam Barth
4b921cbb5e
Make Mozart draw child views
...
Previously we weren't factoring in the layer's offset properly and we were
drawing the child views below the background layer.
2016-02-08 14:36:38 -08:00
Adam Barth
e3bf0fa3c1
Include child scenes when uploading to Mozart
...
Previously we just dropped child scenes on the floor. Now we upload them
to Mozart. However, we just draw them on top of all the other content
and don't apply any clips or blends.
2016-02-03 14:16:09 -08:00
Jason Simmons
052d65cc14
Clear the Flow raster cache when a GrContext is destroyed
...
After an application is suspended and the GrContext associated with the
Flutter view is destroyed, the raster cache still contains images tied
to the defunct context. The SkyShell process will crash if these images
are used after the application resumes.
2016-02-01 10:36:09 -08:00
Adam Barth
c3c5af1fbe
Move Flow layers to //flow/layers
2016-01-30 23:35:22 -08:00
Adam Barth
411c6bfa4b
Port flutter.mojo to Mozart
...
Everything should work except the keyboard.
2016-01-28 16:04:19 -08:00
Adam Barth
e22e75ea50
Merge pull request #2302 from abarth/rm_scoped_ptr
...
Remove almost all uses of base::scoped_ptr
2016-01-27 08:38:41 -08:00
Adam Barth
142c5dc5ec
Remove almost all uses of base::scoped_ptr
...
We now use std::unique_ptr more consistently.
2016-01-27 01:05:47 -08:00
Adam Barth
c3a78a1796
Remove dependencies on ui/gfx/geometry
...
We have enough geometry classes kicking around. We don't need the
ui/gfx/geometry types too.
2016-01-26 23:57:20 -08:00
Adam Barth
0b629d419f
Move //sky/compositor to //flow
...
Now that the compositor doesn't have any tricky deps, we can make it a
top-level project, which saves a bunch of typing.
2016-01-12 22:39:51 -08:00