Bug 481095

Summary: ibus-anthy: pre-edit sometimes gets stuck
Product: [Fedora] Fedora Reporter: Warren Togami <wtogami>
Component: ibus-anthyAssignee: Peng Huang <phuang>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 10CC: phuang
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-02-05 02:12:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 481098    

Description Warren Togami 2009-01-22 04:35:43 UTC
ibus-0.1.1.20081023-2.fc10.x86_64
ibus-anthy-0.1.1.20080912-1.fc10.x86_64
gtk2-2.14.5-3.fc10.x86_64
glib2-2.18.3-2.fc10.x86_64

Often the state of the preedit gets stuck.  It seems to be timing related.

The most easy to reproduce case involves deletion.

1. Run gedit (also reproduced in pidgin and firefox).
2. Use scim-anthy.
3. Type "nihongo" but do not hit SPACE or ENTER.  Typos are OK.  Vary your typing timing.
4. Hit Delete to erase all of the pre-edit text.
5. Goto Step #3.

Eventually you will get to a state where the Delete button fails to delete some of the pre-edit buffer.  If you enter a new character into pre-edit, then Delete is able to delete all characters.

==== FIREFOX VARIATION =====
There are variations of this where pre-edit behavior gets stuck in such a way that no typing, SPACE or ENTER responds anymore.  CTRL-Space trigger to deactivate and activate it again is the only way to recover.

1. Go into a text box in firefox like this Bugzilla form.
2. Type "nihonn" quickly, hesitate a moment.
3. Type "go"
4. Quickly hit the Delete key a few times to attempt to erase the pre-edit buffer.
5. If you got the timing just right, it gets fully stuck needing the trigger to recover.

Comment 1 Warren Togami 2009-02-03 03:06:51 UTC
ibus-0.1.1.20090203-1.fc10.x86_64
ibus-gtk-0.1.1.20090203-1.fc10.x86_64
ibus-qt-0.1.1.20090203-1.fc10.x86_64
ibus-anthy-0.1.1.20080912-1.fc10.x86_64

pidgin variation when I hit Delete on Step 4.  No crash, but pre-edit is stuck and this prints to the console.

(pidgin:5501): IBUS-WARNING **: Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/dbus/service.py", line 702, in _message_cb
    retval = candidate_method(self, *args, **keywords)
  File "/usr/lib/python2.5/site-packages/ibus/engine.py", line 149, in ProcessKeyEvent
    return self.__engine.process_key_event(keyval, is_press, state)
  File "/usr/share/ibus-anthy/engine/engine.py", line 250, in process_key_event
    return self.__on_key_back_space()
  File "/usr/share/ibus-anthy/engine/engine.py", line 553, in __on_key_back_space
    self.__preedit_ja_string.remove_before()
  File "/usr/share/ibus-anthy/engine/jastring.py", line 69, in remove_before
    segment.pop()
  File "/usr/share/ibus-anthy/engine/romaji.py", line 138, in pop
    raise IndexError("Out of bound")
IndexError: Out of bound

Comment 2 Peng Huang 2009-02-03 07:13:41 UTC
Fixed in ibus-anthy-0.1.1.20090203. Please test it.
You could download rpms from http://koji.fedoraproject.org/koji/buildinfo?buildID=81299

Comment 3 Fedora Update System 2009-02-05 02:12:31 UTC
ibus-anthy-0.1.1.20090203-1.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.