summaryrefslogtreecommitdiffstats
path: root/base/base.gyp
diff options
context:
space:
mode:
authoragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-24 01:59:32 +0000
committeragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-24 01:59:32 +0000
commit6639f5c6328b64ea800693b343d789b32c050cab (patch)
treec91de0b9bcf09d56c1ab02baef710a6f836d1098 /base/base.gyp
parent380ab46417433097d6fc3a0c92236e46b4ea1d40 (diff)
downloadchromium_src-6639f5c6328b64ea800693b343d789b32c050cab.zip
chromium_src-6639f5c6328b64ea800693b343d789b32c050cab.tar.gz
chromium_src-6639f5c6328b64ea800693b343d789b32c050cab.tar.bz2
Linux: use opaque NativeViewIds
Currently we are still passing GtkWidget* into the renderer and trusting the value on the way out. With this patch we switch to using opaque values. These opaque values are handled by a GtkNativeViewIdManger, a singleton object which maintains the list of currently valid ids and their current X window ids. We don't pass the X window ids directly to the renderer because they are a) guessable and b) possibly variable for a GtkWidget. From a patch size point of view, the X window isn't current created at the point where we need it so significant work would be needed to reorder operations to fix that as well. This patch also removes the GTK accesses from the BACKGROUND_X11 thread which were a temporary hack. http://codereview.chromium.org/92110 BUG=9014,9869,10787 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14405 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/base.gyp')
-rw-r--r--base/base.gyp5
1 files changed, 5 insertions, 0 deletions
diff --git a/base/base.gyp b/base/base.gyp
index 58601ae..9c259b6 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -480,6 +480,8 @@
'sources': [
'gfx/gdi_util.cc',
'gfx/gdi_util.h',
+ 'gfx/gtk_native_view_id_manager.cc',
+ 'gfx/gtk_native_view_id_manager.h',
'gfx/gtk_util.cc',
'gfx/gtk_util.h',
'gfx/jpeg_codec.cc',
@@ -487,6 +489,7 @@
'gfx/native_theme.cc',
'gfx/native_theme.h',
'gfx/native_widget_types.h',
+ 'gfx/native_widget_types_gtk.cc',
'gfx/platform_canvas.h',
'gfx/platform_canvas_linux.h',
'gfx/platform_canvas_mac.h',
@@ -528,7 +531,9 @@
],
}],
[ 'OS != "linux"', { 'sources!': [
+ 'gfx/gtk_native_view_id_manager.cc',
'gfx/gtk_util.cc',
+ 'gfx/native_widget_types_gtk.cc',
],
}],
],