diff options
author | Rémi Cardona <remi@gentoo.org> | 2008-10-01 21:49:03 +0000 |
---|---|---|
committer | Rémi Cardona <remi@gentoo.org> | 2008-10-01 21:49:03 +0000 |
commit | c16cca5be62610bb78d4ae8bfcc1ad8bb9f8a1b9 (patch) | |
tree | 8701ca98995d242b96e2326e0a0024355689bc41 /x11-libs/gtk+/files | |
parent | Automated update of use.local.desc (diff) | |
download | gentoo-2-c16cca5be62610bb78d4ae8bfcc1ad8bb9f8a1b9.tar.gz gentoo-2-c16cca5be62610bb78d4ae8bfcc1ad8bb9f8a1b9.tar.bz2 gentoo-2-c16cca5be62610bb78d4ae8bfcc1ad8bb9f8a1b9.zip |
x11-libs/gtk+: fix broken diacritics on intl keyboards (see gnome bug #554192)
(Portage version: 2.2_rc11/cvs/Linux 2.6.25-gentoo-r3 i686)
Diffstat (limited to 'x11-libs/gtk+/files')
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.14.3-fix-combining-broken-diacritics.patch | 26 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-2.14.3-reorder-compose-key-table-order.patch | 20 |
2 files changed, 46 insertions, 0 deletions
diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-fix-combining-broken-diacritics.patch b/x11-libs/gtk+/files/gtk+-2.14.3-fix-combining-broken-diacritics.patch new file mode 100644 index 000000000000..40db2ef1957d --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.14.3-fix-combining-broken-diacritics.patch @@ -0,0 +1,26 @@ +Index: gtk/gtkimcontextsimple.c +=================================================================== +--- gtk/gtkimcontextsimple.c (revision 21556) ++++ gtk/gtkimcontextsimple.c (revision 21557) +@@ -407,11 +407,19 @@ + return FALSE; + } + +-/* When updating the table of the compose sequences, also update here. ++/* Checks if a keysym is a dead key. Dead key keysym values are defined in ++ * ../gdk/gdkkeysyms.h and the first is GDK_dead_grave. As X.Org is updated, ++ * more dead keys are added and we need to update the upper limit. ++ * Also checks if the keysym belongs to the non-spacing mark Unicode category, ++ * by invoking gdk_keyval_to_unicode(). For keysyms like 0x1000000 + 0x0301, ++ * it converts them to 0x301, which makes g_unichar_type() report them as ++ * non-spacing mark. Thus, we check that the value is less then 0x1000000. ++ * check_algorithmically() does not handle keysyms > 0x1000000. + */ + #define IS_DEAD_KEY(k) \ + (((k) >= GDK_dead_grave && (k) <= (GDK_dead_dasia+1)) || \ +- g_unichar_type (gdk_keyval_to_unicode (k)) == G_UNICODE_NON_SPACING_MARK) ++ ((g_unichar_type (gdk_keyval_to_unicode (k)) == G_UNICODE_NON_SPACING_MARK) && \ ++ ((k) < 0x1000000))) + + static gboolean + check_algorithmically (GtkIMContextSimple *context_simple, diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-reorder-compose-key-table-order.patch b/x11-libs/gtk+/files/gtk+-2.14.3-reorder-compose-key-table-order.patch new file mode 100644 index 000000000000..dd098e9cc52b --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.14.3-reorder-compose-key-table-order.patch @@ -0,0 +1,20 @@ +Index: gtk/gtkimcontextsimple.c +=================================================================== +--- gtk/gtkimcontextsimple.c (revision 21564) ++++ gtk/gtkimcontextsimple.c (working copy) +@@ -933,12 +933,12 @@ + return TRUE; + tmp_list = tmp_list->next; + } +- +- if (check_algorithmically (context_simple, n_compose)) +- return TRUE; + + if (check_compact_table (context_simple, >k_compose_table_compact, n_compose)) + return TRUE; ++ ++ if (check_algorithmically (context_simple, n_compose)) ++ return TRUE; + } + + /* The current compose_buffer doesn't match anything */ |