Add ibus-libzhuyin-fixes-super-space.patch

This commit is contained in:
Peng Wu 2025-08-06 12:50:02 +08:00
parent bcabdc79a2
commit 8de873ef5f
2 changed files with 91 additions and 9 deletions

View File

@ -0,0 +1,84 @@
commit d7f415b3c079108e134216377a2145fdfaf95a0d
Author: Peng Wu <alexepico@gmail.com>
Date: Tue Jan 23 11:54:41 2024 +0800
Fix processKeyEvent methods
Index: ibus-libzhuyin-1.10.0/src/ZYEditor.cc
===================================================================
--- ibus-libzhuyin-1.10.0.orig/src/ZYEditor.cc
+++ ibus-libzhuyin-1.10.0/src/ZYEditor.cc
@@ -37,6 +37,9 @@ Editor::~Editor (void)
gboolean
Editor::processKeyEvent (guint keyval, guint keycode, guint modifiers)
{
+ if (modifiers & IBUS_MOD4_MASK)
+ return FALSE;
+
modifiers &= (IBUS_CONTROL_MASK |
IBUS_MOD1_MASK |
IBUS_SUPER_MASK |
Index: ibus-libzhuyin-1.10.0/src/ZYFallbackEditor.cc
===================================================================
--- ibus-libzhuyin-1.10.0.orig/src/ZYFallbackEditor.cc
+++ ibus-libzhuyin-1.10.0/src/ZYFallbackEditor.cc
@@ -63,6 +63,9 @@ FallbackEditor::processKeyEvent (guint k
{
gboolean retval = FALSE;
+ if (modifiers & IBUS_MOD4_MASK)
+ return FALSE;
+
modifiers &= (IBUS_CONTROL_MASK |
IBUS_MOD1_MASK |
IBUS_SUPER_MASK |
Index: ibus-libzhuyin-1.10.0/src/ZYZPinyinEditor.cc
===================================================================
--- ibus-libzhuyin-1.10.0.orig/src/ZYZPinyinEditor.cc
+++ ibus-libzhuyin-1.10.0/src/ZYZPinyinEditor.cc
@@ -244,6 +244,9 @@ PinyinEditor::processSpace (guint keyval
gboolean
PinyinEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers)
{
+ if (modifiers & IBUS_MOD4_MASK)
+ return FALSE;
+
modifiers &= (IBUS_SHIFT_MASK |
IBUS_CONTROL_MASK |
IBUS_MOD1_MASK |
Index: ibus-libzhuyin-1.10.0/src/ZYZZhuyinEditor.cc
===================================================================
--- ibus-libzhuyin-1.10.0.orig/src/ZYZZhuyinEditor.cc
+++ ibus-libzhuyin-1.10.0/src/ZYZZhuyinEditor.cc
@@ -286,6 +286,9 @@ ZhuyinEditor::processSpace (guint keyval
gboolean
ZhuyinEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers)
{
+ if (modifiers & IBUS_MOD4_MASK)
+ return FALSE;
+
modifiers &= (IBUS_SHIFT_MASK |
IBUS_CONTROL_MASK |
IBUS_MOD1_MASK |
Index: ibus-libzhuyin-1.10.0/src/ZYZZhuyinEngine.cc
===================================================================
--- ibus-libzhuyin-1.10.0.orig/src/ZYZZhuyinEngine.cc
+++ ibus-libzhuyin-1.10.0/src/ZYZZhuyinEngine.cc
@@ -115,7 +115,7 @@ ZhuyinEngine::processKeyEvent (guint key
/* after mode switch, reset all states. */
reset ();
- return TRUE;
+ return FALSE;
}
if (m_input_mode == MODE_INIT &&
@@ -124,7 +124,7 @@ ZhuyinEngine::processKeyEvent (guint key
* we will let client applications to handle release key event */
return FALSE;
} else {
- return TRUE;
+ return FALSE;
}
}

View File

@ -1,15 +1,11 @@
%global snapshot 0
Name: ibus-libzhuyin
Version: 1.10.0
Release: 4%{?dist}
Release: 5%{?dist}
Summary: New Zhuyin engine based on libzhuyin for IBus
License: GPLv2+
URL: https://github.com/libzhuyin/ibus-libzhuyin
Source0: http://downloads.sourceforge.net/libzhuyin/ibus-libzhuyin/%{name}-%{version}.tar.gz
%if %snapshot
Patch0: ibus-libzhuyin-1.10.x-HEAD.patch
%endif
Patch1: ibus-libzhuyin-fixes-super-space.patch
BuildRequires: gcc-c++
BuildRequires: gettext-devel
@ -35,9 +31,7 @@ based on libzhuyin for IBus.
%prep
%setup -q
%if %snapshot
%patch0 -p1 -b .head
%endif
%patch -P1 -p1 -b .space
%build
@ -71,6 +65,10 @@ based on libzhuyin for IBus.
%changelog
* Wed Aug 06 2025 Peng Wu <pwu@redhat.com> - 1.10.0-5
- Add ibus-libzhuyin-fixes-super-space.patch
- Resolves: RHEL-106766
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.10.0-4
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688