Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Issue 2357673002: Refactor client visibility handling (Closed)

Created:
4 years, 3 months ago by ericrk
Modified:
4 years, 3 months ago
Reviewers:
CC:
chromium-reviews
Target Ref:
refs/pending/branch-heads/2840
Project:
chromium
Visibility:
Public.

Description

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 Review-Url: https://codereview.chromium.org/2278283003 Cr-Commit-Position: refs/heads/master@{#415491} (cherry picked from commit f6c4fb6b0b77f35f094cb73c49b0bfe22d3f4461) BUG=642836

Patch Set 1 #

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 2 chunks +2 lines, -1 line 0 comments Download
M android_webview/browser/aw_render_thread_context_provider.cc View 4 chunks +10 lines, -10 lines 0 comments Download
M blimp/client/feature/compositor/blimp_context_provider.h View 2 chunks +2 lines, -1 line 0 comments Download
M blimp/client/feature/compositor/blimp_context_provider.cc View 4 chunks +10 lines, -8 lines 0 comments Download
M cc/BUILD.gn View 2 chunks +3 lines, -0 lines 0 comments Download
A cc/output/context_cache_controller.h View 1 chunk +74 lines, -0 lines 0 comments Download
A cc/output/context_cache_controller.cc View 1 chunk +70 lines, -0 lines 0 comments Download
A cc/output/context_cache_controller_unittest.cc View 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 2 chunks +2 lines, -0 lines 0 comments Download
M cc/output/gl_renderer.cc View 2 chunks +15 lines, -9 lines 0 comments Download
M cc/output/gl_renderer_unittest.cc View 3 chunks +3 lines, -28 lines 0 comments Download
M cc/raster/raster_buffer_provider_perftest.cc View 4 chunks +8 lines, -2 lines 0 comments Download
M cc/test/test_context_provider.h View 3 chunks +3 lines, -2 lines 0 comments Download
M cc/test/test_context_provider.cc View 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 3 chunks +12 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 7 chunks +65 lines, -51 lines 0 comments Download
M cc/trees/layer_tree_host_unittest.cc View 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 3 chunks +9 lines, -0 lines 0 comments Download
M services/ui/surfaces/surfaces_context_provider.h View 2 chunks +2 lines, -1 line 0 comments Download
M services/ui/surfaces/surfaces_context_provider.cc View 3 chunks +7 lines, -0 lines 0 comments Download
M ui/compositor/test/in_process_context_provider.h View 2 chunks +2 lines, -1 line 0 comments Download
M ui/compositor/test/in_process_context_provider.cc View 4 chunks +10 lines, -7 lines 0 comments Download

Messages

Total messages: 1 (0 generated)
ericrk
4 years, 3 months ago (2016-09-20 15:56:58 UTC) #1
Message was sent while issue was closed.
Committed patchset #1 (id:1) to pending queue manually as
db177352b5ce14d6fe993a01ca335ee56f16ef08.

Powered by Google App Engine
This is Rietveld 408576698