[gtk+/gtk-2-16] Bug 526149 - GtkCellRendererAccel editing conflicts with mnemonics
- From: Matthias Clasen <matthiasc src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gtk+/gtk-2-16] Bug 526149 - GtkCellRendererAccel editing conflicts with mnemonics
- Date: Sat, 29 Aug 2009 02:43:52 +0000 (UTC)
commit d91a1650acf47252d9405c1478595d542ce3445e
Author: Kristian Rietveld <kris gtk org>
Date: Sun Aug 23 08:59:34 2009 +0200
Bug 526149 - GtkCellRendererAccel editing conflicts with mnemonics
GtkCellRendererAccel also needs to acquire the GTK+ grab in addition to
a GDK keyboard grab. With the GDK keyboard grab, KeyPress and
KeyRelease events are delivered as usual, although we only want to
receive them for our grab widget.
gtk/gtkcellrendereraccel.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtkcellrendereraccel.c b/gtk/gtkcellrendereraccel.c
index 306bc5e..96fe076 100644
--- a/gtk/gtkcellrendereraccel.c
+++ b/gtk/gtkcellrendereraccel.c
@@ -461,6 +461,7 @@ grab_key_callback (GtkWidget *widget,
edited = TRUE;
out:
+ gtk_grab_remove (accel->grab_widget);
gdk_display_keyboard_ungrab (display, event->time);
gdk_display_pointer_ungrab (display, event->time);
@@ -488,6 +489,7 @@ ungrab_stuff (GtkWidget *widget,
{
GdkDisplay *display = gtk_widget_get_display (widget);
+ gtk_grab_remove (accel->grab_widget);
gdk_display_keyboard_ungrab (display, GDK_CURRENT_TIME);
gdk_display_pointer_ungrab (display, GDK_CURRENT_TIME);
@@ -597,6 +599,8 @@ gtk_cell_renderer_accel_start_editing (GtkCellRenderer *cell,
gtk_widget_show_all (accel->edit_widget);
+ gtk_grab_add (accel->grab_widget);
+
g_signal_connect (G_OBJECT (accel->edit_widget), "unrealize",
G_CALLBACK (ungrab_stuff), accel);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]