From 3da42cef82ee714a2271849275dfeea3b03ed508 Mon Sep 17 00:00:00 2001 From: Stefano Karapetsas Date: Sun, 19 Jan 2014 21:36:42 +0100 Subject: stickynotes: Add GTK3 support --- stickynotes/stickynotes_applet_callbacks.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'stickynotes/stickynotes_applet_callbacks.c') diff --git a/stickynotes/stickynotes_applet_callbacks.c b/stickynotes/stickynotes_applet_callbacks.c index 14415606..71d015ec 100644 --- a/stickynotes/stickynotes_applet_callbacks.c +++ b/stickynotes/stickynotes_applet_callbacks.c @@ -22,6 +22,9 @@ #include "stickynotes_applet_callbacks.h" #include "stickynotes.h" #include +#if GTK_CHECK_VERSION (3, 0, 0) +#include +#endif #include #include @@ -164,8 +167,14 @@ void install_check_click_on_desktop (void) return; } +#if GTK_CHECK_VERSION (3, 0, 0) + /* Access the desktop window. desktop_window is the root window for the + * default screen, so we know using gdk_display_get_default() is correct. */ + window = gdk_x11_window_foreign_new_for_display (gdk_display_get_default (), desktop_window); +#else /* Access the desktop window */ window = gdk_window_foreign_new (desktop_window); +#endif /* It may contain an atom to tell us which other window to monitor */ user_time_window = gdk_x11_get_xatom_by_name ("_NET_WM_USER_TIME_WINDOW"); @@ -193,7 +202,11 @@ void install_check_click_on_desktop (void) { /* We have another window to monitor */ desktop_window = *data; +#if GTK_CHECK_VERSION (3, 0, 0) + window = gdk_x11_window_foreign_new_for_display (gdk_window_get_display (window), desktop_window); +#else window = gdk_window_foreign_new (desktop_window); +#endif } } } @@ -233,9 +246,14 @@ void applet_change_bg_cb (MatePanelApplet *mate_panel_applet, MatePanelAppletBackgroundType type, GdkColor *color, +#if GTK_CHECK_VERSION (3, 0, 0) + cairo_pattern_t *pattern, +#else GdkPixmap *pixmap, +#endif StickyNotesApplet *applet) { +#if !GTK_CHECK_VERSION (3, 0, 0) /* Taken from TrashApplet */ GtkRcStyle *rc_style; GtkStyle *style; @@ -269,6 +287,7 @@ applet_change_bg_cb (MatePanelApplet *mate_panel_applet, g_object_unref (style); break; } +#endif } /* Applet Callback : Deletes the applet. */ -- cgit v1.2.1