void _fcitx_im_context_connect_cb(FcitxIMClient* client, void* user_data) { FcitxIMContext* context = FCITX_IM_CONTEXT(user_data); if (IsFcitxIMClientValid(client)) { FcitxIMClientConnectSignal(client, G_CALLBACK(_fcitx_im_context_enable_im_cb), G_CALLBACK(_fcitx_im_context_close_im_cb), G_CALLBACK(_fcitx_im_context_commit_string_cb), G_CALLBACK(_fcitx_im_context_forward_key_cb), G_CALLBACK(_fcitx_im_context_update_preedit_cb), context, NULL); _fcitx_im_context_set_capacity(context); } }
void _fcitx_fbterm_connect_cb(FcitxIMClient* client, void* user_data) { if (IsFcitxIMClientValid(client)) { FcitxIMClientConnectSignal(client, G_CALLBACK(_fcitx_fbterm_enable_im_cb), G_CALLBACK(_fcitx_fbterm_close_im_cb), G_CALLBACK(_fcitx_fbterm_commit_string_cb), G_CALLBACK(_fcitx_fbterm_forward_key_cb), G_CALLBACK(_fcitx_fbterm_update_client_side_ui_cb), user_data, NULL); CapacityFlags flags = CAPACITY_CLIENT_SIDE_UI; FcitxIMClientSetCapacity(client, flags); if (active) { FcitxIMClientFocusIn(client); FcitxIMClientEnableIC(client); } } }