502
535
ibus_hangul_engine_hide_lookup_table (hangul);
505
} else if (keyval == IBUS_Left) {
506
ibus_lookup_table_cursor_up (hangul->table);
507
ibus_hangul_engine_update_lookup_table_ui (hangul);
509
} else if (keyval == IBUS_Right) {
510
ibus_lookup_table_cursor_down (hangul->table);
511
ibus_hangul_engine_update_lookup_table_ui (hangul);
513
} else if (keyval == IBUS_Up) {
514
ibus_lookup_table_page_up (hangul->table);
515
ibus_hangul_engine_update_lookup_table_ui (hangul);
517
} else if (keyval == IBUS_Down) {
518
ibus_lookup_table_page_down (hangul->table);
519
ibus_hangul_engine_update_lookup_table_ui (hangul);
521
538
} else if (keyval == IBUS_Page_Up) {
522
ibus_lookup_table_page_up (hangul->table);
523
ibus_hangul_engine_update_lookup_table_ui (hangul);
539
ibus_lookup_table_page_up (hangul->table);
540
ibus_hangul_engine_update_lookup_table_ui (hangul);
525
542
} else if (keyval == IBUS_Page_Down) {
526
ibus_lookup_table_page_down (hangul->table);
527
ibus_hangul_engine_update_lookup_table_ui (hangul);
543
ibus_lookup_table_page_down (hangul->table);
544
ibus_hangul_engine_update_lookup_table_ui (hangul);
547
if (lookup_table_orientation == 0) {
549
if (keyval == IBUS_Left) {
550
ibus_lookup_table_cursor_up (hangul->table);
551
ibus_hangul_engine_update_lookup_table_ui (hangul);
553
} else if (keyval == IBUS_Right) {
554
ibus_lookup_table_cursor_down (hangul->table);
555
ibus_hangul_engine_update_lookup_table_ui (hangul);
557
} else if (keyval == IBUS_Up) {
558
ibus_lookup_table_page_up (hangul->table);
559
ibus_hangul_engine_update_lookup_table_ui (hangul);
561
} else if (keyval == IBUS_Down) {
562
ibus_lookup_table_page_down (hangul->table);
563
ibus_hangul_engine_update_lookup_table_ui (hangul);
568
if (keyval == IBUS_Left) {
569
ibus_lookup_table_page_up (hangul->table);
570
ibus_hangul_engine_update_lookup_table_ui (hangul);
572
} else if (keyval == IBUS_Right) {
573
ibus_lookup_table_page_down (hangul->table);
574
ibus_hangul_engine_update_lookup_table_ui (hangul);
576
} else if (keyval == IBUS_Up) {
577
ibus_lookup_table_cursor_up (hangul->table);
578
ibus_hangul_engine_update_lookup_table_ui (hangul);
580
} else if (keyval == IBUS_Down) {
581
ibus_lookup_table_cursor_down (hangul->table);
582
ibus_hangul_engine_update_lookup_table_ui (hangul);
531
588
if (!hangul->hanja_mode) {
532
if (keyval == IBUS_h) {
533
ibus_lookup_table_cursor_up (hangul->table);
534
ibus_hangul_engine_update_lookup_table_ui (hangul);
536
} else if (keyval == IBUS_l) {
537
ibus_lookup_table_cursor_down (hangul->table);
538
ibus_hangul_engine_update_lookup_table_ui (hangul);
540
} else if (keyval == IBUS_k) {
541
ibus_lookup_table_page_up (hangul->table);
542
ibus_hangul_engine_update_lookup_table_ui (hangul);
544
} else if (keyval == IBUS_j) {
545
ibus_lookup_table_page_down (hangul->table);
546
ibus_hangul_engine_update_lookup_table_ui (hangul);
589
if (lookup_table_orientation == 0) {
591
if (keyval == IBUS_h) {
592
ibus_lookup_table_cursor_up (hangul->table);
593
ibus_hangul_engine_update_lookup_table_ui (hangul);
595
} else if (keyval == IBUS_l) {
596
ibus_lookup_table_cursor_down (hangul->table);
597
ibus_hangul_engine_update_lookup_table_ui (hangul);
599
} else if (keyval == IBUS_k) {
600
ibus_lookup_table_page_up (hangul->table);
601
ibus_hangul_engine_update_lookup_table_ui (hangul);
603
} else if (keyval == IBUS_j) {
604
ibus_lookup_table_page_down (hangul->table);
605
ibus_hangul_engine_update_lookup_table_ui (hangul);
610
if (keyval == IBUS_h) {
611
ibus_lookup_table_page_up (hangul->table);
612
ibus_hangul_engine_update_lookup_table_ui (hangul);
614
} else if (keyval == IBUS_l) {
615
ibus_lookup_table_page_down (hangul->table);
616
ibus_hangul_engine_update_lookup_table_ui (hangul);
618
} else if (keyval == IBUS_k) {
619
ibus_lookup_table_cursor_up (hangul->table);
620
ibus_hangul_engine_update_lookup_table_ui (hangul);
622
} else if (keyval == IBUS_j) {
623
ibus_lookup_table_cursor_down (hangul->table);
624
ibus_hangul_engine_update_lookup_table_ui (hangul);
824
927
gpointer res = g_object_get_data (G_OBJECT(table), "visible");
825
928
return GPOINTER_TO_UINT(res);
932
key_event_list_set (GArray* list, const char* str)
934
gchar** items = g_strsplit(str, ",", 0);
936
g_array_set_size(list, 0);
940
for (i = 0; items[i] != NULL; ++i) {
944
res = ibus_key_event_from_string(items[i], &keyval, &modifiers);
946
struct KeyEvent ev = { keyval, modifiers };
947
g_array_append_val(list, ev);
955
key_event_list_match(GArray* list, guint keyval, guint modifiers)
960
/* ignore capslock and numlock */
961
mask = IBUS_SHIFT_MASK |
969
for (i = 0; i < list->len; ++i) {
970
struct KeyEvent* ev = &g_array_index(list, struct KeyEvent, i);
971
if (ev->keyval == keyval && ev->modifiers == modifiers) {