diff options
-rw-r--r-- | acconfig.h | 3 | ||||
-rw-r--r-- | configure.in | 37 | ||||
-rw-r--r-- | gdk/gdkdisplay.c | 3 | ||||
-rw-r--r-- | gdk/gdkpango.c | 2 | ||||
-rw-r--r-- | gdk/gdkpixmap.h | 8 | ||||
-rw-r--r-- | gdk/x11/gdkdisplay-x11.c | 20 | ||||
-rw-r--r-- | gdk/x11/gdkevents-x11.c | 3 | ||||
-rw-r--r-- | gdk/x11/gdkpixmap-x11.c | 2 | ||||
-rw-r--r-- | gdk/x11/gdkx.h | 4 |
9 files changed, 59 insertions, 23 deletions
diff --git a/acconfig.h b/acconfig.h index 0bcd0e67b..9d853fec6 100644 --- a/acconfig.h +++ b/acconfig.h @@ -29,8 +29,11 @@ #undef HAVE_STPCPY #undef HAVE_XSHM_H #undef HAVE_SHAPE_EXT +#undef HAVE_SOLARIS_XINERAMA #undef HAVE_SYS_SELECT_H #undef HAVE_SYS_TIME_H +#undef HAVE_XFREE_XINERAMA +#undef HAVE_XINERAMA #undef HAVE_WINSOCK_H #undef HAVE_WINTAB #undef HAVE_XCONVERTCASE diff --git a/configure.in b/configure.in index 969f864eb..a897d7ffd 100644 --- a/configure.in +++ b/configure.in @@ -1019,6 +1019,43 @@ if test "x$gdktarget" = "xx11"; then # Don't ever pull in the pangoxft libraries for gdk-pixbuf-x11 GDK_PIXBUF_XLIB_EXTRA_LIBS="$x_extra_libs `$PKG_CONFIG --libs pangox`" + # Check for Xinerama extension (Solaris impl or Xfree impl) + + case "$host" in + *-*-solaris*) + # Check for solaris + use_solaris_xinerama=yes + AC_CHECK_LIB(Xext, XineramaGetInfo, + use_solaris_xinerama=yes, use_solaris_xinerama=no) + if test "x$use_solaris_xinerama" == "xyes"; then + AC_CHECK_HEADER(X11/extensions/xinerama.h, + if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then + x_extra_libs="-lXext $x_extra_libs" + fi + AC_DEFINE(HAVE_SOLARIS_XINERAMA) + AC_DEFINE(HAVE_XINERAMA), use_solaris_xinerama=no) + fi + AC_MSG_CHECKING(for Xinerama support on Solaris) + AC_MSG_RESULT($use_solaris_xinerama); + ;; + *) + # Check for XFree + use_xfree_xinerama=yes + AC_CHECK_LIB(Xinerama, XineramaQueryExtension, + [AC_CHECK_HEADER(extensions/Xinerama.h, + x_extra_libs="-lXinerama $x_extra_libs" + if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then + x_extra_libs="-lXext $x_extra_libs" + fi + AC_DEFINE(HAVE_XFREE_XINERAMA) + AC_DEFINE(HAVE_XINERAMA), + use_xfree_xinerama=no)], + use_xfree_xinerama=no) + AC_MSG_CHECKING(for Xinerama support on XFree86) + AC_MSG_RESULT($use_xfree_xinerama); + ;; + esac + # Check for shaped window extension AC_CHECK_LIB(Xext, XShapeCombineMask, diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c index 6a9e9646e..309784732 100644 --- a/gdk/gdkdisplay.c +++ b/gdk/gdkdisplay.c @@ -230,7 +230,6 @@ gdk_list_displays (void) /** * gdk_display_get_event: * @display: a #GdkDisplay - * @event: a #GdkEvent * * Gets the next #GdkEvent to be processed for @display, fetching events from the * windowing system if necessary. @@ -249,7 +248,7 @@ gdk_display_get_event (GdkDisplay *display) /** * gdk_display_peek_event: - * @void: + * @display: a #GdkDisplay * * Gets a copy of the first #GdkEvent in the @display's event queue, without * removing the event from the queue. (Note that this function will diff --git a/gdk/gdkpango.c b/gdk/gdkpango.c index 90d772971..1422401ac 100644 --- a/gdk/gdkpango.c +++ b/gdk/gdkpango.c @@ -275,7 +275,7 @@ gdk_draw_layout_line_with_colors (GdkDrawable *drawable, tmp.green = foreground->green; } - fg_gc = gdk_pango_get_gc (drawable, context, fg_set ? &tmp : NULL, + fg_gc = gdk_pango_get_gc (drawable, context, (fg_set || foreground) ? &tmp : NULL, stipple, gc); } else diff --git a/gdk/gdkpixmap.h b/gdk/gdkpixmap.h index aa5c56bb8..ac76975b1 100644 --- a/gdk/gdkpixmap.h +++ b/gdk/gdkpixmap.h @@ -82,10 +82,10 @@ GdkPixmap* gdk_pixmap_foreign_new (GdkNativeWindow anid); GdkPixmap* gdk_pixmap_lookup (GdkNativeWindow anid); #endif /* GDK_MULTIHEAD_SAFE */ -GdkPixmap* gdk_pixmap_foreign_new_for_screen (GdkScreen *screen, - GdkNativeWindow anid); -GdkPixmap* gdk_pixmap_lookup_for_display (GdkDisplay *display, - GdkNativeWindow anid); +GdkPixmap* gdk_pixmap_foreign_new_for_display (GdkDisplay *display, + GdkNativeWindow anid); +GdkPixmap* gdk_pixmap_lookup_for_display (GdkDisplay *display, + GdkNativeWindow anid); #ifndef GDK_DISABLE_DEPRECATED #define gdk_bitmap_ref gdk_drawable_ref diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c index 41b0078ca..bbd9624a2 100644 --- a/gdk/x11/gdkdisplay-x11.c +++ b/gdk/x11/gdkdisplay-x11.c @@ -41,10 +41,10 @@ #include <X11/XKBlib.h> #endif -#ifdef HAS_SOLARIS_XINERAMA +#ifdef HAVE_SOLARIS_XINERAMA #include <X11/extensions/xinerama.h> #endif -#ifdef HAS_XFREE_XINERAMA +#ifdef HAVE_XFREE_XINERAMA #include <X11/extensions/Xinerama.h> #endif @@ -101,11 +101,11 @@ gdk_display_x11_class_init (GdkDisplayX11Class * class) parent_class = g_type_class_peek_parent (class); } -#ifdef HAS_XINERAMA +#ifdef HAVE_XINERAMA static gboolean check_solaris_xinerama (GdkScreen *screen) { -#ifdef HAS_SOLARIS_XINERAMA +#ifdef HAVE_SOLARIS_XINERAMA if (XineramaGetState (GDK_SCREEN_XDISPLAY (screen), gdk_screen_get_number (screen))) { @@ -139,7 +139,7 @@ check_solaris_xinerama (GdkScreen *screen) return TRUE; } } -#endif /* HAS_SOLARIS_XINERAMA */ +#endif /* HAVE_SOLARIS_XINERAMA */ return FALSE; } @@ -147,7 +147,7 @@ check_solaris_xinerama (GdkScreen *screen) static gboolean check_xfree_xinerama (GdkScreen *screen) { -#ifdef HAS_XFREE_XINERAMA +#ifdef HAVE_XFREE_XINERAMA if (XineramaIsActive (GDK_SCREEN_XDISPLAY (screen))) { XineramaScreenInfo *monitors = XineramaQueryScreens (GDK_SCREEN_XDISPLAY (screen), @@ -178,18 +178,18 @@ check_xfree_xinerama (GdkScreen *screen) return TRUE; } } -#endif /* HAS_XFREE_XINERAMA */ +#endif /* HAVE_XFREE_XINERAMA */ return FALSE; } -#endif /* HAS_XINERAMA */ +#endif /* HAVE_XINERAMA */ static void init_xinerama_support (GdkScreen * screen) { GdkScreenX11 *screen_x11 = GDK_SCREEN_X11 (screen); -#ifdef HAS_XINERAMA +#ifdef HAVE_XINERAMA int opcode, firstevent, firsterror; gint result; @@ -200,7 +200,7 @@ init_xinerama_support (GdkScreen * screen) check_xfree_xinerama (screen)) return; } -#endif /* HAS_XINERAMA */ +#endif /* HAVE_XINERAMA */ /* No Xinerama */ diff --git a/gdk/x11/gdkevents-x11.c b/gdk/x11/gdkevents-x11.c index 229dea954..5cabe70de 100644 --- a/gdk/x11/gdkevents-x11.c +++ b/gdk/x11/gdkevents-x11.c @@ -2097,7 +2097,7 @@ struct _NetWmSupportedAtoms * a way that impacts persistent application state. A common bug * is that your application can start up before the window manager * does when the user logs in, and before the window manager starts - * gdk_net_wm_supports() will return %FALSE for every property. + * gdk_x11_screen_supports_net_wm_hint() will return %FALSE for every property. * * Return value: %TRUE if the window manager supports @property **/ @@ -2197,7 +2197,6 @@ gdk_x11_screen_supports_net_wm_hint (GdkScreen *screen, /** * gdk_net_wm_supports: - * @screen : the relevant #GdkScreen. * @property: a property atom. * * This function is specific to the X11 backend of GDK, and indicates diff --git a/gdk/x11/gdkpixmap-x11.c b/gdk/x11/gdkpixmap-x11.c index 775dc4db7..723c1f52f 100644 --- a/gdk/x11/gdkpixmap-x11.c +++ b/gdk/x11/gdkpixmap-x11.c @@ -311,7 +311,7 @@ gdk_pixmap_create_from_data (GdkWindow *window, /** * gdk_pixmap_foreign_new_for_display: - * @screen : The #GdkScreen the @anid is located. + * @display: The #GdkDisplay where @anid is located. * @anid: a native pixmap handle. * * Wraps a native window in a #GdkPixmap. diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx.h index c4b35c889..8985a97fc 100644 --- a/gdk/x11/gdkx.h +++ b/gdk/x11/gdkx.h @@ -145,12 +145,10 @@ void gdk_x11_ungrab_server (); GdkDisplay *gdk_x11_lookup_xdisplay (Display *xdisplay); -GList *gdk_list_visuals_for_screen (GdkScreen *screen); - /* Functions to get the X Atom equivalent to the GdkAtom */ Atom gdk_x11_atom_to_xatom_for_display (GdkDisplay *display, - GdkAtom virtual_atom); + GdkAtom atom); GdkAtom gdk_x11_xatom_to_atom_for_display (GdkDisplay *display, Atom xatom); Atom gdk_x11_get_xatom_by_name_for_display (GdkDisplay *display, |