diff options
author | Javier Jardón <jjardon@gnome.org> | 2014-11-01 00:20:26 +0000 |
---|---|---|
committer | Javier Jardón <jjardon@gnome.org> | 2014-11-01 00:43:12 +0000 |
commit | 487c71d0706b6c5eac281b1c4b3919c66facbd44 (patch) | |
tree | 0124511b749699cf8f3821f67aec38afc64a212e /src/canberra-gtk-module.c | |
parent | c0620e432650e81062c1967cc669829dbd29b310 (diff) | |
download | libcanberra-baserock/jjardon/gnome.tar.gz |
patch to drop X runtime depsbaserock/jjardon/gnome
Diffstat (limited to 'src/canberra-gtk-module.c')
-rw-r--r-- | src/canberra-gtk-module.c | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/src/canberra-gtk-module.c b/src/canberra-gtk-module.c index c1532ab..b83e0d2 100644 --- a/src/canberra-gtk-module.c +++ b/src/canberra-gtk-module.c @@ -25,7 +25,9 @@ #endif #include <gtk/gtk.h> +#ifdef GDK_WINDOWING_X11 #include <gdk/gdkx.h> +#endif #include <X11/Xatom.h> #include "canberra-gtk.h" @@ -299,6 +301,7 @@ static SoundEventData* filter_sound_event(SoundEventData *d) { return d; } +#ifdef GDK_WINDOWING_X11 static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) { Atom type_return; gint format_return; @@ -410,6 +413,7 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) { return ret; } +#endif static void dispatch_sound_event(SoundEventData *d) { int ret = CA_SUCCESS; @@ -471,13 +475,16 @@ static void dispatch_sound_event(SoundEventData *d) { hint == GDK_WINDOW_TYPE_HINT_DIALOG) { gboolean played_sound = FALSE; - gboolean is_xembed; - - is_xembed = - gtk_widget_get_realized(GTK_WIDGET(d->object)) && - window_is_xembed( - gtk_widget_get_display(GTK_WIDGET(d->object)), - gtk_widget_get_window(GTK_WIDGET(d->object))); + gboolean is_xembed = FALSE; + +#ifdef GDK_WINDOWING_X11 + if (GDK_IS_X11_DISPLAY (gtk_widget_get_display (GTK_WIDGET (d->object)))) + is_xembed = + gtk_widget_get_realized(GTK_WIDGET(d->object)) && + window_is_xembed( + gtk_widget_get_display(GTK_WIDGET(d->object)), + gtk_widget_get_window(GTK_WIDGET(d->object))); +#endif g_object_set_qdata(d->object, is_xembed_quark, GINT_TO_POINTER(is_xembed)); @@ -596,8 +603,16 @@ static void dispatch_sound_event(SoundEventData *d) { GdkDisplay *display; display = gtk_widget_get_display(GTK_WIDGET(d->object)); - w_desktop = window_get_desktop(display, gtk_widget_get_window(GTK_WIDGET(d->object))); - c_desktop = display_get_desktop(display); +#ifdef GDK_WINDOWING_X11 + if (GDK_IS_X11_DISPLAY (display)) { + w_desktop = window_get_desktop(display, gtk_widget_get_window(GTK_WIDGET(d->object))); + c_desktop = display_get_desktop(display); + } else +#endif + { + w_desktop = 0; + c_desktop = 0; + } } if ((e->changed_mask & GDK_WINDOW_STATE_ICONIFIED) && |