summaryrefslogtreecommitdiffstats
path: root/views/view.h
diff options
context:
space:
mode:
authorbacker@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-24 12:32:19 +0000
committerbacker@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-24 12:32:19 +0000
commit1cbbee3cbff09ceb17af31686108e07bf4490c95 (patch)
treed9514c34b14a8b82b64ea04459f27ca8694d6863 /views/view.h
parent952e1b3390348d42d8fd76c9b439c3e35c38e0a6 (diff)
downloadchromium_src-1cbbee3cbff09ceb17af31686108e07bf4490c95.zip
chromium_src-1cbbee3cbff09ceb17af31686108e07bf4490c95.tar.gz
chromium_src-1cbbee3cbff09ceb17af31686108e07bf4490c95.tar.bz2
Allow View to have a layer whose texture is updated externally.
This will be used to display texture produced by the GPU process for the RWHVV via the browser compositor. BUG=none TEST=none Review URL: http://codereview.chromium.org/7231012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90362 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/view.h')
-rw-r--r--views/view.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/views/view.h b/views/view.h
index 24f9ca7..e510d53 100644
--- a/views/view.h
+++ b/views/view.h
@@ -34,6 +34,7 @@ namespace ui {
struct AccessibleViewState;
class Compositor;
class Layer;
+class Texture;
class ThemeProvider;
class Transform;
#if defined(TOUCH_UI)
@@ -965,6 +966,15 @@ class View : public AcceleratorTarget {
// layer is rendered by the compositor.
virtual void OnWillCompositeLayer();
+ // This creates a layer for the view, if one does not exist. It then
+ // passes the texture to a layer associated with the view. While an external
+ // texture is set, the view will not update the layer contents.
+ //
+ // Passing NULL resets to default behavior.
+ //
+ // Returns false if it cannot create a layer to which to assign the texture.
+ bool SetExternalTexture(ui::Texture* texture);
+
// Returns the Compositor.
virtual const ui::Compositor* GetCompositor() const;
virtual ui::Compositor* GetCompositor();
@@ -1370,6 +1380,10 @@ class View : public AcceleratorTarget {
// Is the layer out of date?
bool layer_needs_updating_;
+ // Is the texture backing the layer being updated externally?
+ // (i.e. by the GPU process when rendering 3D CSS)
+ bool layer_updated_externally_;
+
// Should we paint to a layer? See description above setter for details.
bool paint_to_layer_;