summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/meta_frames.h
diff options
context:
space:
mode:
authorerg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-10 22:39:45 +0000
committererg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-10 22:39:45 +0000
commitb2fa86d298e0deade8c6819f54e28e62c756f4e1 (patch)
tree9f3f082b8e458de7a037bbd74826f57ac86c6f20 /chrome/browser/gtk/meta_frames.h
parent9420c240cd8428c63530675e25e97702a007a848 (diff)
downloadchromium_src-b2fa86d298e0deade8c6819f54e28e62c756f4e1.zip
chromium_src-b2fa86d298e0deade8c6819f54e28e62c756f4e1.tar.gz
chromium_src-b2fa86d298e0deade8c6819f54e28e62c756f4e1.tar.bz2
GTK: Use color data from the MetaFrames class in newer versions of GTK+.
When codereviewing my r36867, evmar suggested that I implement our trying to match WM frames in terms of gtk_rc_get_style_by_paths(). This worked... on the version of gtk+ included with hardy. It notably doesn't work under the version included with Karmic. This is the original patch from CL 552092 with some cleanup, before I rewrote it. BUG=32173 TEST=New Wave has a dark border color under GNOME on Karmic. Review URL: http://codereview.chromium.org/564048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38682 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/meta_frames.h')
-rw-r--r--chrome/browser/gtk/meta_frames.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/chrome/browser/gtk/meta_frames.h b/chrome/browser/gtk/meta_frames.h
new file mode 100644
index 0000000..ef828ef
--- /dev/null
+++ b/chrome/browser/gtk/meta_frames.h
@@ -0,0 +1,38 @@
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_GTK_META_FRAMES_H_
+#define CHROME_BROWSER_GTK_META_FRAMES_H_
+
+#include <gdk/gdk.h>
+#include <gtk/gtkwindow.h>
+
+G_BEGIN_DECLS
+
+// For the sake of gtk+ theme integration, we define a class called
+// "MetaFrames," which is the name of a gobject class in the metacity window
+// manager. To actually get at those values, we need to have an object whose
+// gobject class name string matches the definitions in the gtkrc
+// file. MetaFrames derives from GtkWindow.
+//
+// TODO(erg): http://crbug.com/35317 for getting rid of this hack class, as we
+// should be able to use gtk_rc_get_style_by_path() but can't?
+
+typedef struct _MetaFrames MetaFrames;
+typedef struct _MetaFramesClass MetaFramesClass;
+
+struct _MetaFrames {
+ GtkWindow window;
+};
+
+struct _MetaFramesClass {
+ GtkWindowClass parent_class;
+};
+
+// Creates a GtkWindow object with the class name "MetaFrames".
+GtkWidget* meta_frames_new();
+
+G_END_DECLS
+
+#endif // CHROME_BROWSER_GTK_META_FRAMES_H_