|
Aura: Have ui::Layer implement WebKit::WebExternalTextureLayerClient
With --ui-enable-threaded-compositing, every Layer::SetExternalTexture() was causing a heavy CCThreadProxy::acquireLayerTextures(). This synchronization is unnecessary on the common case of buffer flips, because RWHVA handles the necessary synchronization via OnCompositingWillStart callbacks.
To reduce the synchronization burden, we handle
- wait for a commit on resize fast ACKS
- handle the common case of buffer flips via WebExternalTextureLayerClient::prepareTexture()
- and explicitly call WebExternalTextureLayer::willModifyTexture() when we need the extra synchronization on tear down.
BUG= 136012
TEST=none
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=146621
Total comments: 7
Total comments: 7
Total comments: 4
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+212 lines, -482 lines) |
Patch |
 |
M |
ash/wm/window_animations.cc
|
View
|
1
2
3
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/test/gpu/gpu_feature_browsertest.cc
|
View
|
1
2
3
4
|
2 chunks |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
D |
content/browser/renderer_host/image_transport_client.h
|
View
|
1
2
|
1 chunk |
+0 lines, -46 lines |
0 comments
|
Download
|
 |
D |
content/browser/renderer_host/image_transport_client.cc
|
View
|
1
2
|
1 chunk |
+0 lines, -9 lines |
0 comments
|
Download
|
 |
D |
content/browser/renderer_host/image_transport_client_linux.cc
|
View
|
1
2
|
1 chunk |
+0 lines, -311 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/image_transport_factory.h
|
View
|
1
2
3
4
5
|
3 chunks |
+4 lines, -11 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/image_transport_factory.cc
|
View
|
1
2
3
4
5
|
8 chunks |
+26 lines, -53 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/render_widget_host_view_aura.h
|
View
|
1
2
3
|
4 chunks |
+12 lines, -6 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/render_widget_host_view_aura.cc
|
View
|
1
2
3
|
11 chunks |
+77 lines, -28 lines |
0 comments
|
Download
|
 |
M |
content/common/gpu/image_transport_surface.h
|
View
|
1
2
3
4
5
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/common/gpu/image_transport_surface.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/common/gpu/image_transport_surface_win.cc
|
View
|
1
2
3
4
5
|
2 chunks |
+5 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/content_browser.gypi
|
View
|
1
2
3
|
2 chunks |
+0 lines, -7 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder.cc
|
View
|
1
2
3
4
5
|
1 chunk |
+0 lines, -5 lines |
2 comments
|
Download
|
 |
M |
ui/aura/bench/bench_main.cc
|
View
|
1
2
3
|
2 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/aura/root_window.h
|
View
|
1
2
3
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
ui/aura/root_window.cc
|
View
|
1
2
3
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/compositor.h
|
View
|
1
2
3
|
4 chunks |
+8 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/compositor.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+17 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/compositor_observer.h
|
View
|
1
2
3
|
1 chunk |
+8 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/layer.h
|
View
|
1
2
3
|
3 chunks |
+10 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/layer.cc
|
View
|
1
2
3
|
3 chunks |
+15 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/layer_unittest.cc
|
View
|
1
2
3
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
Total messages: 21 (0 generated)
|