Bug 493706 - [PATCH] ibus-hangul Hanja arrow keys are wrong
Summary: [PATCH] ibus-hangul Hanja arrow keys are wrong
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:
Blocks: 481098
TreeView+ depends on / blocked
Reported: 2009-04-02 18:47 UTC by Warren Togami
Modified: 2009-04-13 18:58 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2009-04-13 18:58:32 UTC

Attachments (Terms of Use)

Description Warren Togami 2009-04-02 18:47:03 UTC

Currently candidate selection arrow key behavior is wrong.  Up/Down and Left/Right need to be swapped respectively.

Vertical Current Behavior
* Up/Down arrows switch to the next page of candidates.
* Left/Right arrows select candidates on the current page.
* PgUp/PgDn switch to the next page of candidates.

Vertical Expected Behavior
* Up/Down arrows select candidates on the current page.
* Left/Right arrows switch to the next page of candidates.
* PgUp/PgDn switch to the next page of candidates.

Similarly candidate selection when ibus-hangul is in horizontal mode is backwards.

Comment 1 Warren Togami 2009-04-06 21:14:29 UTC
This patch makes it behave properly for Vertical candidate selection mode, which is the only mode that matters.  Windows has only vertical mode.  MacOS defaults to vertical but has a horizontal option.  Separate Bug #493687 would make our ibus-hangul default to vertical mode.

--- ibus-hangul-	2009-04-06 16:21:46.663081165 -0400
+++ ibus-hangul-	2009-04-06 16:50:00.163321101 -0400
@@ -384,19 +384,19 @@
 	ibus_hangul_engine_commit_current_candidate (hangul);
         ibus_hangul_engine_close_lookup_table (hangul);
-    } else if (keyval == IBUS_Left) {
+    } else if (keyval == IBUS_Up) {
         ibus_lookup_table_cursor_up (hangul->table);
         ibus_hangul_engine_update_lookup_table (hangul);
         ibus_hangul_engine_update_auxiliary_text (hangul);
-    } else if (keyval == IBUS_Right) {
+    } else if (keyval == IBUS_Down) {
         ibus_lookup_table_cursor_down (hangul->table);
         ibus_hangul_engine_update_lookup_table (hangul);
         ibus_hangul_engine_update_auxiliary_text (hangul);
-    } else if (keyval == IBUS_Up) {
+    } else if (keyval == IBUS_Left) {
         ibus_lookup_table_page_up (hangul->table);
         ibus_hangul_engine_update_lookup_table (hangul);
         ibus_hangul_engine_update_auxiliary_text (hangul);
-    } else if (keyval == IBUS_Down) {
+    } else if (keyval == IBUS_Right) {
         ibus_lookup_table_page_down (hangul->table);
         ibus_hangul_engine_update_lookup_table (hangul);
         ibus_hangul_engine_update_auxiliary_text (hangul);

Comment 2 Peng Huang 2009-04-07 04:47:25 UTC
It is better to submit this patch to author of ibus-hangul.

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