[SRU] Add XIM Support to Nux

Bug #1043627 reported by Brandon Schaefer
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Nux
Fix Released
High
Brandon Schaefer
2.0
Fix Committed
High
Brandon Schaefer
Unity
Fix Released
High
Brandon Schaefer
5.0
Fix Committed
Undecided
Unassigned
nux (Ubuntu)
Confirmed
Undecided
Unassigned
Nominated for Precise by Timo Jyrinki
Quantal
Won't Fix
Undecided
Unassigned
Raring
Won't Fix
Undecided
Unassigned
unity (Ubuntu)
Fix Released
Undecided
Brandon Schaefer
Nominated for Precise by Timo Jyrinki
Quantal
Won't Fix
Undecided
Unassigned
Raring
Won't Fix
Undecided
Brandon Schaefer

Bug Description

[Impact]

As 12.04 is an LTS, many users decide to stay with that version until the next LTS version is available. Many of those users require different input methods to comfortably input characters in their language. We do support IBus for some of the languages, but others are still using XIM as the input framework. Those users cannot input in their language using their standard input methods. This means using the Dash and HUD is much more troublesome or even impossible in normal cases.

We think that even though it is essentially a new feature, it can be thought that the lack of support for non-IBus additional input methods is a bug in a way.
It is a big change, but with proper testing, we would ensure that the addition does not introduce any new regressions.

This addition would make many MANY users happy, which can be seen at least by the number of affected people in LP: #983254.

Also, the change is needed by OEM. It is a big change, but it's crucial for CJK - Kyrlin has voiced the proposition to use fctix as the default input method, which _needs_ XIM support in Nux and Unity.

[Test Case]

1. Install fctix-pinyin
2. Run im-config and enable fctix as the default IM
3. Reboot your machine
4. Open the dash and input non-latin characters using fctix
   -> Non latin characters (Chinese in this case) should appear on screen.

[Regression Potential]

In an impossible scenariu, broken IBus input or input in overall in Nux input fields.
The good thing about the XIM support is that it's rather isolated, so potential breakage of the XIM code won't impact normal Nux workflow. Just XIM input might not work.

The author of the code, Brandon, also mentions that new regression potential is low as the XIM code is not being used by default. As XIM is not the default, when IBus is present - without explicitly setting XIM in im-config, the XIM parts are not even accessed.

[Other Info]

The same functionality is already available in the newer Unity releases.

Original description:

Right now the only input method (IM) that works with Unity/Nux is IBus. This means anyone who uses a different IM would have to switch to IBus in order to type in their language.

This is something that needs to be fixed and will make Unity/Nux friendlier to those who use different IMs. If you do not use an IM then this will not affect you.

XIM was the very first IM framework for the X window system, which means most IMs are supported by it.

A List of IMs that will be supported by this branch (There could be more):
http://en.wikipedia.org/wiki/List_of_input_methods_for_UNIX_platforms

All of those under XIM will now work in Unity and Nux with this branch.

Related branches

affects: compiz (Ubuntu) → nux (Ubuntu)
description: updated
Changed in nux (Ubuntu):
status: New → Confirmed
Changed in unity:
status: New → Confirmed
Tim Penhey (thumper)
Changed in nux:
status: New → In Progress
Changed in unity:
status: Confirmed → In Progress
Changed in nux:
importance: Undecided → High
Changed in unity:
importance: Undecided → High
Changed in nux:
assignee: nobody → Brandon Schaefer (brandontschaefer)
Changed in unity:
assignee: nobody → Brandon Schaefer (brandontschaefer)
Changed in unity:
status: In Progress → Fix Committed
milestone: none → 6.6
Revision history for this message
Sebastien Bacher (seb128) wrote :

hum, is it wise to commit features before having the FFE approved? what will you do if the exception is not approved? block everything else in unity?

Revision history for this message
Brandon Schaefer (brandontschaefer) wrote :

All the code that has landed in unity will not cause any problems if this FFe isn't approved. Right now there is just an AP test that will skip if the environment isn't correct (Which will likely always be true unless you are trying to test it). It is approved to merge in Nux but has not yet landed.

So if this does get rejected there will be no side effects/problems for unity.

Revision history for this message
Sebastien Bacher (seb128) wrote :

@Brandon: it's not how things work, if the FFe is not approved no unity update include that code will land in Ubuntu so you will need to get that reverted, the FFe is not only about getting new features used or not it's also about minimizing code changes to reduce the chance of having new bugs introduced somewhere in the source

Revision history for this message
Łukasz Zemczak (sil2100) wrote :

The release team decided that this feature should be postponed till 13.04 sadly. As I already commented in the nux merge proposal - I would create a PPA with this feature in it for people to test. Some from https://bugs.launchpad.net/nux/+bug/983254 would probably interested in testing this.

Sorry about that.

Iain Lane (laney)
Changed in nux (Ubuntu):
milestone: none → later
Changed in unity (Ubuntu):
milestone: none → later
Changed in unity:
milestone: 6.6 → 7.0
Revision history for this message
Kate Stewart (kate.stewart) wrote :

targetted to series to make explicit not included for Quantal.

Changed in nux (Ubuntu Quantal):
status: Confirmed → Won't Fix
Changed in unity (Ubuntu Quantal):
status: New → Won't Fix
milestone: later → none
Changed in nux (Ubuntu Quantal):
milestone: later → none
Omer Akram (om26er)
no longer affects: unity/6.0
Changed in unity:
milestone: 7.0 → 6.6
Changed in unity:
status: Fix Committed → Fix Released
Revision history for this message
Brandon Schaefer (brandontschaefer) wrote :

It seems confusing that unity has a Fix Released for it when it clearly wont work....Im changing it back to confirmed until the code has landed in Nux (4.0) and works in unity...

Changed in unity:
status: Fix Released → Confirmed
Changed in unity:
milestone: 6.6 → 7.0.0
Changed in nux:
status: In Progress → Fix Committed
Changed in unity:
status: Confirmed → Fix Committed
Changed in unity (Ubuntu Raring):
status: New → Fix Committed
assignee: nobody → Brandon Schaefer (brandontschaefer)
Changed in nux:
milestone: none → 4.0
summary: - [FFe] Add XIM Support to Nux
+ Add XIM Support to Nux
Revision history for this message
Stephen M. Webb (bregma) wrote : Re: Add XIM Support to Nux

Fix Released in Unity Unity 7.0.0 "R series".

Changed in unity:
status: Fix Committed → Fix Released
Revision history for this message
Stephen M. Webb (bregma) wrote :

Fix Released in Nux Nux 4.0.0.

Changed in nux:
status: Fix Committed → Fix Released
description: updated
description: updated
description: updated
description: updated
description: updated
summary: - Add XIM Support to Nux
+ [SRU] Add XIM Support to Nux
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Attaching diff files for the nux and unity patches needed for precise SRU.

Revision history for this message
Łukasz Zemczak (sil2100) wrote :
Changed in unity (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Rolf Leggewie (r0lf) wrote :

raring has seen the end of its life and is no longer receiving any updates. Marking the raring task for this ticket as "Won't Fix".

Changed in nux (Ubuntu Raring):
status: Confirmed → Won't Fix
Changed in unity (Ubuntu Raring):
status: Fix Committed → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.