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

Unified Diff: content/browser/renderer_host/compositor_impl_android.h

Issue 1371523003: Android: Don't destroy LayerTreeHost when Surface goes away (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/compositor_impl_android.h
diff --git a/content/browser/renderer_host/compositor_impl_android.h b/content/browser/renderer_host/compositor_impl_android.h
index 4f06753ec300ace47a9de3c63b8f5c78e03f1d39..30c78b4f08a0adf722c4adb73bcbb29db44eb84e 100644
--- a/content/browser/renderer_host/compositor_impl_android.h
+++ b/content/browser/renderer_host/compositor_impl_android.h
@@ -43,6 +43,7 @@ class CONTENT_EXPORT CompositorImpl
: public Compositor,
public cc::LayerTreeHostClient,
public cc::LayerTreeHostSingleThreadClient,
+ public ui::UIResourceProvider,
public ui::WindowAndroidCompositor {
public:
class VSyncObserver {
@@ -64,6 +65,11 @@ class CONTENT_EXPORT CompositorImpl
void AddObserver(VSyncObserver* observer);
void RemoveObserver(VSyncObserver* observer);
+ // ui::ResourceProvider implementation.
+ cc::UIResourceId CreateUIResource(cc::UIResourceClient* client) final;
jdduke (slow) 2015/09/30 17:19:43 Should this be "final override"? Do we have any gu
no sievers 2015/09/30 21:58:47 Done.
+ void DeleteUIResource(cc::UIResourceId resource_id) final;
+ bool SupportsETC1NonPowerOfTwo() const final;
+
private:
// Compositor implementation.
void SetRootLayer(scoped_refptr<cc::Layer> root) override;
@@ -156,7 +162,6 @@ class CONTENT_EXPORT CompositorImpl
scoped_refptr<cc::Layer> subroot_layer_;
scoped_ptr<cc::LayerTreeHost> host_;
- ui::UIResourceProvider ui_resource_provider_;
ui::ResourceManagerImpl resource_manager_;
scoped_ptr<cc::OnscreenDisplayClient> display_client_;
@@ -213,6 +218,8 @@ class CONTENT_EXPORT CompositorImpl
// OutputSurface (which is essentially the contract with cc).
bool output_surface_request_pending_;
+ gpu::Capabilities gpu_capabilities_;
+
base::ObserverList<VSyncObserver, true> observer_list_;
base::WeakPtrFactory<CompositorImpl> weak_factory_;

Powered by Google App Engine
This is Rietveld 408576698