Bug 17468

Summary: combining diacritics broken, became deadkeys
Product: xkeyboard-config Reporter: Denis Jacquerye <moyogo>
Component: GeneralAssignee: xkb
Status: RESOLVED NOTOURBUG QA Contact:
Severity: normal    
Priority: medium CC: simos.bugzilla
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Denis Jacquerye 2008-09-07 06:59:07 UTC
In Fedora 10's rawhide and Ubuntu 8.10 alpha 4 the Congo DRC layout is broken. Combining diacritics keys have somehow become deadkeys. The symbol file hasn't changed so something went wrong in the way it is interpreted.

For example, previously pressing the U+0301 key would actually produce U+0301. Now it doesn't do anything but acts as a deadkey, so if followed by a key of a character with precomposed acute accent existing that one is produced.

Ex: press ɛ key followed by U+0301 key ... nothing after ɛ
press ɛ key followed by U+0301 key and then e, the result is ɛé
What is expected is ɛ́ always.

This is serious as combining diacritics are absolutely required because strings like ɛ́ can only be represented with them.
Comment 2 Simos Xenitellis 2008-09-25 04:14:04 UTC
Let's see if GTK+ is interfering here.

Can you try

export GTK_IM_MODULE=xim
gedit

and check if the Congo layout works now in gedit?
Comment 3 Denis Jacquerye 2008-09-25 05:09:18 UTC
(In reply to comment #2)
> Let's see if GTK+ is interfering here.
> 
> Can you try
> 
> export GTK_IM_MODULE=xim
> gedit
> 
> and check if the Congo layout works now in gedit?
> 

export GTK_IM_MODULE=xim does fix it.
So it's a Gtk+ bug?
Comment 4 Simos Xenitellis 2008-09-25 07:37:07 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > Let's see if GTK+ is interfering here.
> > 
> > Can you try
> > 
> > export GTK_IM_MODULE=xim
> > gedit
> > 
> > and check if the Congo layout works now in gedit?
> > 
> 
> export GTK_IM_MODULE=xim does fix it.
> So it's a Gtk+ bug?
> 

A change that took place, and I believe it relates to this bug, is at 
http://svn.gnome.org/viewvc/gtk%2B/trunk/gtk/gtkimcontextsimple.c?view=annotate
lines 928-932.

The order of check_algorithmically() and check_compact_table() changed (check_algorithmically() was put first recently), so that issues with the compose table mess are silently bypassed.
Comment 5 Simos Xenitellis 2008-09-25 08:39:26 UTC
Denis,

Regarding workarounds for now, one option is to produce a patch for GTK+ that can be used for the OLPC now. 
Does the OLPC maintain patches on top of stable releases of libraries?
Comment 6 Simos Xenitellis 2008-09-30 12:42:56 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > (In reply to comment #2)
> > > Let's see if GTK+ is interfering here.
> > > 
> > > Can you try
> > > 
> > > export GTK_IM_MODULE=xim
> > > gedit
> > > 
> > > and check if the Congo layout works now in gedit?
> > > 
> > 
> > export GTK_IM_MODULE=xim does fix it.
> > So it's a Gtk+ bug?
> > 
> 
> A change that took place, and I believe it relates to this bug, is at 
> http://svn.gnome.org/viewvc/gtk%2B/trunk/gtk/gtkimcontextsimple.c?view=annotate
> lines 928-932.
> 
> The order of check_algorithmically() and check_compact_table() changed
> (check_algorithmically() was put first recently), so that issues with the
> compose table mess are silently bypassed.
> 

I looked deeper into the issue.

The above information regarding the specific change in the GTK+ code is not correct.

This bug was introduced in GTK+ in March 2008, when the first patch to update gtkimcontextsimple.c was committed.
There was a call at that point for testing,
http://blogs.gnome.org/simos/2008/03/05/testing-the-updated-im-support-in-gtk/
however this issue with the specific use of combining diacritics was missed.

I am planning to close this report as NOTOURBUG and open a report in GNOME Bugzilla.
Comment 7 Simos Xenitellis 2008-09-30 16:04:23 UTC
This issue has been reported to GNOME Bugzilla,
http://bugzilla.gnome.org/show_bug.cgi?id=554506

I am closing this report. Thanks Denis for reporting.
Comment 8 Sergey V. Udaltsov 2008-09-30 16:07:04 UTC
Quite an exotic case. There were loads of bugs closed in gnome as NOTGNOME, transferred here to xkeyboard-config. But this one went the opposite direction.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.