summaryrefslogtreecommitdiffstats
path: root/base/threading
diff options
context:
space:
mode:
authorccameron@chromium.org <ccameron@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-17 09:30:42 +0000
committerccameron@chromium.org <ccameron@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-17 09:30:42 +0000
commitf4675d46bc796eadbc52f2df208175f4e5b5887d (patch)
treeed4563898f26e46132166bc0b7b6bbb6f77a8d5e /base/threading
parent740af6b7c2afd0defd97b173b8ce1ce67df93165 (diff)
downloadchromium_src-f4675d46bc796eadbc52f2df208175f4e5b5887d.zip
chromium_src-f4675d46bc796eadbc52f2df208175f4e5b5887d.tar.gz
chromium_src-f4675d46bc796eadbc52f2df208175f4e5b5887d.tar.bz2
Separate ResizeHelper from RenderWidgetHelper
Create a separate RenderWidgetResizeHelper to handle intercepting and early-processing of IPCs that need to be run during an active resize. This functionality was previously handled in RenderWidgetHelper. The only functional changes made to RenderWidgetResizeHelper during its excision is that it is a single global structure, as compared with the per-RenderProcessImpl RenderWidgetHelper. It will execute any IPCs from any renderer or the GPU processes that are forwarded to it. This is preferable, as that makes it so that live resize in one window does not destroy performance in other windows. Because RenderWidgetResizeHelper can handle GPU process IPCs, we can tear out the bizarre behavior where we'd translate GPU IPCs to synthetic renderer IPCs get them to channel through RenderWidgetHelper (this is all of the deleted ViewHostMsg_CompositorSurfaceBuffersSwapped code). Mark this entire structure as Mac-only, and put it in Mac-only files, since it doesn't get used on other platforms. Future changes will make RenderWidgetResizeHelper have a TaskRunner, which we will pass to the compositor, so that we can pump new frames while inside -[RenderWidgetHostViewMac setFrameSize:]. BUG=392031 Review URL: https://codereview.chromium.org/396483003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283726 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/threading')
-rw-r--r--base/threading/thread_restrictions.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h
index f52e64c..6e543a1 100644
--- a/base/threading/thread_restrictions.h
+++ b/base/threading/thread_restrictions.h
@@ -47,7 +47,7 @@ class BrowserTestBase;
class GLHelper;
class GpuChannelHost;
class NestedMessagePumpAndroid;
-class RenderWidgetHelper;
+class RenderWidgetResizeHelper;
class ScopedAllowWaitForAndroidLayoutTests;
class TextInputClientMac;
}
@@ -180,7 +180,7 @@ class BASE_EXPORT ThreadRestrictions {
friend class content::BrowserShutdownProfileDumper;
friend class content::BrowserTestBase;
friend class content::NestedMessagePumpAndroid;
- friend class content::RenderWidgetHelper;
+ friend class content::RenderWidgetResizeHelper;
friend class content::ScopedAllowWaitForAndroidLayoutTests;
friend class ::HistogramSynchronizer;
friend class ::ScopedAllowWaitForLegacyWebViewApi;