Bug 494445 - ibus-hangul missing Hangul Han/En mode (and Alt_R+release hotkey)
Summary: ibus-hangul missing Hangul Han/En mode (and Alt_R+release hotkey)
Alias: None
Product: Fedora
Classification: Fedora
Component: ibus-hangul
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Peng Huang
QA Contact: Fedora Extras Quality Assurance
Depends On: 495431
Blocks: F11Target 481098
TreeView+ depends on / blocked
Reported: 2009-04-06 21:34 UTC by Warren Togami
Modified: 2009-04-15 00:10 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2009-04-15 00:10:13 UTC

Attachments (Terms of Use)

Description Warren Togami 2009-04-06 21:34:01 UTC

Currently ibus-hangul does nothing if you press the Han/En button (Korean layout) or right-Alt.  Users expect this to flip between Hangul and English input mode without dismissing the language bar.

This is arguably the most used Korean button, so proposing for F11Blocker.

Comment 1 Jens Petersen 2009-04-09 05:55:40 UTC
I think we can add the Han/En as a global hotkey for f11.

Hopefully we do more for f12.

Warren, can you find out the keysym?

Comment 2 Jens Petersen 2009-04-09 05:57:13 UTC
Though that would just duplicate the Hangul key hotkey?

Comment 3 Warren Togami 2009-04-09 20:29:11 UTC
Adding "Alt_R" to the list of ibus global hotkeys makes this work, although you need to restart ibus for it to take effect.

Hangul button, KO layout, KO keyboard:
    state 0x10, keycode 130 (keysym 0xff31, Hangul), same_screen YES,
Alt_R button,  KO layout, KO keyboard:
    state 0x18, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,
Alt_R button, US layout,  US keyboard:
    state 0x10, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,
Alt_R button, JP layout,  JP keyboard:
    state 0x10, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,

Just do it.  Not ideal, but it will work.

Comment 4 Peng Huang 2009-04-13 08:02:23 UTC
Using Alt_R press key event as trigger will conflict some menu keyboard shortcut. Like: Alt-F for file menu. We can only use Alt_R release key event (Release + Alt_R)as the trigger. But it still has a problem.
Please consider the below case.
When user press Alt+F, ibus will receive events like Alt_R press, F press, F release, Alt release.  In this case, we should consider the last Alt release event as trigger hotkey. IBus use below logic to check this case.

if (modifier & ReleaseMask) and (keyval == previous_keyval == Key_XX) then
    do trigger

This logic works for most keys with release modifier except the Alt. When alt is pressed, the follow key events will not be sent to ibus. (For Alt+F, ibus only get two event, Alt_R press and Alt_R release, The F key event s are stolen ). I guess the gtk filters key events with Alt modifier. So ibus can not handle it correctly.

Comment 5 Warren Togami 2009-04-14 05:12:42 UTC
The bug where Alt + Release isn't detected is filed separately in Bug #495431.

Comment 6 Jens Petersen 2009-04-14 05:36:19 UTC
I am moving this to F11Target since the En mode won't land in time for F11 freeze.

Comment 7 Peng Huang 2009-04-15 00:10:13 UTC
Fixed in ibus-1_1_0_20090413-3_fc11

Note You need to log in before you can comment on or make changes to this bug.