diff options
author | enne@chromium.org <enne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-17 23:36:15 +0000 |
---|---|---|
committer | enne@chromium.org <enne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-17 23:36:15 +0000 |
commit | 58264a37861675eeeefbf7f5bc22508ca4d137d1 (patch) | |
tree | 5946e3df810fa0e44a5215e825327dfaf77e849b /content/browser/renderer_host/render_widget_host.cc | |
parent | e816a9add6b4d29e4e3c67792dddc53d46d33c7c (diff) | |
download | chromium_src-58264a37861675eeeefbf7f5bc22508ca4d137d1.zip chromium_src-58264a37861675eeeefbf7f5bc22508ca4d137d1.tar.gz chromium_src-58264a37861675eeeefbf7f5bc22508ca4d137d1.tar.bz2 |
Fix resize issues when using threaded compositing
Threaded compositing doesn't ever call DoDeferredUpdate, so never has a chance
to send the resize ack via an update message back to the browser. Fix by piping
through didBeginFrame (called at the beginning of a main thread frame) and
didFinishFrame (called during the client side OnSwapBuffers when a main thread
frame has been committed). This patch queues up update messages during
didBeginFrame and then sends them out during the corresponding didFinishFrame.
BUG=103776
TEST=run with threaded compositing, resize page multiple times
Review URL: http://codereview.chromium.org/8528006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110599 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/renderer_host/render_widget_host.cc')
-rw-r--r-- | content/browser/renderer_host/render_widget_host.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/content/browser/renderer_host/render_widget_host.cc b/content/browser/renderer_host/render_widget_host.cc index d440d66..323a102 100644 --- a/content/browser/renderer_host/render_widget_host.cc +++ b/content/browser/renderer_host/render_widget_host.cc @@ -993,11 +993,11 @@ void RenderWidgetHost::OnMsgUpdateRect( UMA_HISTOGRAM_TIMES("MPArch.RWH_RepaintDelta", delta); } - DCHECK(!params.bitmap_rect.IsEmpty()); DCHECK(!params.view_size.IsEmpty()); bool was_async = false; if (!is_accelerated_compositing_active_) { + DCHECK(!params.bitmap_rect.IsEmpty()); const size_t size = params.bitmap_rect.height() * params.bitmap_rect.width() * 4; TransportDIB* dib = process_->GetTransportDIB(params.bitmap); |