From d9d3cf5eda5646c0f9eb6326fc22468e735184fb Mon Sep 17 00:00:00 2001 From: Soeren Sandmann Date: Mon, 2 Feb 2004 18:18:18 +0000 Subject: [PATCH] Assume gravity works. (Anything else we have to take our chances with). Mon Feb 2 19:04:17 2004 Soeren Sandmann * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else we have to take our chances with). (Bug 97510) --- ChangeLog | 12 ++++++- ChangeLog.pre-2-10 | 12 ++++++- ChangeLog.pre-2-4 | 12 ++++++- ChangeLog.pre-2-6 | 12 ++++++- ChangeLog.pre-2-8 | 12 ++++++- gdk/x11/gdkdisplay-x11.c | 1 - gdk/x11/gdkdisplay-x11.h | 1 - gdk/x11/gdkwindow-x11.c | 69 +--------------------------------------- 8 files changed, 56 insertions(+), 75 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8fc792afc2..c5ea745aeb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,11 +1,21 @@ +Mon Feb 2 19:04:17 2004 Soeren Sandmann + + * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else + we have to take our chances with). + + (Bug 97510) + Mon Feb 2 18:45:28 2004 Soeren Sandmann + Fix bug 110224. + * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): Remove unused variable 'result' * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions. - * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them here + * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them + here. Mon Feb 2 14:32:32 2004 Pablo Saratxaga diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 8fc792afc2..c5ea745aeb 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,11 +1,21 @@ +Mon Feb 2 19:04:17 2004 Soeren Sandmann + + * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else + we have to take our chances with). + + (Bug 97510) + Mon Feb 2 18:45:28 2004 Soeren Sandmann + Fix bug 110224. + * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): Remove unused variable 'result' * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions. - * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them here + * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them + here. Mon Feb 2 14:32:32 2004 Pablo Saratxaga diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 8fc792afc2..c5ea745aeb 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,11 +1,21 @@ +Mon Feb 2 19:04:17 2004 Soeren Sandmann + + * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else + we have to take our chances with). + + (Bug 97510) + Mon Feb 2 18:45:28 2004 Soeren Sandmann + Fix bug 110224. + * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): Remove unused variable 'result' * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions. - * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them here + * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them + here. Mon Feb 2 14:32:32 2004 Pablo Saratxaga diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 8fc792afc2..c5ea745aeb 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,11 +1,21 @@ +Mon Feb 2 19:04:17 2004 Soeren Sandmann + + * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else + we have to take our chances with). + + (Bug 97510) + Mon Feb 2 18:45:28 2004 Soeren Sandmann + Fix bug 110224. + * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): Remove unused variable 'result' * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions. - * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them here + * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them + here. Mon Feb 2 14:32:32 2004 Pablo Saratxaga diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 8fc792afc2..c5ea745aeb 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,11 +1,21 @@ +Mon Feb 2 19:04:17 2004 Soeren Sandmann + + * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else + we have to take our chances with). + + (Bug 97510) + Mon Feb 2 18:45:28 2004 Soeren Sandmann + Fix bug 110224. + * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): Remove unused variable 'result' * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions. - * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them here + * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them + here. Mon Feb 2 14:32:32 2004 Pablo Saratxaga diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c index e2e17ca167..0c1c772f75 100644 --- a/gdk/x11/gdkdisplay-x11.c +++ b/gdk/x11/gdkdisplay-x11.c @@ -190,7 +190,6 @@ gdk_display_open (const gchar *display_name) display_x11->leader_window_title_set = FALSE; - display_x11->gravity_works = GDK_UNKNOWN; display_x11->have_render = GDK_UNKNOWN; if (_gdk_synchronize) diff --git a/gdk/x11/gdkdisplay-x11.h b/gdk/x11/gdkdisplay-x11.h index 5c1d4a539e..40dec9e56d 100644 --- a/gdk/x11/gdkdisplay-x11.h +++ b/gdk/x11/gdkdisplay-x11.h @@ -77,7 +77,6 @@ struct _GdkDisplayX11 gboolean use_xshm; gboolean have_shm_pixmaps; - GdkTristate gravity_works; GdkTristate have_render; /* Information about current pointer and keyboard grabs held by this diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c index 4eca373035..c4f8575aff 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -78,7 +78,6 @@ const int _gdk_event_mask_table[21] = const int _gdk_nenvent_masks = sizeof (_gdk_event_mask_table) / sizeof (int); /* Forward declarations */ -static gboolean gdk_window_gravity_works (GdkWindow *window); static void gdk_window_set_static_win_gravity (GdkWindow *window, gboolean on); static gboolean gdk_window_have_shape_ext (GdkDisplay *display); @@ -4561,69 +4560,6 @@ gdk_window_merge_child_shapes (GdkWindow *window) #endif } -/* Support for windows that can be guffaw-scrolled - * (See http://www.gtk.org/~otaylor/whitepapers/guffaw-scrolling.txt) - */ - -static gboolean -gdk_window_gravity_works (GdkWindow *window) -{ - GdkDisplayX11 *display_x11 = GDK_DISPLAY_X11 (GDK_DRAWABLE_DISPLAY (window)); - - if (display_x11->gravity_works == GDK_UNKNOWN) - { - GdkWindowAttr attr; - GdkWindow *parent; - GdkWindow *child; - gint y; - - /* This particular server apparently has a bug so that the test - * works but the actual code crashes it - */ - if ((!strcmp (XServerVendor (display_x11->xdisplay), - "Sun Microsystems, Inc.")) && - (VendorRelease (display_x11->xdisplay) == 3400)) - { - display_x11->gravity_works = GDK_NO; - return FALSE; - } - - attr.window_type = GDK_WINDOW_TEMP; - attr.wclass = GDK_INPUT_OUTPUT; - attr.x = 0; - attr.y = 0; - attr.width = 100; - attr.height = 100; - attr.event_mask = 0; - - parent = gdk_window_new (gdk_screen_get_root_window (GDK_DRAWABLE_SCREEN (window)), - &attr, GDK_WA_X | GDK_WA_Y); - - attr.window_type = GDK_WINDOW_CHILD; - child = gdk_window_new (parent, &attr, GDK_WA_X | GDK_WA_Y); - - gdk_window_set_static_win_gravity (child, TRUE); - - gdk_window_resize (parent, 100, 110); - - gdk_window_move (parent, 0, -10); - gdk_window_move_resize (parent, 0, 0, 100, 100); - - gdk_window_resize (parent, 100, 110); - gdk_window_move (parent, 0, -10); - gdk_window_move_resize (parent, 0, 0, 100, 100); - - gdk_window_get_geometry (child, NULL, &y, NULL, NULL, NULL); - - gdk_window_destroy (parent); - gdk_window_destroy (child); - - display_x11->gravity_works = ((y == -20) ? GDK_YES : GDK_NO); - } - - return (display_x11->gravity_works == GDK_YES); -} - static void gdk_window_set_static_bit_gravity (GdkWindow *window, gboolean on) { @@ -4683,10 +4619,7 @@ gdk_window_set_static_gravities (GdkWindow *window, if (!use_static == !private->guffaw_gravity) return TRUE; - - if (use_static && !gdk_window_gravity_works (window)) - return FALSE; - + private->guffaw_gravity = use_static; if (!GDK_WINDOW_DESTROYED (window))