|
Refactor client visibility handling
Currently, ContextSupport::SetClientVisibile relies on the caller
remembering to pair visible/not-visible calls. Failure to do so will
result in a "leak", where the context support will always think there
are visible clients.
To avoid this, visibility handling now uses ScopedVisibility objects
which will dcheck if visible > not visible updates are not paired.
This change also introduces a new ContextCacheController object which
handles trimming context caches based on visibility. This simplifies
handling in clients of the ContextProvider and removes this logic
from ContextSupport.
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
Committed: https://crrev.com/f6c4fb6b0b77f35f094cb73c49b0bfe22d3f4461
Cr-Commit-Position: refs/heads/master@{#415491}
Total comments: 55
Total comments: 16
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+526 lines, -282 lines) |
Patch |
 |
M |
android_webview/browser/aw_render_thread_context_provider.h
|
View
|
1
2
3
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
android_webview/browser/aw_render_thread_context_provider.cc
|
View
|
1
2
3
4
5
6
7
8
|
4 chunks |
+10 lines, -10 lines |
0 comments
|
Download
|
 |
M |
blimp/client/support/compositor/blimp_context_provider.h
|
View
|
1
2
3
4
5
6
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
blimp/client/support/compositor/blimp_context_provider.cc
|
View
|
1
2
3
4
5
6
|
4 chunks |
+10 lines, -8 lines |
0 comments
|
Download
|
 |
M |
cc/BUILD.gn
|
View
|
1
2
3
4
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
A |
cc/output/context_cache_controller.h
|
View
|
1
2
3
4
|
1 chunk |
+74 lines, -0 lines |
0 comments
|
Download
|
 |
A |
cc/output/context_cache_controller.cc
|
View
|
1
2
3
|
1 chunk |
+70 lines, -0 lines |
0 comments
|
Download
|
 |
A |
cc/output/context_cache_controller_unittest.cc
|
View
|
1
2
3
|
1 chunk |
+56 lines, -0 lines |
0 comments
|
Download
|
 |
M |
cc/output/context_provider.h
|
View
|
|
3 chunks |
+2 lines, -3 lines |
0 comments
|
Download
|
 |
M |
cc/output/gl_renderer.h
|
View
|
1
2
3
4
|
2 chunks |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
cc/output/gl_renderer.cc
|
View
|
1
2
3
4
5
6
|
2 chunks |
+15 lines, -9 lines |
0 comments
|
Download
|
 |
M |
cc/output/gl_renderer_unittest.cc
|
View
|
4
5
|
3 chunks |
+3 lines, -28 lines |
0 comments
|
Download
|
 |
M |
cc/raster/raster_buffer_provider_perftest.cc
|
View
|
1
2
3
|
4 chunks |
+8 lines, -2 lines |
0 comments
|
Download
|
 |
M |
cc/test/test_context_provider.h
|
View
|
1
2
3
4
5
|
3 chunks |
+3 lines, -2 lines |
0 comments
|
Download
|
 |
M |
cc/test/test_context_provider.cc
|
View
|
4
5
|
5 chunks |
+9 lines, -3 lines |
0 comments
|
Download
|
 |
M |
cc/test/test_context_support.h
|
View
|
|
2 chunks |
+0 lines, -3 lines |
0 comments
|
Download
|
 |
M |
cc/test/test_context_support.cc
|
View
|
|
1 chunk |
+0 lines, -14 lines |
0 comments
|
Download
|
 |
M |
cc/test/test_in_process_context_provider.h
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
cc/test/test_in_process_context_provider.cc
|
View
|
|
4 chunks |
+9 lines, -6 lines |
0 comments
|
Download
|
 |
M |
cc/trees/layer_tree_host_impl.h
|
View
|
1
2
3
4
5
|
3 chunks |
+12 lines, -0 lines |
0 comments
|
Download
|
 |
M |
cc/trees/layer_tree_host_impl.cc
|
View
|
1
2
3
4
5
6
|
7 chunks |
+65 lines, -51 lines |
0 comments
|
Download
|
 |
M |
cc/trees/layer_tree_host_unittest.cc
|
View
|
1
2
3
4
5
|
4 chunks |
+126 lines, -84 lines |
0 comments
|
Download
|
 |
M |
content/common/gpu/client/context_provider_command_buffer.h
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/common/gpu/client/context_provider_command_buffer.cc
|
View
|
|
5 chunks |
+9 lines, -7 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/context_support.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gles2_implementation.h
|
View
|
|
2 chunks |
+0 lines, -5 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gles2_implementation.cc
|
View
|
|
1 chunk |
+0 lines, -14 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gles2_implementation_unittest.cc
|
View
|
|
1 chunk |
+0 lines, -15 lines |
0 comments
|
Download
|
 |
M |
services/ui/public/cpp/context_provider.h
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
services/ui/public/cpp/context_provider.cc
|
View
|
1
2
3
|
3 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
 |
M |
services/ui/surfaces/surfaces_context_provider.h
|
View
|
1
2
3
4
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
services/ui/surfaces/surfaces_context_provider.cc
|
View
|
1
2
3
4
|
3 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/test/in_process_context_provider.h
|
View
|
1
2
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
ui/compositor/test/in_process_context_provider.cc
|
View
|
1
2
|
4 chunks |
+10 lines, -7 lines |
0 comments
|
Download
|
Dependent Patchsets:
Total messages: 58 (42 generated)
|