diff -Nru fcitx-qt5-1.2.4/debian/changelog fcitx-qt5-1.2.4/debian/changelog --- fcitx-qt5-1.2.4/debian/changelog 2022-06-21 13:49:29.000000000 +0800 +++ fcitx-qt5-1.2.4/debian/changelog 2022-07-20 16:59:30.000000000 +0800 @@ -1,3 +1,21 @@ +fcitx-qt5 (1.2.4-ok5) yangtze; urgency=medium + + * 执行平板特性需求脚本 + + -- litian <litian2@kylinos.cn> Wed, 20 Jul 2022 16:59:30 +0800 + +fcitx-qt5 (1.2.4-ok4) yangtze; urgency=medium + + * 执行平板特性脚本 + + -- litian <litian2@kylinos.cn> Wed, 20 Jul 2022 14:47:30 +0800 + +fcitx-qt5 (1.2.4-ok3) yangtze; urgency=medium + + * 更新代码,与gitlab保持一致 + + -- litian <litian2@kylinos.cn> Wed, 20 Jul 2022 14:18:33 +0800 + fcitx-qt5 (1.2.4-ok2) yangtze; urgency=medium * rebuild diff -Nru fcitx-qt5-1.2.4/debian/patches/0004-5.patch fcitx-qt5-1.2.4/debian/patches/0004-5.patch --- fcitx-qt5-1.2.4/debian/patches/0004-5.patch 1970-01-01 08:00:00.000000000 +0800 +++ fcitx-qt5-1.2.4/debian/patches/0004-5.patch 2022-07-20 16:59:30.000000000 +0800 @@ -0,0 +1,432 @@ +From: litian <1819035419@qq.com> +Date: Wed, 20 Jul 2022 02:25:48 +0000 +Subject: =?utf-8?b?ITUg6Jma5ouf6ZSu55uY5by55Ye65py65Yi25LyY5YyW77ya5peg5aSW?= + =?utf-8?b?5o6l6ZSu55uY5oOF5Ya15LiL54K55Ye75omN5Y+v5ZSk6YaS6Jma5ouf6ZSu55uY?= + =?utf-8?b?IE1lcmdlIHB1bGwgcmVxdWVzdCAhNSBmcm9tIGxpdGlhbi9vcGVua3lsaW4veWFu?= + =?utf-8?b?Z3R6ZQ==?= + +--- + custommade/README.md | 27 +++++ + custommade/productoption.sh | 48 +++++++++ + custommade/tablet/CMakeLists.txt | 55 ++++++++++ + .../qfcitxplatforminputcontext.cpp | 116 +++++++++++++++++++-- + platforminputcontext/qfcitxplatforminputcontext.h | 44 +++++++- + 5 files changed, 282 insertions(+), 8 deletions(-) + create mode 100644 custommade/README.md + create mode 100755 custommade/productoption.sh + create mode 100644 custommade/tablet/CMakeLists.txt + +diff --git a/custommade/README.md b/custommade/README.md +new file mode 100644 +index 0000000..7b4dc0c +--- /dev/null ++++ b/custommade/README.md +@@ -0,0 +1,27 @@ ++# fcitx-qt5代码维护管理 ++### 编写该文档旨在为了统一维护代码,同时确保满足不同的需求 ++### 脚本功能介绍 ++~~~ ++根据不同的需求,来统一维护代码。目前主要功能有: ++1.移动对应的配置文件到相应的fcitx文件目录下。 ++2.代码中可使用宏定义来项目维护定制部分 ++~~~ ++### 需求介绍 ++~~~ ++tablet需求需要支持平板模式下虚拟键盘的唤醒机制 ++~~~ ++### 文件功能 ++~~~ ++1.tablet/CMakeLists.txt tablet需求中fcitx的工程文件(里面增加了ENABLE_TABLET_CHARACTERISTIC 宏) ++~~~ ++### 执行步骤 ++~~~ ++1.仅当在需要定制需求的时候 执行tabletcharacteristic/productoption.sh脚本文件 ++2.参数对应不同需求名称 ++例如:./productoption.sh tablet ++后面可以根据需求修改脚本 ++~~~ ++### 注意事项 ++~~~ ++1.增加文件需要对照fcitx当前文件目录,在product目录下建立对应目录并对其进行放置 ++~~~ +diff --git a/custommade/productoption.sh b/custommade/productoption.sh +new file mode 100755 +index 0000000..912714d +--- /dev/null ++++ b/custommade/productoption.sh +@@ -0,0 +1,48 @@ ++#!/bin/sh ++ ++productPara=$1 ++productNumber=(tablet) ++warringError="Please enter the correct parameters.( tablet )" ++isExist= ++#获取脚本所在的目录 ++workdir=$(cd $(dirname $0); pwd) ++# echo $workdir ++ ++#参数为空,错误提醒 ++if [ ! -n "$productPara" ] ;then ++ echo $warringError ++ exit; ++fi ++ ++#遍历参数是否存在productNumber中(参数合法性判断) ++for i in ${productNumber[@]} ++do ++ if [ $i == $productPara ] ++ then ++ isExist="yes" ++ break ++ fi ++done ++ ++if [ ! -n "$isExist" ] ++then ++ echo $warringError ++ exit; ++fi ++ ++ ++ ++#对intel单独的定制进行配置 ++if [ $productPara = ${productNumber[0]} ] ++then ++ echo "" ++ #将CMakeLists.txt文件拷贝到fcitx目录下,增加宏定义INTEL_PRODUCT_DEBUG ++ cp -rvf $workdir/$productPara/CMakeLists.txt $workdir/../. ++ ++ echo "" ++fi ++ ++echo "finish..." ++ ++ ++ +diff --git a/custommade/tablet/CMakeLists.txt b/custommade/tablet/CMakeLists.txt +new file mode 100644 +index 0000000..2afbcb1 +--- /dev/null ++++ b/custommade/tablet/CMakeLists.txt +@@ -0,0 +1,55 @@ ++cmake_minimum_required(VERSION 3.1) ++ ++project(fcitx-qt5) ++ ++set(FcitxQt5_VERSION 1.1.0) ++set(REQUIRED_QT_VERSION 5.1.0) ++ ++find_package(ECM 1.4.0 REQUIRED NO_MODULE) ++ ++set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake) ++ ++option(ENABLE_LIBRARY "Qt library" On) ++option(ENABLE_TABLET_CHARACTERISTIC "tablet product" On) ++if(ENABLE_TABLET_CHARACTERISTIC) ++ add_definitions(-DENABLE_TABLET_CHARACTERISTIC) ++endif() ++include(GNUInstallDirs) ++include(FeatureSummary) ++include(GenerateExportHeader) ++include(CMakePackageConfigHelpers) ++include(ECMSetupVersion) ++include(ECMGenerateHeaders) ++ ++include(CheckCXXCompilerFlag) ++ ++check_cxx_compiler_flag("-std=c++11" SUPPORT_CXX11) ++ ++if(NOT SUPPORT_CXX11) ++ message(FATAL_ERROR "need c++ 11 compatible compiler to compile") ++endif() ++ ++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall") ++ ++find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core DBus Widgets Concurrent) ++find_package(Qt5Gui ${REQUIRED_QT_VERSION} REQUIRED Private) ++find_package(XKBCommon 0.5.0 REQUIRED COMPONENTS XKBCommon) ++ ++if (ENABLE_LIBRARY) ++find_package(Fcitx 4.2.8 REQUIRED) ++find_package(LibIntl REQUIRED) ++endif () ++ ++set(FcitxQt5_INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR}/FcitxQt5) ++ ++if (ENABLE_LIBRARY) ++add_subdirectory(dbusaddons) ++add_subdirectory(widgetsaddons) ++add_subdirectory(guiwrapper) ++add_subdirectory(quickphrase-editor) ++add_subdirectory(po) ++endif() ++ ++add_subdirectory(platforminputcontext) ++ ++feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) +diff --git a/platforminputcontext/qfcitxplatforminputcontext.cpp b/platforminputcontext/qfcitxplatforminputcontext.cpp +index 8f6a990..23666ee 100644 +--- a/platforminputcontext/qfcitxplatforminputcontext.cpp ++++ b/platforminputcontext/qfcitxplatforminputcontext.cpp +@@ -31,6 +31,11 @@ + #include <qpa/qplatformscreen.h> + #include <qpa/qwindowsysteminterface.h> + ++#include <stdio.h> ++#include <stdlib.h> ++#include <unistd.h> ++#include <sys/types.h> ++ + #include "qtkey.h" + + #include "fcitxinputcontextproxy.h" +@@ -100,6 +105,10 @@ QFcitxPlatformInputContext::QFcitxPlatformInputContext() + XKB_COMPOSE_STATE_NO_FLAGS) + : 0) { + m_watcher->watch(); ++ m_keyBoardStatusInfo = new KeyboardStatusInfo(); ++ m_inputMethodStatus = new InputMethodStatus(); ++ QObject::connect(m_keyBoardStatusInfo->m_iFaceStatusManager,SIGNAL(inputmethod_change_signal(bool)),this,SLOT(dealKeyboardStatus(bool))); ++ + } + + QFcitxPlatformInputContext::~QFcitxPlatformInputContext() { +@@ -107,6 +116,8 @@ QFcitxPlatformInputContext::~QFcitxPlatformInputContext() { + m_watcher->unwatch(); + cleanUp(); + delete m_watcher; ++ delete m_keyBoardStatusInfo; ++ delete m_inputMethodStatus; + } + + void QFcitxPlatformInputContext::cleanUp() { +@@ -117,6 +128,12 @@ void QFcitxPlatformInputContext::cleanUp() { + } + } + ++void QFcitxPlatformInputContext::dealKeyboardStatus(bool str) ++{ ++ m_keyBoardStatusInfo->m_keyBoardStatus = m_keyBoardStatusInfo->getKeyboardStatus(); ++// iMethod->setInputMethodStatus(SogouKeyboardStatus::IsHide); ++} ++ + bool QFcitxPlatformInputContext::isValid() const { return true; } + + void QFcitxPlatformInputContext::invokeAction(QInputMethod::Action action, +@@ -265,6 +282,26 @@ void QFcitxPlatformInputContext::update(Qt::InputMethodQueries queries) { + } + + void QFcitxPlatformInputContext::commit() { QPlatformInputContext::commit(); } ++#ifdef ENABLE_TABLET_CHARACTERISTIC ++void QFcitxPlatformInputContext::showInputPanel() ++{ ++ QWindow *window = qApp->focusWindow(); ++ if (window == nullptr) { ++ return; ++ } ++ FcitxInputContextProxy *proxy = validICByWindow(window); ++ if (proxy == nullptr) { ++ return; ++ } ++ //替换原有的切换焦点唤醒虚拟键盘的机制 ++ //目前没有直接唤醒虚拟键盘的接口,reset会重置输入法内部状态。可以实现再次唤醒虚拟键盘 ++ proxy->focusIn(); ++ SogouKeyboardStatus status = m_inputMethodStatus->getInputMethodStatus(); ++ if (status == SogouKeyboardStatus::IsHide && (m_keyBoardStatusInfo->m_keyBoardStatus == KeyBoardStatus::NonExistKeyboard)) { ++ m_inputMethodStatus->setInputMethodStatus(SogouKeyboardStatus::IsShow); ++ } ++} ++#endif + + void QFcitxPlatformInputContext::setFocusObject(QObject *object) { + Q_UNUSED(object); +@@ -275,9 +312,6 @@ void QFcitxPlatformInputContext::setFocusObject(QObject *object) { + if (proxy) { + if(window) + { +- // qDebug()<<Q_FUNC_INFO; +- // qDebug()<<window->winId(); +- // qDebug()<<window->objectName(); + if((m_lastWindow!=window)||!inputMethodAccepted()) + proxy->focusOut(); + } +@@ -297,7 +331,7 @@ void QFcitxPlatformInputContext::setFocusObject(QObject *object) { + } + + +- if (proxy) ++ if (proxy && (m_keyBoardStatusInfo->m_keyBoardStatus == KeyBoardStatus::ExistKeyboard)) + proxy->focusIn(); + else { + createICData(window); +@@ -359,8 +393,9 @@ void QFcitxPlatformInputContext::createInputContextFinished() { + if (proxy->isValid()) { + QWindow *window = qApp->focusWindow(); + if (window && window == w && objectAcceptsInputMethod()) { +- +- proxy->focusIn(); ++ if(m_keyBoardStatusInfo->m_keyBoardStatus == KeyBoardStatus::ExistKeyboard) { ++ proxy->focusIn(); ++ } + cursorRectChanged(); + } + } +@@ -664,7 +699,9 @@ bool QFcitxPlatformInputContext::filterEvent(const QEvent *event) { + } + } + +- proxy->focusIn(); ++ if(m_keyBoardStatusInfo->m_keyBoardStatus == KeyBoardStatus::ExistKeyboard) { ++ proxy->focusIn(); ++ } + + auto reply = + proxy->processKeyEvent(keyval, keycode, state, isRelease, +@@ -823,4 +860,69 @@ bool QFcitxPlatformInputContext::processCompose(uint keyval, uint state, + return true; + } + ++ ++KeyboardStatusInfo::KeyboardStatusInfo() ++{ ++ m_iFaceStatusManager = new QDBusInterface("com.kylin.statusmanager.interface", "/", ++ "com.kylin.statusmanager.interface",QDBusConnection::sessionBus(),this); ++ if (!m_iFaceStatusManager->isValid()) { ++ m_keyBoardStatus = KeyBoardStatus::ExistKeyboard; ++ return; ++ } ++ m_keyBoardStatus = getKeyboardStatus(); ++ ++} ++KeyboardStatusInfo::~KeyboardStatusInfo() ++{ ++ delete m_iFaceStatusManager; ++} ++KeyBoardStatus KeyboardStatusInfo::getKeyboardStatus() ++{ ++ QDBusMessage msg = m_iFaceStatusManager->call("get_inputmethod_mode"); ++ if (msg.type() == QDBusMessage::MessageType::ErrorMessage) { ++ return KeyBoardStatus::ExistKeyboard; ++ } ++ return (KeyBoardStatus)msg.arguments().at(0).toInt(); ++ ++} ++InputMethodStatus::InputMethodStatus() ++{ ++ QString cSogouDbus = getSogouDbusString(); ++ m_iFaceSogouime = new QDBusInterface(cSogouDbus, "/", ++ "com.basesogouimebs_interface_service",QDBusConnection::sessionBus(),this); ++ if (!m_iFaceSogouime->isValid()) { ++ return; ++ } ++} ++InputMethodStatus::~InputMethodStatus() ++{ ++ delete m_iFaceSogouime; ++} ++QString InputMethodStatus::getSogouDbusString() ++{ ++ QString cSogouDbus = "com.basesogouimebs_service.hotel_"; ++ QString uid = QString::number(getuid()); ++ QString displayNumber = tr("_") + getenv("DISPLAY"); ++ displayNumber.remove(1, 1); // getenv("DISPLAY"); 有冒号 : 所以需要去除; ++ cSogouDbus.append(uid); ++ cSogouDbus.append(displayNumber); ++ return cSogouDbus; ++} ++SogouKeyboardStatus InputMethodStatus::getInputMethodStatus() ++{ ++ QDBusMessage msg = m_iFaceSogouime->call("IsKeyboardVisible"); ++ if(msg.type() == QDBusMessage::MessageType::ErrorMessage) { ++ return SogouKeyboardStatus::NotExistVirtualKeyboard; ++ } ++ return (SogouKeyboardStatus)msg.arguments().at(0).toInt(); ++ ++} ++void InputMethodStatus::setInputMethodStatus(bool status) ++{ ++ QDBusMessage msg = m_iFaceSogouime->call("ShowKeyboard",status); ++ if(msg.type() == QDBusMessage::MessageType::ErrorMessage) { ++ qWarning()<<"sogou:"<<"keyboard Stauts error"; ++ } ++} ++ + // kate: indent-mode cstyle; space-indent on; indent-width 0; +diff --git a/platforminputcontext/qfcitxplatforminputcontext.h b/platforminputcontext/qfcitxplatforminputcontext.h +index 40a6d56..e943773 100644 +--- a/platforminputcontext/qfcitxplatforminputcontext.h ++++ b/platforminputcontext/qfcitxplatforminputcontext.h +@@ -90,6 +90,16 @@ enum FcitxKeyState { + FcitxKeyState_UsedMask = 0x5c001fff + }; + ++enum KeyBoardStatus{ ++ NonExistKeyboard = 0, ++ ExistKeyboard, ++}; ++enum SogouKeyboardStatus{ ++ IsHide = 0, ++ IsShow, ++ NotExistVirtualKeyboard ++}; ++ + struct FcitxQtICData { + FcitxQtICData(FcitxWatcher *watcher) + : capability(0), proxy(new FcitxInputContextProxy(watcher, watcher)), +@@ -153,6 +163,8 @@ struct XkbComposeStateDeleter { + }; + + class FcitxQtInputMethodProxy; ++class KeyboardStatusInfo; ++class InputMethodStatus; + + class QFcitxPlatformInputContext : public QPlatformInputContext { + Q_OBJECT +@@ -169,7 +181,9 @@ public: + virtual void update(Qt::InputMethodQueries quries) Q_DECL_OVERRIDE; + virtual void setFocusObject(QObject *object) Q_DECL_OVERRIDE; + virtual QLocale locale() const Q_DECL_OVERRIDE; +- ++#ifdef ENABLE_TABLET_CHARACTERISTIC ++ virtual void showInputPanel() Q_DECL_OVERRIDE; ++#endif + public Q_SLOTS: + void cursorRectChanged(); + void commitString(const QString &str); +@@ -235,8 +249,36 @@ private: + QScopedPointer<struct xkb_compose_state, XkbComposeStateDeleter> + m_xkbComposeState; + QLocale m_locale; ++ KeyboardStatusInfo *m_keyBoardStatusInfo = nullptr; ++ InputMethodStatus *m_inputMethodStatus = nullptr; + private slots: + void processKeyEventFinished(QDBusPendingCallWatcher *); ++ void dealKeyboardStatus(bool str); ++}; ++ ++ ++class KeyboardStatusInfo : public QObject ++{ ++ Q_OBJECT ++public: ++ KeyboardStatusInfo(); ++ ~KeyboardStatusInfo(); ++ KeyBoardStatus getKeyboardStatus(); ++ KeyBoardStatus m_keyBoardStatus = KeyBoardStatus::ExistKeyboard; ++ QDBusInterface *m_iFaceStatusManager = nullptr; ++ ++}; ++class InputMethodStatus : public QObject ++{ ++ Q_OBJECT ++public: ++ InputMethodStatus(); ++ ~InputMethodStatus(); ++ QString getSogouDbusString(); ++ SogouKeyboardStatus getInputMethodStatus(); ++ void setInputMethodStatus(bool status); ++ QDBusInterface *m_iFaceSogouime = nullptr; ++ + }; + + #endif // QFCITXPLATFORMINPUTCONTEXT_H diff -Nru fcitx-qt5-1.2.4/debian/patches/0005-6-reset.patch fcitx-qt5-1.2.4/debian/patches/0005-6-reset.patch --- fcitx-qt5-1.2.4/debian/patches/0005-6-reset.patch 1970-01-01 08:00:00.000000000 +0800 +++ fcitx-qt5-1.2.4/debian/patches/0005-6-reset.patch 2022-07-20 16:59:30.000000000 +0800 @@ -0,0 +1,139 @@ +From: litian <1819035419@qq.com> +Date: Wed, 20 Jul 2022 02:44:53 +0000 +Subject: =?utf-8?b?ITYg54K55Ye75ZSk6YaS6Jma5ouf6ZSu55uY6ZyA6KaB5q+P5qyh5L2/?= + =?utf-8?b?55SocmVzZXTph43nva7ovpPlhaXms5XnmoTnirbmgIEgTWVyZ2UgcHVsbCByZXF1?= + =?utf-8?b?ZXN0ICE2IGZyb20gbGl0aWFuL29wZW5reWxpbi95YW5ndHpl?= + +--- + .../qfcitxplatforminputcontext.cpp | 47 +--------------------- + platforminputcontext/qfcitxplatforminputcontext.h | 18 --------- + 2 files changed, 1 insertion(+), 64 deletions(-) + +diff --git a/platforminputcontext/qfcitxplatforminputcontext.cpp b/platforminputcontext/qfcitxplatforminputcontext.cpp +index 23666ee..d157d99 100644 +--- a/platforminputcontext/qfcitxplatforminputcontext.cpp ++++ b/platforminputcontext/qfcitxplatforminputcontext.cpp +@@ -106,7 +106,6 @@ QFcitxPlatformInputContext::QFcitxPlatformInputContext() + : 0) { + m_watcher->watch(); + m_keyBoardStatusInfo = new KeyboardStatusInfo(); +- m_inputMethodStatus = new InputMethodStatus(); + QObject::connect(m_keyBoardStatusInfo->m_iFaceStatusManager,SIGNAL(inputmethod_change_signal(bool)),this,SLOT(dealKeyboardStatus(bool))); + + } +@@ -117,7 +116,6 @@ QFcitxPlatformInputContext::~QFcitxPlatformInputContext() { + cleanUp(); + delete m_watcher; + delete m_keyBoardStatusInfo; +- delete m_inputMethodStatus; + } + + void QFcitxPlatformInputContext::cleanUp() { +@@ -131,7 +129,6 @@ void QFcitxPlatformInputContext::cleanUp() { + void QFcitxPlatformInputContext::dealKeyboardStatus(bool str) + { + m_keyBoardStatusInfo->m_keyBoardStatus = m_keyBoardStatusInfo->getKeyboardStatus(); +-// iMethod->setInputMethodStatus(SogouKeyboardStatus::IsHide); + } + + bool QFcitxPlatformInputContext::isValid() const { return true; } +@@ -296,10 +293,7 @@ void QFcitxPlatformInputContext::showInputPanel() + //替换原有的切换焦点唤醒虚拟键盘的机制 + //目前没有直接唤醒虚拟键盘的接口,reset会重置输入法内部状态。可以实现再次唤醒虚拟键盘 + proxy->focusIn(); +- SogouKeyboardStatus status = m_inputMethodStatus->getInputMethodStatus(); +- if (status == SogouKeyboardStatus::IsHide && (m_keyBoardStatusInfo->m_keyBoardStatus == KeyBoardStatus::NonExistKeyboard)) { +- m_inputMethodStatus->setInputMethodStatus(SogouKeyboardStatus::IsShow); +- } ++ proxy->reset(); + } + #endif + +@@ -885,44 +879,5 @@ KeyBoardStatus KeyboardStatusInfo::getKeyboardStatus() + return (KeyBoardStatus)msg.arguments().at(0).toInt(); + + } +-InputMethodStatus::InputMethodStatus() +-{ +- QString cSogouDbus = getSogouDbusString(); +- m_iFaceSogouime = new QDBusInterface(cSogouDbus, "/", +- "com.basesogouimebs_interface_service",QDBusConnection::sessionBus(),this); +- if (!m_iFaceSogouime->isValid()) { +- return; +- } +-} +-InputMethodStatus::~InputMethodStatus() +-{ +- delete m_iFaceSogouime; +-} +-QString InputMethodStatus::getSogouDbusString() +-{ +- QString cSogouDbus = "com.basesogouimebs_service.hotel_"; +- QString uid = QString::number(getuid()); +- QString displayNumber = tr("_") + getenv("DISPLAY"); +- displayNumber.remove(1, 1); // getenv("DISPLAY"); 有冒号 : 所以需要去除; +- cSogouDbus.append(uid); +- cSogouDbus.append(displayNumber); +- return cSogouDbus; +-} +-SogouKeyboardStatus InputMethodStatus::getInputMethodStatus() +-{ +- QDBusMessage msg = m_iFaceSogouime->call("IsKeyboardVisible"); +- if(msg.type() == QDBusMessage::MessageType::ErrorMessage) { +- return SogouKeyboardStatus::NotExistVirtualKeyboard; +- } +- return (SogouKeyboardStatus)msg.arguments().at(0).toInt(); +- +-} +-void InputMethodStatus::setInputMethodStatus(bool status) +-{ +- QDBusMessage msg = m_iFaceSogouime->call("ShowKeyboard",status); +- if(msg.type() == QDBusMessage::MessageType::ErrorMessage) { +- qWarning()<<"sogou:"<<"keyboard Stauts error"; +- } +-} + + // kate: indent-mode cstyle; space-indent on; indent-width 0; +diff --git a/platforminputcontext/qfcitxplatforminputcontext.h b/platforminputcontext/qfcitxplatforminputcontext.h +index e943773..ecbe0a9 100644 +--- a/platforminputcontext/qfcitxplatforminputcontext.h ++++ b/platforminputcontext/qfcitxplatforminputcontext.h +@@ -94,11 +94,6 @@ enum KeyBoardStatus{ + NonExistKeyboard = 0, + ExistKeyboard, + }; +-enum SogouKeyboardStatus{ +- IsHide = 0, +- IsShow, +- NotExistVirtualKeyboard +-}; + + struct FcitxQtICData { + FcitxQtICData(FcitxWatcher *watcher) +@@ -250,7 +245,6 @@ private: + m_xkbComposeState; + QLocale m_locale; + KeyboardStatusInfo *m_keyBoardStatusInfo = nullptr; +- InputMethodStatus *m_inputMethodStatus = nullptr; + private slots: + void processKeyEventFinished(QDBusPendingCallWatcher *); + void dealKeyboardStatus(bool str); +@@ -267,18 +261,6 @@ public: + KeyBoardStatus m_keyBoardStatus = KeyBoardStatus::ExistKeyboard; + QDBusInterface *m_iFaceStatusManager = nullptr; + +-}; +-class InputMethodStatus : public QObject +-{ +- Q_OBJECT +-public: +- InputMethodStatus(); +- ~InputMethodStatus(); +- QString getSogouDbusString(); +- SogouKeyboardStatus getInputMethodStatus(); +- void setInputMethodStatus(bool status); +- QDBusInterface *m_iFaceSogouime = nullptr; +- + }; + + #endif // QFCITXPLATFORMINPUTCONTEXT_H diff -Nru fcitx-qt5-1.2.4/debian/patches/0006-8.patch fcitx-qt5-1.2.4/debian/patches/0006-8.patch --- fcitx-qt5-1.2.4/debian/patches/0006-8.patch 1970-01-01 08:00:00.000000000 +0800 +++ fcitx-qt5-1.2.4/debian/patches/0006-8.patch 2022-07-20 16:59:30.000000000 +0800 @@ -0,0 +1,25 @@ +From: litian <1819035419@qq.com> +Date: Wed, 20 Jul 2022 06:45:53 +0000 +Subject: =?utf-8?b?ITgg5omn6KGM5bmz5p2/54m55oCn6ZyA5rGC6ISa5pysIE1lcmdlIHB1?= + =?utf-8?b?bGwgcmVxdWVzdCAhOCBmcm9tIGxpdGlhbi9vcGVua3lsaW4veWFuZ3R6ZQ==?= + +--- + CMakeLists.txt | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d10bb7f..2afbcb1 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -10,7 +10,10 @@ find_package(ECM 1.4.0 REQUIRED NO_MODULE) + set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake) + + option(ENABLE_LIBRARY "Qt library" On) +- ++option(ENABLE_TABLET_CHARACTERISTIC "tablet product" On) ++if(ENABLE_TABLET_CHARACTERISTIC) ++ add_definitions(-DENABLE_TABLET_CHARACTERISTIC) ++endif() + include(GNUInstallDirs) + include(FeatureSummary) + include(GenerateExportHeader) diff -Nru fcitx-qt5-1.2.4/debian/patches/series fcitx-qt5-1.2.4/debian/patches/series --- fcitx-qt5-1.2.4/debian/patches/series 2022-06-21 13:49:29.000000000 +0800 +++ fcitx-qt5-1.2.4/debian/patches/series 2022-07-20 16:59:30.000000000 +0800 @@ -1,3 +1,6 @@ 20201223_fix_26729.patch 20210127_fix_33206.patch 20211109_fix_73522.patch +0004-5.patch +0005-6-reset.patch +0006-8.patch