summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2007-03-09 23:36:55 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2007-03-09 23:36:55 +0000
commit455bc10de5a184f58577ddc8fee5b0a43950a88e (patch)
tree741d0e2f41c77513e3b700162248b1f5d769e087
parent82ce59cd0fd65f4d3b13dc4c305fc6d8ec44a12c (diff)
downloadgdk-pixbuf-455bc10de5a184f58577ddc8fee5b0a43950a88e.tar.gz
Don't commit modifier-adorned characters. (#331369, #335796, Lin Ma and
2007-03-09 Matthias Clasen <mclasen@redhat.com> * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress): Don't commit modifier-adorned characters. (#331369, #335796, Lin Ma and others) svn path=/trunk/; revision=17446
-rw-r--r--ChangeLog7
-rw-r--r--modules/input/gtkimcontextxim.c4
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 65f5668a2..52d957a60 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2007-03-09 Matthias Clasen <mclasen@redhat.com>
+ * modules/input/gtkimcontextxim.c
+ (gtk_im_context_xim_filter_keypress): Don't commit
+ modifier-adorned characters. (#331369, #335796, Lin Ma
+ and others)
+
+2007-03-09 Matthias Clasen <mclasen@redhat.com>
+
* Everywhere: Remove unnecessary NULL checks before
g_free(). (#369666, Morten Welinder, Djihed Afifi)
diff --git a/modules/input/gtkimcontextxim.c b/modules/input/gtkimcontextxim.c
index 00d2bfebd..addcabf14 100644
--- a/modules/input/gtkimcontextxim.c
+++ b/modules/input/gtkimcontextxim.c
@@ -728,6 +728,10 @@ gtk_im_context_xim_filter_keypress (GtkIMContext *context,
if (XFilterEvent ((XEvent *)&xevent, GDK_DRAWABLE_XID (context_xim->client_window)))
return TRUE;
+ if (event->state &
+ (gtk_accelerator_get_default_mod_mask () & ~(GDK_SHIFT_MASK | GDK_CONTROL_MASK)))
+ return FALSE;
+
again:
if (ic)
num_bytes = XmbLookupString (ic, &xevent, buffer, buffer_size, &keysym, &status);