| Index: chrome/browser/ui/gtk/chrome_gtk_frame.h
|
| diff --git a/chrome/browser/ui/gtk/chrome_gtk_frame.h b/chrome/browser/ui/gtk/chrome_gtk_frame.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4d9c9421b1030e5c13110ba6ec6304a8a9f0178d
|
| --- /dev/null
|
| +++ b/chrome/browser/ui/gtk/chrome_gtk_frame.h
|
| @@ -0,0 +1,56 @@
|
| +// 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_UI_GTK_CHROME_GTK_FRAME_H_
|
| +#define CHROME_BROWSER_UI_GTK_CHROME_GTK_FRAME_H_
|
| +#pragma once
|
| +
|
| +#include <gdk/gdk.h>
|
| +#include <gtk/gtkwindow.h>
|
| +
|
| +G_BEGIN_DECLS
|
| +
|
| +// This file declares two subclasses of GtkWindow for easier gtk+ theme
|
| +// integration.
|
| +//
|
| +// The first is "MetaFrames," which is (was?) 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.
|
| +//
|
| +// Metaframes can not be instantiated. It has no constructor; instantiate
|
| +// ChromeGtkFrame instead.
|
| +typedef struct _MetaFrames MetaFrames;
|
| +typedef struct _MetaFramesClass MetaFramesClass;
|
| +
|
| +struct _MetaFrames {
|
| + GtkWindow window;
|
| +};
|
| +
|
| +struct _MetaFramesClass {
|
| + GtkWindowClass parent_class;
|
| +};
|
| +
|
| +
|
| +// The second is ChromeGtkFrame, which defines a number of optional style
|
| +// properties so theme authors can control how chromium appears in gtk-theme
|
| +// mode. It derives from MetaFrames in chrome so older themes that declare a
|
| +// MetaFrames theme will still work. New themes should target this class.
|
| +typedef struct _ChromeGtkFrame ChromeGtkFrame;
|
| +typedef struct _ChromeGtkFrameClass ChromeGtkFrameClass;
|
| +
|
| +struct _ChromeGtkFrame {
|
| + MetaFrames frames;
|
| +};
|
| +
|
| +struct _ChromeGtkFrameClass {
|
| + MetaFramesClass frames_class;
|
| +};
|
| +
|
| +// Creates a GtkWindow object the the class name "ChromeGtkFrame".
|
| +GtkWidget* chrome_gtk_frame_new();
|
| +
|
| +G_END_DECLS
|
| +
|
| +#endif // CHROME_BROWSER_UI_GTK_CHROME_GTK_FRAME_H_
|
|
|