ibus/ibus-complete-preedit-signals-for-postprocesskeyevent.patch
2024-02-08 11:20:49 +00:00

72 lines
2.4 KiB
Diff

From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Tue, 5 Dec 2023 23:13:25 +0900
Subject: src: Complete preedit signals for PostProcessKeyEvent
Git-commit: 719792d300579c1bfdf43251a83c6ed4e5594c07
Patch-mainline: yes
References: boo#1218135
I forgot to implement show-preedit-text and hide-preedit-text signals
with PostProcessKeyEvent D-Bus signal in the client side.
Fixes: https://github.com/ibus/ibus/commit/e059536
BUG=https://github.com/ibus/ibus/issues/2585
---
src/ibusinputcontext.c | 33 ++++++++++++++++++++++++++-------
1 file changed, 26 insertions(+), 7 deletions(-)
--- ibus-1.5.29-rc2.orig/src/ibusinputcontext.c
+++ ibus-1.5.29-rc2/src/ibusinputcontext.c
@@ -1464,6 +1464,22 @@ ibus_input_context_fwd_text_to_delete_su
static void
+ibus_input_context_fwd_text_to_hide_preedit (IBusInputContext *context,
+ IBusText *text)
+{
+ g_signal_emit (context, context_signals[HIDE_PREEDIT_TEXT], 0, text);
+}
+
+
+static void
+ibus_input_context_fwd_text_to_show_preedit (IBusInputContext *context,
+ IBusText *text)
+{
+ g_signal_emit (context, context_signals[SHOW_PREEDIT_TEXT], 0, text);
+}
+
+
+static void
ibus_input_context_fwd_text_to_update_preedit (IBusInputContext *context,
IBusText *text,
IBusText *position,
@@ -1558,18 +1574,21 @@ ibus_input_context_post_process_key_even
case 'c':
ibus_input_context_fwd_text_to_commit (context, text);
break;
- case 'f': {
+ case 'd':
+ ibus_input_context_fwd_text_to_delete_surrounding (context, text);
+ break;
+ case 'f':
ibus_input_context_fwd_text_to_forward_key_event (context, text);
break;
- }
- case 'r': {
+ case 'h':
+ ibus_input_context_fwd_text_to_hide_preedit (context, text);
+ break;
+ case 'r':
ibus_input_context_fwd_text_to_require_surrounding (context, text);
break;
- }
- case 'd': {
- ibus_input_context_fwd_text_to_delete_surrounding (context, text);
+ case 's':
+ ibus_input_context_fwd_text_to_show_preedit (context, text);
break;
- }
case 'u':
case 'm': {
IBusText *position;