summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJared Duke <jdduke@chromium.org>2015-01-09 10:26:38 -0800
committerJared Duke <jdduke@chromium.org>2015-01-09 18:30:26 +0000
commit7ea5c8102540e51b70f6ca976c74f21c8bbd4a7b (patch)
tree705410e7b3f37e0a9088780df1e5ef5c577dc1f9
parent201131f3c253b0ad7d4f3c109d2a481f204b680e (diff)
downloadchromium_src-7ea5c8102540e51b70f6ca976c74f21c8bbd4a7b.zip
chromium_src-7ea5c8102540e51b70f6ca976c74f21c8bbd4a7b.tar.gz
chromium_src-7ea5c8102540e51b70f6ca976c74f21c8bbd4a7b.tar.bz2
Flush the pending input ack when the RenderWidget is hidden
A throttled ack will be held until the commit, which may not happen if the widget is hidden. Flush the ack when widget visibility changes, ensuring the browser process gets a timely ack. BUG=436379 Review URL: https://codereview.chromium.org/820843002 Cr-Commit-Position: refs/heads/master@{#309324} (cherry picked from commit 8fac9d101f18be0e719477e27efb54cbde826546) Review URL: https://codereview.chromium.org/847563002 Cr-Commit-Position: refs/branch-heads/2214@{#420} Cr-Branched-From: 03655fd3f6d72165dc3c9bd2c89807305316fe6c-refs/heads/master@{#303346}
-rw-r--r--content/renderer/render_widget.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 9a09509..efa2519 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -1690,8 +1690,11 @@ void RenderWidget::SetHidden(bool hidden) {
if (is_hidden_ == hidden)
return;
- // The status has changed. Tell the RenderThread about it.
+ // The status has changed. Tell the RenderThread about it and ensure
+ // throttled acks are released in case frame production ceases.
is_hidden_ = hidden;
+ FlushPendingInputEventAck();
+
if (is_hidden_)
RenderThreadImpl::current()->WidgetHidden();
else