public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Takao Fujiwara <tfujiwar@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/ibus] autotool: Bump to 1.5.29-rc2
Date: Sun, 31 May 2026 02:08:20 GMT [thread overview]
Message-ID: <178019330056.1.6367872677151966429.rpms-ibus-a8977474819d@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/ibus
Branch : autotool
Commit : a8977474819da82e0a38a497ddea86ca57ef8857
Author : Takao Fujiwara <tfujiwar@redhat.com>
Date : 2023-11-09T15:55:06+09:00
Stats : +7/-721 in 4 file(s)
URL : https://src.fedoraproject.org/rpms/ibus/c/a8977474819da82e0a38a497ddea86ca57ef8857?branch=autotool
Log:
Bump to 1.5.29-rc2
---
diff --git a/.gitignore b/.gitignore
index f718444..415a7e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -66,3 +66,4 @@ ibus-1.3.6.tar.gz
/ibus-1.5.29-beta1.tar.gz
/ibus-1.5.29-beta2.tar.gz
/ibus-1.5.29-rc1.tar.gz
+/ibus-1.5.29-rc2.tar.gz
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index a72a0a4..4f8febb 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -1,33 +1,3 @@
-From f44e4e35cf477bbd757dd6a6c657a8699eb41ca6 Mon Sep 17 00:00:00 2001
-From: fujiwarat <takao.fujiwara1@gmail.com>
-Date: Sat, 30 Sep 2023 09:48:07 +0900
-Subject: [PATCH] autogen: Revert DNF for Fedora 39
-
-Seems DNF5 is deleted by default.
-
-Fixes: https://github.com/ibus/ibus/commit/f05c12d
-
-BUG=https://github.com/ibus/ibus/pull/2569
----
- autogen.sh | 2 +-
- 2 files changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/autogen.sh b/autogen.sh
-index 05682f47..d6f8f983 100755
---- a/autogen.sh
-+++ b/autogen.sh
-@@ -47,7 +47,7 @@ cd "$srcdir"
- rpm -q $FEDORA_PKG1 || exit 1
- rpm -q $FEDORA_PKG2 || exit 1
- rpm -q $FEDORA_PKG3 || exit 1
-- (grep -qE '37|38' /etc/fedora-release) && DNF=dnf || DNF=dnf5
-+ DNF=dnf
- $DNF update --assumeno $FEDORA_PKG1 || exit 1
- $DNF update --assumeno $FEDORA_PKG2 || exit 1
- $DNF update --assumeno $FEDORA_PKG3 || exit 1
---
-2.41.0
-
From db829f4aee399e5472bd55dc630a94425e72bacd Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Sat, 30 Sep 2023 09:51:43 +0900
@@ -1237,691 +1207,3 @@ index fe4cab45..10190921 100644
--
2.41.0
-From 7431ac25bbbbe0d88eec6a241d7a35921c73bd01 Mon Sep 17 00:00:00 2001
-From: fujiwarat <takao.fujiwara1@gmail.com>
-Date: Fri, 29 Sep 2023 22:57:27 +0900
-Subject: [PATCH] client/wayland: Translate keycodes with CapsLock
-
-Fix CapsLock and some Latin characters with fr(azerty) layout in
-Plasma Wayland.
-
-BUG=https://github.com/ibus/ibus/pull/2568
----
- client/wayland/ibuswaylandim.c | 9 +--------
- 1 file changed, 1 insertion(+), 8 deletions(-)
-
-diff --git a/client/wayland/ibuswaylandim.c b/client/wayland/ibuswaylandim.c
-index ffc20de1..e3aae3d4 100644
---- a/client/wayland/ibuswaylandim.c
-+++ b/client/wayland/ibuswaylandim.c
-@@ -840,8 +840,6 @@ input_method_keyboard_key (void *data,
- IBusWaylandIMPrivate *priv;
- IBusWaylandKeyEvent event = { 0, };
- uint32_t code;
-- uint32_t num_syms;
-- const xkb_keysym_t *syms;
-
- g_return_if_fail (IBUS_IS_WAYLAND_IM (wlim));
- priv = ibus_wayland_im_get_instance_private (wlim);
-@@ -862,12 +860,7 @@ input_method_keyboard_key (void *data,
- event.key = key;
- event.state = state;
- code = key + 8;
-- num_syms = xkb_key_get_syms (priv->state, code, &syms);
--
-- event.sym = XKB_KEY_NoSymbol;
-- if (num_syms == 1)
-- event.sym = syms[0];
--
-+ event.sym = xkb_state_key_get_one_sym (priv->state, code);
- event.modifiers = priv->modifiers;
- if (state == WL_KEYBOARD_KEY_STATE_RELEASED)
- event.modifiers |= IBUS_RELEASE_MASK;
---
-2.41.0
-
-From f176569cf774f87b23270257da68249dcda837c9 Mon Sep 17 00:00:00 2001
-From: fujiwarat <takao.fujiwara1@gmail.com>
-Date: Wed, 18 Oct 2023 16:57:28 +0900
-Subject: [PATCH] src: Add DeleteSurroundingText to PostProcessKeyEvent
-
-DeleteSurroundingText also can be delayed sending to IBus clients.
-Now surrounding D-Bus methods are added to PostProcessKeyEvent.
-
-Fixes: https://github.com/ibus/ibus/commit/38f09c6
-
-BUG=https://github.com/ibus/ibus/issues/2570
----
- bus/inputcontext.c | 33 +++++++++++++++++++++++++++++++--
- src/ibusinputcontext.c | 23 +++++++++++++++++++++++
- 2 files changed, 54 insertions(+), 2 deletions(-)
-
-diff --git a/bus/inputcontext.c b/bus/inputcontext.c
-index aecc64f8..64430fe4 100644
---- a/bus/inputcontext.c
-+++ b/bus/inputcontext.c
-@@ -2382,7 +2382,7 @@ _engine_forward_key_event_cb (BusEngineProxy *engine,
- g_assert (context->queue_during_process_key_event);
-
- if (context->processing_key_event && g_queue_get_length (
-- context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-+ context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
- SyncForwardingData *data;
- IBusText *text = ibus_text_new_from_printf ("%u,%u,%u",
- keyval, keycode, state);
-@@ -2420,6 +2420,21 @@ _engine_delete_surrounding_text_cb (BusEngineProxy *engine,
-
- g_assert (context->engine == engine);
-
-+ if (context->processing_key_event && g_queue_get_length (
-+ context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-+ SyncForwardingData *data;
-+ IBusText *text = ibus_text_new_from_printf ("%d,%u",
-+ offset_from_cursor, nchars);
-+ if (g_queue_get_length (context->queue_during_process_key_event)
-+ == MAX_SYNC_DATA) {
-+ g_warning ("Exceed max number of sync process_key_event data");
-+ }
-+ data = g_slice_new (SyncForwardingData);
-+ data->key = 'd';
-+ data->text = g_object_ref (text);
-+ g_queue_push_tail (context->queue_during_process_key_event, data);
-+ return;
-+ }
- bus_input_context_emit_signal (context,
- "DeleteSurroundingText",
- g_variant_new ("(iu)",
-@@ -2442,6 +2457,20 @@ _engine_require_surrounding_text_cb (BusEngineProxy *engine,
-
- g_assert (context->engine == engine);
-
-+ if (context->processing_key_event && g_queue_get_length (
-+ context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-+ SyncForwardingData *data;
-+ IBusText *text = ibus_text_new_from_static_string ("");
-+ if (g_queue_get_length (context->queue_during_process_key_event)
-+ == MAX_SYNC_DATA) {
-+ g_warning ("Exceed max number of post process_key_event data");
-+ }
-+ data = g_slice_new (SyncForwardingData);
-+ data->key = 'r';
-+ data->text = text;
-+ g_queue_push_tail (context->queue_during_process_key_event, data);
-+ return;
-+ }
- bus_input_context_emit_signal (context,
- "RequireSurroundingText",
- NULL,
-@@ -3158,7 +3187,7 @@ bus_input_context_commit_text_use_extension (BusInputContext *context,
- if (use_extension && context->emoji_extension) {
- bus_panel_proxy_commit_text_received (context->emoji_extension, text);
- } else if (context->processing_key_event && g_queue_get_length (
-- context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-+ context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
- SyncForwardingData *data;
- if (g_queue_get_length (context->queue_during_process_key_event)
- == MAX_SYNC_DATA) {
-diff --git a/src/ibusinputcontext.c b/src/ibusinputcontext.c
-index def23b25..c6a030fe 100644
---- a/src/ibusinputcontext.c
-+++ b/src/ibusinputcontext.c
-@@ -1406,6 +1406,7 @@ ibus_input_context_set_post_process_key_event (IBusInputContext *context,
- void
- ibus_input_context_post_process_key_event (IBusInputContext *context)
- {
-+ IBusInputContextPrivate *priv;
- GVariant *cached_var_post;
- gboolean enable = FALSE;
- GVariant *result;
-@@ -1418,6 +1419,7 @@ ibus_input_context_post_process_key_event (IBusInputContext *context)
-
- g_assert (IBUS_IS_INPUT_CONTEXT (context));
-
-+ priv = IBUS_INPUT_CONTEXT_GET_PRIVATE (IBUS_INPUT_CONTEXT (context));
- cached_var_post =
- g_dbus_proxy_get_cached_property ((GDBusProxy *)context,
- "EffectivePostProcessKeyEvent");
-@@ -1479,6 +1481,27 @@ ibus_input_context_post_process_key_event (IBusInputContext *context)
- state | IBUS_FORWARD_MASK);
- break;
- }
-+ case 'r': {
-+ priv->needs_surrounding_text = TRUE;
-+ g_signal_emit (context,
-+ context_signals[REQUIRE_SURROUNDING_TEXT], 0);
-+ break;
-+ }
-+ case 'd': {
-+ gchar **array = NULL;
-+ gint offset_from_cursor;
-+ guint nchars;
-+ array = g_strsplit (text->text, ",", -1);
-+ offset_from_cursor = g_ascii_strtoll (array[0], NULL, 10);
-+ nchars = g_ascii_strtoull (array[1], NULL, 10);
-+ g_strfreev (array);
-+ g_signal_emit (context,
-+ context_signals[DELETE_SURROUNDING_TEXT],
-+ 0,
-+ offset_from_cursor,
-+ nchars);
-+ break;
-+ }
- default:
- g_warning ("%s: Type '%c' is not supported.", G_STRFUNC, type);
- }
---
-2.41.0
-
-From ef0d29d8bf4e533c428b2cd9d3ee9fa42e9e20e7 Mon Sep 17 00:00:00 2001
-From: fujiwarat <takao.fujiwara1@gmail.com>
-Date: Wed, 25 Oct 2023 16:46:07 +0900
-Subject: [PATCH] src: Add preedit D-Bus signals to PostProcessKeyEvent
-
-ibus-hangul calls UpdatePreeditText signal during pressing Enter key
-to hide the current preedit text and this also causes the reorder issue
-in sync process-key-event and need to move the preedit signals
-to PostProcessKeyEvent.
-
-Also refactor PostProcessKeyEvent codes.
-
-Fixes: https://github.com/ibus/ibus/commit/38f09c6
-
-BUG=https://github.com/ibus/ibus/pull/2575
----
- bus/inputcontext.c | 176 +++++++++++++++++++++++++++--------------
- src/ibusinputcontext.c | 162 +++++++++++++++++++++++++++++--------
- 2 files changed, 248 insertions(+), 90 deletions(-)
-
-diff --git a/bus/inputcontext.c b/bus/inputcontext.c
-index 64430fe4..c914fbd2 100644
---- a/bus/inputcontext.c
-+++ b/bus/inputcontext.c
-@@ -48,11 +48,25 @@ struct _SetEngineByDescData {
- };
- typedef struct _SetEngineByDescData SetEngineByDescData;
-
-+typedef struct _DeleteSurroundingData {
-+ gint offset;
-+ guint nchars;
-+} DeleteSurroundingData;
-+
- typedef struct _SyncForwardingData {
-- gchar key;
-- IBusText *text;
-+ char key;
-+ IBusText *text;
- } SyncForwardingData;
-
-+typedef struct _SyncForwardingPreData {
-+ char key;
-+ IBusText *text;
-+ union {
-+ guint uints[3];
-+ DeleteSurroundingData deleting;
-+ } u;
-+} SyncForwardingPreData;
-+
- struct _BusInputContext {
- IBusService parent;
-
-@@ -943,6 +957,7 @@ _ic_process_key_event (BusInputContext *context,
- */
- g_dbus_method_invocation_return_value (invocation,
- g_variant_new ("(b)", TRUE));
-+ context->processing_key_event = FALSE;
- return;
- }
- if (G_UNLIKELY (!context->has_focus)) {
-@@ -1005,6 +1020,7 @@ _ic_process_key_event (BusInputContext *context,
- else {
- g_dbus_method_invocation_return_value (invocation,
- g_variant_new ("(b)", FALSE));
-+ context->processing_key_event = FALSE;
- }
- }
-
-@@ -1654,6 +1670,71 @@ bus_input_context_service_set_property (IBusService *service,
- }
-
-
-+static gboolean
-+bus_input_context_make_post_process_key_event (BusInputContext *context,
-+ SyncForwardingPreData *pre_data)
-+{
-+ SyncForwardingData *data;
-+ if (context->processing_key_event && g_queue_get_length (
-+ context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-+ if (g_queue_get_length (context->queue_during_process_key_event)
-+ == MAX_SYNC_DATA) {
-+ g_warning ("Exceed max number of post process_key_event data");
-+ }
-+ data = g_slice_new (SyncForwardingData);
-+ data->key = pre_data->key;
-+ switch (pre_data->key) {
-+ case 'c':
-+ data->text = g_object_ref (pre_data->text);
-+ break;
-+ case 'd':
-+ data->text = ibus_text_new_from_printf (
-+ "%d,%u",
-+ pre_data->u.deleting.offset,
-+ pre_data->u.deleting.nchars);
-+ break;
-+ case 'f':
-+ data->text = ibus_text_new_from_printf ("%u,%u,%u",
-+ pre_data->u.uints[0],
-+ pre_data->u.uints[1],
-+ pre_data->u.uints[2]);
-+ break;
-+ case 'h':
-+ case 'r':
-+ case 's':
-+ data->text = ibus_text_new_from_static_string ("");
-+ break;
-+ case 'u':
-+ case 'm':
-+ data->text = g_object_ref (pre_data->text);
-+ g_queue_push_tail (context->queue_during_process_key_event, data);
-+ data = g_slice_new (SyncForwardingData);
-+ data->key = pre_data->key;
-+ if (pre_data->key == 'u') {
-+ data->text = ibus_text_new_from_printf (
-+ "%u,%u",
-+ pre_data->u.uints[0],
-+ pre_data->u.uints[1]);
-+ } else {
-+ data->text = ibus_text_new_from_printf (
-+ "%u,%u,%u",
-+ pre_data->u.uints[0],
-+ pre_data->u.uints[1],
-+ pre_data->u.uints[2]);
-+ }
-+ break;
-+ default:
-+ g_warning ("Type %c of SyncForwardingData is not supported",
-+ pre_data->key);
-+ g_slice_free (SyncForwardingData, data);
-+ return FALSE;
-+ }
-+ g_queue_push_tail (context->queue_during_process_key_event, data);
-+ return TRUE;
-+ }
-+ return FALSE;
-+}
-+
- gboolean
- bus_input_context_has_focus (BusInputContext *context)
- {
-@@ -1893,6 +1974,9 @@ bus_input_context_show_preedit_text (BusInputContext *context,
- }
-
- if (PREEDIT_CONDITION) {
-+ SyncForwardingPreData pre_data = { 's', };
-+ if (bus_input_context_make_post_process_key_event (context, &pre_data))
-+ return;
- bus_input_context_emit_signal (context,
- "ShowPreeditText",
- NULL,
-@@ -1933,6 +2017,9 @@ bus_input_context_hide_preedit_text (BusInputContext *context,
- }
-
- if (PREEDIT_CONDITION) {
-+ SyncForwardingPreData pre_data = { 'h', };
-+ if (bus_input_context_make_post_process_key_event (context, &pre_data))
-+ return;
- bus_input_context_emit_signal (context,
- "HidePreeditText",
- NULL,
-@@ -2375,27 +2462,18 @@ _engine_forward_key_event_cb (BusEngineProxy *engine,
- guint state,
- BusInputContext *context)
- {
-+ SyncForwardingPreData pre_data = { 'f', };
-+
- g_assert (BUS_IS_ENGINE_PROXY (engine));
- g_assert (BUS_IS_INPUT_CONTEXT (context));
--
- g_assert (context->engine == engine);
- g_assert (context->queue_during_process_key_event);
-
-- if (context->processing_key_event && g_queue_get_length (
-- context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-- SyncForwardingData *data;
-- IBusText *text = ibus_text_new_from_printf ("%u,%u,%u",
-- keyval, keycode, state);
-- if (g_queue_get_length (context->queue_during_process_key_event)
-- == MAX_SYNC_DATA) {
-- g_warning ("Exceed max number of post process_key_event data");
-- }
-- data = g_slice_new (SyncForwardingData);
-- data->key = 'f';
-- data->text = text;
-- g_queue_push_tail (context->queue_during_process_key_event, data);
-+ pre_data.u.uints[0] = keyval;
-+ pre_data.u.uints[1] = keycode;
-+ pre_data.u.uints[2] = state;
-+ if (bus_input_context_make_post_process_key_event (context, &pre_data))
- return;
-- }
- bus_input_context_emit_signal (context,
- "ForwardKeyEvent",
- g_variant_new ("(uuu)",
-@@ -2415,26 +2493,16 @@ _engine_delete_surrounding_text_cb (BusEngineProxy *engine,
- guint nchars,
- BusInputContext *context)
- {
-+ SyncForwardingPreData pre_data = { 'd', };
-+
- g_assert (BUS_IS_ENGINE_PROXY (engine));
- g_assert (BUS_IS_INPUT_CONTEXT (context));
--
- g_assert (context->engine == engine);
-
-- if (context->processing_key_event && g_queue_get_length (
-- context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-- SyncForwardingData *data;
-- IBusText *text = ibus_text_new_from_printf ("%d,%u",
-- offset_from_cursor, nchars);
-- if (g_queue_get_length (context->queue_during_process_key_event)
-- == MAX_SYNC_DATA) {
-- g_warning ("Exceed max number of sync process_key_event data");
-- }
-- data = g_slice_new (SyncForwardingData);
-- data->key = 'd';
-- data->text = g_object_ref (text);
-- g_queue_push_tail (context->queue_during_process_key_event, data);
-+ pre_data.u.deleting.offset = offset_from_cursor;
-+ pre_data.u.deleting.nchars = nchars;
-+ if (bus_input_context_make_post_process_key_event (context, &pre_data))
- return;
-- }
- bus_input_context_emit_signal (context,
- "DeleteSurroundingText",
- g_variant_new ("(iu)",
-@@ -2452,25 +2520,14 @@ static void
- _engine_require_surrounding_text_cb (BusEngineProxy *engine,
- BusInputContext *context)
- {
-+ SyncForwardingPreData pre_data = { 'r', };
-+
- g_assert (BUS_IS_ENGINE_PROXY (engine));
- g_assert (BUS_IS_INPUT_CONTEXT (context));
--
- g_assert (context->engine == engine);
-
-- if (context->processing_key_event && g_queue_get_length (
-- context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-- SyncForwardingData *data;
-- IBusText *text = ibus_text_new_from_static_string ("");
-- if (g_queue_get_length (context->queue_during_process_key_event)
-- == MAX_SYNC_DATA) {
-- g_warning ("Exceed max number of post process_key_event data");
-- }
-- data = g_slice_new (SyncForwardingData);
-- data->key = 'r';
-- data->text = text;
-- g_queue_push_tail (context->queue_during_process_key_event, data);
-+ if (bus_input_context_make_post_process_key_event (context, &pre_data))
- return;
-- }
- bus_input_context_emit_signal (context,
- "RequireSurroundingText",
- NULL,
-@@ -3178,6 +3235,8 @@ bus_input_context_commit_text_use_extension (BusInputContext *context,
- IBusText *text,
- gboolean use_extension)
- {
-+ SyncForwardingPreData pre_data = { 'c', text, };
-+
- g_assert (BUS_IS_INPUT_CONTEXT (context));
- g_assert (context->queue_during_process_key_event);
-
-@@ -3186,17 +3245,9 @@ bus_input_context_commit_text_use_extension (BusInputContext *context,
-
- if (use_extension && context->emoji_extension) {
- bus_panel_proxy_commit_text_received (context->emoji_extension, text);
-- } else if (context->processing_key_event && g_queue_get_length (
-- context->queue_during_process_key_event) <= MAX_SYNC_DATA) {
-- SyncForwardingData *data;
-- if (g_queue_get_length (context->queue_during_process_key_event)
-- == MAX_SYNC_DATA) {
-- g_warning ("Exceed max number of sync process_key_event data");
-- }
-- data = g_slice_new (SyncForwardingData);
-- data->key = 'c';
-- data->text = g_object_ref (text);
-- g_queue_push_tail (context->queue_during_process_key_event, data);
-+ } else if (bus_input_context_make_post_process_key_event (context,
-+ &pre_data)) {
-+ return;
- } else {
- GVariant *variant = ibus_serializable_serialize (
- (IBusSerializable *)text);
-@@ -3245,9 +3296,18 @@ bus_input_context_update_preedit_text (BusInputContext *context,
- context->preedit_cursor_pos,
- context->preedit_visible);
- } else if (PREEDIT_CONDITION) {
-+ SyncForwardingPreData pre_data = { 'u', context->preedit_text, };
- GVariant *variant = ibus_serializable_serialize (
- (IBusSerializable *)context->preedit_text);
-- if (context->client_commit_preedit) {
-+ pre_data.u.uints[0] = context->preedit_cursor_pos;
-+ pre_data.u.uints[1] = extension_visible ? 1 : 0;
-+ pre_data.u.uints[2] = context->preedit_mode;
-+ if (context->client_commit_preedit)
-+ pre_data.key = 'm';
-+ if (bus_input_context_make_post_process_key_event (context,
-+ &pre_data)) {
-+ return;
-+ } else if (context->client_commit_preedit) {
- bus_input_context_emit_signal (
- context,
- "UpdatePreeditTextWithMode",
-diff --git a/src/ibusinputcontext.c b/src/ibusinputcontext.c
-index c6a030fe..1b62f656 100644
---- a/src/ibusinputcontext.c
-+++ b/src/ibusinputcontext.c
-@@ -1403,10 +1403,104 @@ ibus_input_context_set_post_process_key_event (IBusInputContext *context,
- g_variant_unref (var_post);
- }
-
-+
-+static void
-+ibus_input_context_fwd_text_to_commit (IBusInputContext *context,
-+ IBusText *text)
-+{
-+ g_signal_emit (context, context_signals[COMMIT_TEXT], 0, text);
-+}
-+
-+
-+static void
-+ibus_input_context_fwd_text_to_forward_key_event (IBusInputContext *context,
-+ IBusText *text)
-+{
-+ gchar **array = NULL;
-+ guint keyval, keycode, state;
-+ array = g_strsplit (text->text, ",", -1);
-+ keyval = g_ascii_strtoull (array[0], NULL, 10);
-+ keycode = g_ascii_strtoull (array[1], NULL, 10);
-+ state = g_ascii_strtoull (array[2], NULL, 10);
-+ g_strfreev (array);
-+ g_signal_emit (context,
-+ context_signals[FORWARD_KEY_EVENT],
-+ 0,
-+ keyval,
-+ keycode,
-+ state | IBUS_FORWARD_MASK);
-+}
-+
-+
-+static void
-+ibus_input_context_fwd_text_to_require_surrounding (IBusInputContext *context,
-+ IBusText *text)
-+{
-+ IBusInputContextPrivate *priv;
-+ g_assert (IBUS_IS_INPUT_CONTEXT (context));
-+ priv = IBUS_INPUT_CONTEXT_GET_PRIVATE (IBUS_INPUT_CONTEXT (context));
-+ priv->needs_surrounding_text = TRUE;
-+ g_signal_emit (context, context_signals[REQUIRE_SURROUNDING_TEXT], 0);
-+}
-+
-+
-+static void
-+ibus_input_context_fwd_text_to_delete_surrounding (IBusInputContext *context,
-+ IBusText *text)
-+{
-+ gchar **array = NULL;
-+ gint offset_from_cursor;
-+ guint nchars;
-+ array = g_strsplit (text->text, ",", -1);
-+ offset_from_cursor = g_ascii_strtoll (array[0], NULL, 10);
-+ nchars = g_ascii_strtoull (array[1], NULL, 10);
-+ g_strfreev (array);
-+ g_signal_emit (context,
-+ context_signals[DELETE_SURROUNDING_TEXT],
-+ 0,
-+ offset_from_cursor,
-+ nchars);
-+}
-+
-+
-+static void
-+ibus_input_context_fwd_text_to_update_preedit (IBusInputContext *context,
-+ IBusText *text,
-+ IBusText *position,
-+ char type)
-+{
-+ gchar **array = NULL;
-+ guint32 cursor_pos;
-+ gboolean visible;
-+ guint mode = 0;
-+
-+ array = g_strsplit (position->text, ",", -1);
-+ cursor_pos = g_ascii_strtoull (array[0], NULL, 10);
-+ visible = g_ascii_strtoull (array[1], NULL, 10) ? TRUE : FALSE;
-+ if (type == 'u') {
-+ g_signal_emit (context,
-+ context_signals[UPDATE_PREEDIT_TEXT],
-+ 0,
-+ text,
-+ cursor_pos,
-+ visible);
-+ } else {
-+ mode = g_ascii_strtoull (array[2], NULL, 10);
-+ g_signal_emit (context,
-+ context_signals[UPDATE_PREEDIT_TEXT_WITH_MODE],
-+ 0,
-+ text,
-+ cursor_pos,
-+ visible,
-+ mode);
-+ }
-+ g_strfreev (array);
-+}
-+
-+
- void
- ibus_input_context_post_process_key_event (IBusInputContext *context)
- {
-- IBusInputContextPrivate *priv;
- GVariant *cached_var_post;
- gboolean enable = FALSE;
- GVariant *result;
-@@ -1419,7 +1513,6 @@ ibus_input_context_post_process_key_event (IBusInputContext *context)
-
- g_assert (IBUS_IS_INPUT_CONTEXT (context));
-
-- priv = IBUS_INPUT_CONTEXT_GET_PRIVATE (IBUS_INPUT_CONTEXT (context));
- cached_var_post =
- g_dbus_proxy_get_cached_property ((GDBusProxy *)context,
- "EffectivePostProcessKeyEvent");
-@@ -1454,7 +1547,7 @@ ibus_input_context_post_process_key_event (IBusInputContext *context)
- g_assert (variant);
- g_variant_iter_init (&iter, variant);
- size = g_variant_iter_n_children (&iter);
-- while (size >0 && g_variant_iter_loop (&iter, "(yv)", &type, &vtext)) {
-+ while (size > 0 && g_variant_iter_loop (&iter, "(yv)", &type, &vtext)) {
- IBusText *text =
- (IBusText *)ibus_serializable_deserialize_object (vtext);
- if (!IBUS_IS_TEXT (text)) {
-@@ -1463,43 +1556,48 @@ ibus_input_context_post_process_key_event (IBusInputContext *context)
- }
- switch (type) {
- case 'c':
-- g_signal_emit (context, context_signals[COMMIT_TEXT], 0, text);
-+ ibus_input_context_fwd_text_to_commit (context, text);
- break;
- case 'f': {
-- gchar **array = NULL;
-- guint keyval, keycode, state;
-- array = g_strsplit (text->text, ",", -1);
-- keyval = g_ascii_strtoull (array[0], NULL, 10);
-- keycode = g_ascii_strtoull (array[1], NULL, 10);
-- state = g_ascii_strtoull (array[2], NULL, 10);
-- g_strfreev (array);
-- g_signal_emit (context,
-- context_signals[FORWARD_KEY_EVENT],
-- 0,
-- keyval,
-- keycode,
-- state | IBUS_FORWARD_MASK);
-+ ibus_input_context_fwd_text_to_forward_key_event (context, text);
- break;
- }
- case 'r': {
-- priv->needs_surrounding_text = TRUE;
-- g_signal_emit (context,
-- context_signals[REQUIRE_SURROUNDING_TEXT], 0);
-+ ibus_input_context_fwd_text_to_require_surrounding (context, text);
- break;
- }
- case 'd': {
-- gchar **array = NULL;
-- gint offset_from_cursor;
-- guint nchars;
-- array = g_strsplit (text->text, ",", -1);
-- offset_from_cursor = g_ascii_strtoll (array[0], NULL, 10);
-- nchars = g_ascii_strtoull (array[1], NULL, 10);
-- g_strfreev (array);
-- g_signal_emit (context,
-- context_signals[DELETE_SURROUNDING_TEXT],
-- 0,
-- offset_from_cursor,
-- nchars);
-+ ibus_input_context_fwd_text_to_delete_surrounding (context, text);
-+ break;
-+ }
-+ case 'u':
-+ case 'm': {
-+ IBusText *position;
-+ g_clear_pointer (&vtext, g_variant_unref);
-+ if (!g_variant_iter_loop (&iter, "(yv)", &type, &vtext)) {
-+ g_warning ("%s: %s", G_STRFUNC,
-+ "Type 'u' requires next type 'u'");
-+ break;
-+ }
-+ if (type != 'u' && type != 'm') {
-+ g_warning ("%s: %s", G_STRFUNC,
-+ "The next of type 'u' should be type 'u'");
-+ break;
-+ }
-+ position =
-+ (IBusText *)ibus_serializable_deserialize_object (vtext);
-+ if (!IBUS_IS_TEXT (position)) {
-+ g_warning ("%s: %s", G_STRFUNC, "text is not IBusText");
-+ break;
-+ }
-+ ibus_input_context_fwd_text_to_update_preedit (context,
-+ text,
-+ position,
-+ type);
-+ if (g_object_is_floating (position)) {
-+ g_object_ref_sink (position);
-+ g_object_unref (position);
-+ }
- break;
- }
- default:
---
-2.41.0
-
diff --git a/ibus.spec b/ibus.spec
index 839ddec..3b0d886 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -57,8 +57,8 @@
%global dbus_python_version 0.83.0
Name: ibus
-Version: 1.5.29~rc1
-Release: 6%{?dist}
+Version: 1.5.29~rc2
+Release: 1%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPL-2.1-or-later
URL: https://github.com/ibus/%name/wiki
@@ -580,6 +580,9 @@ dconf update || :
%{_datadir}/installed-tests/ibus
%changelog
+* Thu Nov 09 2023 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.29~rc2-1
+- Bump to 1.5.29-rc2
+
* Wed Oct 25 2023 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.29~rc1-6
- Add preedit D-Bus signals to PostProcessKeyEvent
diff --git a/sources b/sources
index 15e2add..638655b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (ibus-1.5.29-rc1.tar.gz) = 776a01bcfd730be67e0f7d730f7b4b0a586d39744deb605359330a1786542acae52efbc085c39b8417b20164e45c259b40b29725f53fb1b69e2b340778ff28dc
+SHA512 (ibus-1.5.29-rc2.tar.gz) = 47dd39c9615783b6c157a25e8a2506dc2e1f440d56aa649ee8cb95a390cb4efab9c95e72ac84b5d042c25e350599b4d352ddc66f1385af6660d4a7a296e44ca7
reply other threads:[~2026-05-31 2:08 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178019330056.1.6367872677151966429.rpms-ibus-a8977474819d@fedoraproject.org \
--to=tfujiwar@redhat.com \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox