Index: content/browser/renderer_host/render_process_host_impl.h |
diff --git a/content/browser/renderer_host/render_process_host_impl.h b/content/browser/renderer_host/render_process_host_impl.h |
index dff4959945281cd709f4a3fa39d3c055dd6f02f1..5f528b1c491377884b78673a405e88c1fea24d69 100644 |
--- a/content/browser/renderer_host/render_process_host_impl.h |
+++ b/content/browser/renderer_host/render_process_host_impl.h |
@@ -15,6 +15,7 @@ |
#include "base/timer.h" |
#include "content/browser/child_process_launcher.h" |
#include "content/common/content_export.h" |
+#include "content/public/browser/gpu_data_manager_observer.h" |
#include "content/public/browser/render_process_host.h" |
#include "ipc/ipc_channel_proxy.h" |
#include "ui/surface/transport_dib.h" |
@@ -62,7 +63,8 @@ class StoragePartitionImpl; |
// to access the partition they are assigned to. |
class CONTENT_EXPORT RenderProcessHostImpl |
: public RenderProcessHost, |
- public ChildProcessLauncher::Client { |
+ public ChildProcessLauncher::Client, |
+ public GpuDataManagerObserver { |
public: |
RenderProcessHostImpl(BrowserContext* browser_context, |
StoragePartitionImpl* storage_partition_impl, |
@@ -235,6 +237,8 @@ class CONTENT_EXPORT RenderProcessHostImpl |
// Handle termination of our process. |
void ProcessDied(bool already_dead); |
+ virtual void OnGpuSwitching() OVERRIDE; |
+ |
// The count of currently visible widgets. Since the host can be a container |
// for multiple widgets, it uses this count to determine when it should be |
// backgrounded. |
@@ -327,6 +331,10 @@ class CONTENT_EXPORT RenderProcessHostImpl |
// and PeerConnectionTracker in the renderer process. |
scoped_refptr<PeerConnectionTrackerHost> peer_connection_tracker_host_; |
+ // Prevents the class from being added as a GpuDataManagerImpl observer more |
+ // than once. |
+ bool gpu_observer_registered_; |
+ |
DISALLOW_COPY_AND_ASSIGN(RenderProcessHostImpl); |
}; |