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: Fix game control keys with language layout
Date: Sun, 31 May 2026 02:08:22 GMT [thread overview]
Message-ID: <178019330292.1.14941646370484914235.rpms-ibus-27145fdaf3ce@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/ibus
Branch : autotool
Commit : 27145fdaf3cea6e76fdc70358653d6d4b44f61e1
Author : Takao Fujiwara <tfujiwar@redhat.com>
Date : 2023-12-21T09:34:20+09:00
Stats : +75/-1 in 2 file(s)
URL : https://src.fedoraproject.org/rpms/ibus/c/27145fdaf3cea6e76fdc70358653d6d4b44f61e1?branch=autotool
Log:
Fix game control keys with language layout
---
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index 95c0b02..c8e4a54 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -1622,3 +1622,74 @@ index e3fab8d9..26bded99 100644
--
2.41.0
+From 4872c1fcdc8bbe146e967d004edf63f5994b21f8 Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1@gmail.com>
+Date: Thu, 21 Dec 2023 08:26:48 +0900
+Subject: [PATCH] src/ibusenginesimple.c: Don't commit any characters
+
+Revert a part of the previous patch of #2495 because it explains
+"Super-space and space key can launch IBus Emojier." but I cannot
+remember what I tried to fix.
+
+IBus XKB engines should not commit any keysyms before the key event is
+sent to the application with IBUS_IGNORED_MASK flag even if the key
+is not an ASCII because any characters can be control characters
+by application.
+E.g. VIM cursor mode "hjkl" keys or game cursor keys with language
+layouts.
+
+Fixes: https://github.com/ibus/ibus/commit/ad883dc
+
+BUG=https://github.com/ibus/ibus/issues/2588
+---
+ client/gtk2/ibusimcontext.c | 6 ++++++
+ src/ibusenginesimple.c | 15 ++++++++++-----
+ 2 files changed, 16 insertions(+), 5 deletions(-)
+
+diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
+index cfc08c20..ebc8d869 100644
+--- a/client/gtk2/ibusimcontext.c
++++ b/client/gtk2/ibusimcontext.c
+@@ -361,6 +361,12 @@ ibus_im_context_commit_event (IBusIMContext *ibusimcontext,
+ keyval == GDK_KEY_KP_Enter) {
+ return FALSE;
+ }
++ /* #2588 If IBus tries to commit a character, it should be forwarded to
++ * the application at once with IBUS_IGNORED_MASK before the actual
++ * commit because any characters can be control characters even if
++ * they are not ASCII characters, e.g. game cursor keys with a
++ * language keyboard layout likes VIM cursor mode "hjkl" keys.
++ */
+ ch = ibus_keyval_to_unicode (keyval);
+ if (ch != 0 && !g_unichar_iscntrl (ch)) {
+ IBusText *text = ibus_text_new_from_unichar (ch);
+diff --git a/src/ibusenginesimple.c b/src/ibusenginesimple.c
+index 31cb416c..4bee8cb3 100644
+--- a/src/ibusenginesimple.c
++++ b/src/ibusenginesimple.c
+@@ -647,12 +647,17 @@ no_sequence_matches (IBusEngineSimple *simple,
+
+ ibus_engine_simple_update_preedit_text (simple);
+ ch = ibus_keyval_to_unicode (keyval);
+- /* IBUS_CHANGE: RH#769133
+- * Since we use ibus xkb engines as the disable state,
+- * Super-space and space key can launch IBus Emojier.
++ /* IBUS_CHANGE: RH#769133, #2588
++ * Since we use ibus xkb engines as the disable IM mode,
++ * do not commit the characters locally without in_hex_sequence.
++ * If IBus tries to commit a character, it should be forwarded to
++ * the application at once with IBUS_IGNORED_MASK before the actual
++ * commit because any characters can be control characters even if
++ * they are not ASCII characters, e.g. game cursor keys with a
++ * language keyboard layout likes VIM cursor mode "hjkl" keys.
+ */
+- if (ch != 0 && !g_unichar_iscntrl (ch) && ch > 0x7F) {
+- ibus_engine_simple_commit_char (simple, ch);
++ if (ch != 0 && !g_unichar_iscntrl (ch) &&
++ priv->in_hex_sequence) {
+ return TRUE;
+ } else {
+ return FALSE;
+--
+2.43.0
+
diff --git a/ibus.spec b/ibus.spec
index 90a3499..875f550 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -58,7 +58,7 @@
Name: ibus
Version: 1.5.29~rc2
-Release: 5%{?dist}
+Release: 6%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPL-2.1-or-later
URL: https://github.com/ibus/%name/wiki
@@ -581,6 +581,9 @@ dconf update || :
%{_datadir}/installed-tests/ibus
%changelog
+* Thu Dec 21 2023 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.29~rc2-6
+- Fix game control keys with language layout
+
* Fri Dec 15 2023 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.29~rc2-5
- Refactor object initialization
- Fix some warnings
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=178019330292.1.14941646370484914235.rpms-ibus-27145fdaf3ce@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