summaryrefslogtreecommitdiffstats
path: root/ui/base/gtk/gtk_compat.h
diff options
context:
space:
mode:
Diffstat (limited to 'ui/base/gtk/gtk_compat.h')
-rw-r--r--ui/base/gtk/gtk_compat.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/ui/base/gtk/gtk_compat.h b/ui/base/gtk/gtk_compat.h
new file mode 100644
index 0000000..e6c119a
--- /dev/null
+++ b/ui/base/gtk/gtk_compat.h
@@ -0,0 +1,39 @@
+// Copyright (c) 2011 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 UI_BASE_GTK_GTK_COMPAT_H_
+#define UI_BASE_GTK_GTK_COMPAT_H_
+#pragma once
+
+#include <gtk/gtk.h>
+
+// Google Chrome must depend on GTK 2.18, at least until the next LTS drops
+// (and we might have to extend which version of GTK we want to target due to
+// RHEL). To make our porting job for GTK3 easier, we define all the methods
+// that replace deprecated APIs in this file and then include it everywhere.
+//
+// This file is organized first by version, and then with each version,
+// alphabetically by method.
+
+#if !GTK_CHECK_VERSION(2, 20, 0)
+inline gboolean gtk_widget_get_realized(GtkWidget* widget) {
+ return GTK_WIDGET_REALIZED(widget);
+}
+
+inline gboolean gtk_widget_is_toplevel(GtkWidget* widget) {
+ return GTK_WIDGET_TOPLEVEL(widget);
+}
+#endif
+
+#if !GTK_CHECK_VERSION(2, 24, 0)
+inline void gdk_pixmap_get_size(GdkPixmap* pixmap, gint* width, gint* height) {
+ gdk_drawable_get_size(GDK_DRAWABLE(pixmap), width, height);
+}
+
+inline GdkScreen* gdk_window_get_screen(GdkWindow* window) {
+ return gdk_drawable_get_screen(GDK_DRAWABLE(window));
+}
+#endif
+
+#endif // UI_BASE_GTK_GTK_COMPAT_H_