void show_in_win(ClientState *cs) { if (!cs) { #if 0 dbg("show_in_win: ic is null"); #endif return; } switch (current_method_type()) { case method_type_PHO: show_win_pho(); break; #if USE_TSIN case method_type_TSIN: show_win0(); break; #endif case method_type_MODULE: if (!module_cb1(cs)) return; module_cb1(cs)->module_show_win(); break; default: show_win_gtab(); show_input_method_name_on_gtab(); break; } #if 0 show_win_stautus(); #endif }
void move_in_win(ClientState *cs, int x, int y) { check_CS(); if (current_CS && current_CS->fixed_pos) { x = current_CS->fixed_x; y = current_CS->fixed_y; } else if (hime_input_style == InputStyleRoot) { x = hime_root_x; y = hime_root_y; } #if 0 dbg("move_in_win %d %d\n",x, y); #endif #if 0 if (current_in_win_x == x && current_in_win_y == y) return; #endif current_in_win_x = x ; current_in_win_y = y; switch (current_method_type()) { case method_type_PHO: move_win_pho(x, y); break; #if USE_TSIN case method_type_TSIN: move_win0(x, y); break; #endif case method_type_MODULE: if (inmd[cs->in_method].mod_cb_funcs) module_cb1(cs)->module_move_win(x, y); break; default: if (!cs->in_method) return; move_win_gtab(x, y); } }
void hide_in_win(ClientState *cs) { if (!cs) { #if 0 dbg("hide_in_win: ic is null\n"); #endif return; } #if 0 dbg("hide_in_win %d\n", ic->in_method); #endif if (timeout_handle) { g_source_remove(timeout_handle); timeout_handle = 0; } switch (current_method_type()) { case method_type_PHO: hide_win_pho(); break; #if USE_TSIN case method_type_TSIN: // flush_tsin_buffer(); hide_win0(); break; #endif case method_type_MODULE: if (inmd[cs->in_method].mod_cb_funcs) module_cb1(cs)->module_hide_win(); break; default: hide_win_gtab(); } reset_current_in_win_xy(); }
HIME_module_callback_functions *module_cb() { if (!current_CS) return NULL; return module_cb1(current_CS); }