summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host/backing_store.h
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-22 05:12:32 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-22 05:12:32 +0000
commit1163813d7c2a26cef1487d472e43ec3dfb22f247 (patch)
treec3dafba579e420c745c5387f5ba72b8fcf6f7f15 /chrome/browser/renderer_host/backing_store.h
parent30f894bafbd04380db0615b87e734e0dbfad9915 (diff)
downloadchromium_src-1163813d7c2a26cef1487d472e43ec3dfb22f247.zip
chromium_src-1163813d7c2a26cef1487d472e43ec3dfb22f247.tar.gz
chromium_src-1163813d7c2a26cef1487d472e43ec3dfb22f247.tar.bz2
Create an OpenGL backing store. This version works for all the basic operations
except for scrolling. There are a lot of future enhancements which I have put TODOs in to cover. This is currently not built with Chrome as I'm not checking in the build file changes yet. BUG=none TEST=none Review URL: http://codereview.chromium.org/502001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35139 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host/backing_store.h')
-rw-r--r--chrome/browser/renderer_host/backing_store.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/chrome/browser/renderer_host/backing_store.h b/chrome/browser/renderer_host/backing_store.h
index 68514e4..d52e560 100644
--- a/chrome/browser/renderer_host/backing_store.h
+++ b/chrome/browser/renderer_host/backing_store.h
@@ -136,7 +136,21 @@ class BackingStore {
#elif defined(OS_MACOSX)
scoped_cftyperef<CGContextRef> cg_bitmap_;
scoped_cftyperef<CGLayerRef> cg_layer_;
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) && defined(USE_GL)
+ Display* const display_;
+
+ // The parent window for this backing store.
+ const XID root_window_;
+
+ unsigned int texture_id_; // 0 when uninitialized.
+
+ // The size of the texture loaded into GL. This is 0x0 when there is no
+ // texture loaded. This may be different than the size of the backing store
+ // because we could have been resized without yet getting the updated
+ // bitmap.
+ gfx::Size texture_size_;
+
+#elif defined(OS_LINUX) && !defined(USE_GL)
// Paints the bitmap from the renderer onto the backing store without
// using Xrender to composite the pixmaps.
void PaintRectWithoutXrender(TransportDIB* bitmap,