From 9f3f20dc7b9fff3c1c0a10e9110e1a6590d5831e Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 20 Jul 2005 19:54:04 +0000 Subject: [PATCH] Don't fail if we can't get a keyboard grab. (#168351) 2005-07-20 Matthias Clasen * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we can't get a keyboard grab. (#168351) --- ChangeLog | 3 +++ ChangeLog.pre-2-10 | 3 +++ ChangeLog.pre-2-8 | 3 +++ gtk/gtkdnd.c | 13 ++++--------- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3cf514dccd..e770d165a2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2005-07-20 Matthias Clasen + * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we + can't get a keyboard grab. (#168351) + * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_[sg]et_property): Add GTK_FILE_CHOOSER_PROP_DO_OVERWRITE_CONFIRMATION. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 3cf514dccd..e770d165a2 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,5 +1,8 @@ 2005-07-20 Matthias Clasen + * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we + can't get a keyboard grab. (#168351) + * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_[sg]et_property): Add GTK_FILE_CHOOSER_PROP_DO_OVERWRITE_CONFIRMATION. diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 3cf514dccd..e770d165a2 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,5 +1,8 @@ 2005-07-20 Matthias Clasen + * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we + can't get a keyboard grab. (#168351) + * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_[sg]et_property): Add GTK_FILE_CHOOSER_PROP_DO_OVERWRITE_CONFIRMATION. diff --git a/gtk/gtkdnd.c b/gtk/gtkdnd.c index 4bd2739390..ee0b8095b6 100644 --- a/gtk/gtkdnd.c +++ b/gtk/gtkdnd.c @@ -115,8 +115,7 @@ struct _GtkDragSourceInfo guint destroy_icon : 1; /* If true, destroy icon_window */ guint have_grab : 1; /* Do we still have the pointer grab - - */ + */ GdkPixbuf *icon_pixbuf; GdkCursor *drag_cursors[6]; }; @@ -2095,18 +2094,14 @@ gtk_drag_begin_internal (GtkWidget *widget, if (gdk_pointer_grab (ipc_widget->window, FALSE, GDK_POINTER_MOTION_MASK | GDK_BUTTON_RELEASE_MASK, NULL, - cursor, time) != 0) - { - gtk_drag_release_ipc_widget (ipc_widget); - return NULL; - } - - if (gdk_keyboard_grab (ipc_widget->window, FALSE, time) != 0) + cursor, time) != GDK_GRAB_SUCCESS) { gtk_drag_release_ipc_widget (ipc_widget); return NULL; } + gdk_keyboard_grab (ipc_widget->window, FALSE, time); + /* We use a GTK grab here to override any grabs that the widget * we are dragging from might have held */