Author: ek.kato
Date: Mon Jan 5 17:12:14 2009
New Revision: 5692
Modified:
uim-chewing-trunk/NEWS
uim-chewing-trunk/src/chewing.c
Log:
* NEWS : Update.
* src/chewing.c : Fix candidate window behavior with 'J' and 'K'
keys in selection mode.
Modified: uim-chewing-trunk/NEWS
==============================================================================
--- uim-chewing-trunk/NEWS (original)
+++ uim-chewing-trunk/NEWS Mon Jan 5 17:12:14 2009
@@ -1,6 +1,11 @@
Overview of changes from 0.0.3.x to 0.0.4
==
-* Support API of libchewing = 0.3.2
+* New
+ * Support API of libchewing = 0.3.2
+
+* Fix
+ * Fix candidate window behavior with 'J' and 'K' keys in
+ selection mode.
Overview of changes from 0.0.3.1 to 0.0.3.2
Modified: uim-chewing-trunk/src/chewing.c
==============================================================================
--- uim-chewing-trunk/src/chewing.c (original)
+++ uim-chewing-trunk/src/chewing.c Mon Jan 5 17:12:14 2009
@@ -63,6 +63,7 @@
ChewingContext *cc;
int slot_id;
int prev_page;
+ int prev_cursor;
int has_active_candwin;
} uim_chewing_context;
@@ -176,6 +177,7 @@
if (ucc) {
ucc->cc = chewing_new();
ucc->prev_page = -1;
+ ucc->prev_cursor = -1;
ucc->has_active_candwin = 0;
}
@@ -394,7 +396,7 @@
n_page = chewing_cand_TotalPage(cc);
page_no = chewing_cand_CurrentPage(cc);
if (!chewing_cand_CheckDone(cc) && n_page != 0) {
- if (page_no == 0 && ucc->prev_page == -1) {
+ if (page_no == 0 && ucc->prev_page == -1 || ucc->prev_cursor !=
cursor_pos) {
activate_candwin(ucc);
ucc->has_active_candwin = 1;
} else if ((page_no == ucc->prev_page + 1) ||
@@ -417,6 +419,7 @@
ucc->prev_page = -1;
ucc->has_active_candwin = 0;
}
+ ucc->prev_cursor = cursor_pos;
/* msgs */
buf_len = 0;