From 3c04199080cebd26fbaf86a78cc427165e3ce062 Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Tue, 18 Jun 2002 15:45:05 +0000 Subject: [PATCH] Add a gboolean create argument, so we don't create the structure unless we Tue Jun 18 11:46:33 2002 Owen Taylor * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add a gboolean create argument, so we don't create the structure unless we actually emulate move-resize drags. --- ChangeLog | 7 +++++++ ChangeLog.pre-2-10 | 7 +++++++ ChangeLog.pre-2-2 | 7 +++++++ ChangeLog.pre-2-4 | 7 +++++++ ChangeLog.pre-2-6 | 7 +++++++ ChangeLog.pre-2-8 | 7 +++++++ gdk/x11/gdkwindow-x11.c | 19 +++++++++---------- 7 files changed, 51 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7c3e21e6b9..ea4bb613dc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Tue Jun 18 11:46:33 2002 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add + a gboolean create argument, so we don't create the + structure unless we actually emulate move-resize + drags. + Sat Jun 15 23:53:03 2002 Owen Taylor * gtk/gtkfilesel.c (gtk_file_selection_set_filename): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 7c3e21e6b9..ea4bb613dc 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +Tue Jun 18 11:46:33 2002 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add + a gboolean create argument, so we don't create the + structure unless we actually emulate move-resize + drags. + Sat Jun 15 23:53:03 2002 Owen Taylor * gtk/gtkfilesel.c (gtk_file_selection_set_filename): diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 7c3e21e6b9..ea4bb613dc 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,10 @@ +Tue Jun 18 11:46:33 2002 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add + a gboolean create argument, so we don't create the + structure unless we actually emulate move-resize + drags. + Sat Jun 15 23:53:03 2002 Owen Taylor * gtk/gtkfilesel.c (gtk_file_selection_set_filename): diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 7c3e21e6b9..ea4bb613dc 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +Tue Jun 18 11:46:33 2002 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add + a gboolean create argument, so we don't create the + structure unless we actually emulate move-resize + drags. + Sat Jun 15 23:53:03 2002 Owen Taylor * gtk/gtkfilesel.c (gtk_file_selection_set_filename): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 7c3e21e6b9..ea4bb613dc 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +Tue Jun 18 11:46:33 2002 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add + a gboolean create argument, so we don't create the + structure unless we actually emulate move-resize + drags. + Sat Jun 15 23:53:03 2002 Owen Taylor * gtk/gtkfilesel.c (gtk_file_selection_set_filename): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 7c3e21e6b9..ea4bb613dc 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +Tue Jun 18 11:46:33 2002 Owen Taylor + + * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add + a gboolean create argument, so we don't create the + structure unless we actually emulate move-resize + drags. + Sat Jun 15 23:53:03 2002 Owen Taylor * gtk/gtkfilesel.c (gtk_file_selection_set_filename): diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c index d50f03c26a..ad53ae06f5 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -4206,7 +4206,8 @@ wmspec_resize_drag (GdkWindow *window, } static MoveResizeData * -get_move_resize_data (GdkDisplay *display) +get_move_resize_data (GdkDisplay *display, + gboolean create) { MoveResizeData *mv_resize; static GQuark move_resize_quark = 0; @@ -4216,7 +4217,7 @@ get_move_resize_data (GdkDisplay *display) mv_resize = g_object_get_qdata (G_OBJECT (display), move_resize_quark); - if (!mv_resize) + if (!mv_resize && create) { mv_resize = g_new0 (MoveResizeData, 1); mv_resize->display = display; @@ -4296,7 +4297,7 @@ lookahead_motion_predicate (Display *xdisplay, { gboolean *seen_release = (gboolean *)arg; GdkDisplay *display = gdk_x11_lookup_xdisplay (xdisplay); - MoveResizeData *mv_resize = get_move_resize_data (display); + MoveResizeData *mv_resize = get_move_resize_data (display, FALSE); if (*seen_release) return False; @@ -4346,7 +4347,7 @@ _gdk_moveresize_handle_event (XEvent *event) guint button_mask = 0; GdkWindowObject *window_private; GdkDisplay *display= gdk_x11_lookup_xdisplay (event->xany.display); - MoveResizeData *mv_resize = get_move_resize_data (display); + MoveResizeData *mv_resize = get_move_resize_data (display, FALSE); if (!mv_resize->moveresize_window) return FALSE; @@ -4402,13 +4403,11 @@ _gdk_moveresize_configure_done (GdkDisplay *display, GdkWindow *window) { XEvent *tmp_event; - MoveResizeData *mv_resize = get_move_resize_data (display); + MoveResizeData *mv_resize = get_move_resize_data (display, FALSE); - if (window != mv_resize->moveresize_window) + if (!mv_resize || window != mv_resize->moveresize_window) return FALSE; - g_assert (mv_resize != NULL); - if (mv_resize->moveresize_pending_event) { tmp_event = mv_resize->moveresize_pending_event; @@ -4476,7 +4475,7 @@ emulate_resize_drag (GdkWindow *window, gint root_y, guint32 timestamp) { - MoveResizeData *mv_resize = get_move_resize_data (GDK_WINDOW_DISPLAY (window)); + MoveResizeData *mv_resize = get_move_resize_data (GDK_WINDOW_DISPLAY (window), TRUE); mv_resize->is_resize = TRUE; mv_resize->moveresize_button = button; @@ -4504,7 +4503,7 @@ emulate_move_drag (GdkWindow *window, gint root_y, guint32 timestamp) { - MoveResizeData *mv_resize = get_move_resize_data (GDK_WINDOW_DISPLAY (window)); + MoveResizeData *mv_resize = get_move_resize_data (GDK_WINDOW_DISPLAY (window), TRUE); mv_resize->is_resize = FALSE; mv_resize->moveresize_button = button;