Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package fcitx5-qt for openSUSE:Factory checked in at 2023-10-04 22:31:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fcitx5-qt (Old) and /work/SRC/openSUSE:Factory/.fcitx5-qt.new.28202 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fcitx5-qt" Wed Oct 4 22:31:18 2023 rev:10 rq:1114927 version:5.1.1 Changes: -------- --- /work/SRC/openSUSE:Factory/fcitx5-qt/fcitx5-qt.changes 2023-08-21 11:44:49.279601442 +0200 +++ /work/SRC/openSUSE:Factory/.fcitx5-qt.new.28202/fcitx5-qt.changes 2023-10-04 22:32:10.717218083 +0200 @@ -1,0 +2,6 @@ +Tue Oct 3 07:54:01 UTC 2023 - Marguerite Su <i...@marguerite.su> + +- update to 5.1.1 + * fix a qt warning triggered on wayland + +------------------------------------------------------------------- Old: ---- fcitx5-qt-5.1.0.tar.xz New: ---- fcitx5-qt-5.1.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fcitx5-qt.spec ++++++ --- /var/tmp/diff_new_pack.Wgnpc4/_old 2023-10-04 22:32:11.649251770 +0200 +++ /var/tmp/diff_new_pack.Wgnpc4/_new 2023-10-04 22:32:11.649251770 +0200 @@ -27,7 +27,7 @@ %define build_qt6 0 %endif Name: fcitx5-qt -Version: 5.1.0 +Version: 5.1.1 Release: 0 Summary: Qt library and IM module for fcitx5 License: BSD-3-Clause AND LGPL-2.1-or-later ++++++ fcitx5-qt-5.1.0.tar.xz -> fcitx5-qt-5.1.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-qt-5.1.0/CMakeLists.txt new/fcitx5-qt-5.1.1/CMakeLists.txt --- old/fcitx5-qt-5.1.0/CMakeLists.txt 2023-08-14 20:09:31.396203000 +0200 +++ new/fcitx5-qt-5.1.1/CMakeLists.txt 2023-09-29 22:23:53.651636600 +0200 @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.16) -project(fcitx5-qt VERSION 5.1.0) +project(fcitx5-qt VERSION 5.1.1) set(FCITX5_QT_VERSION ${PROJECT_VERSION}) set(REQUIRED_QT4_VERSION 4.8.0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4inputcontextproxy.cpp new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4inputcontextproxy.cpp --- old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4inputcontextproxy.cpp 2023-08-14 20:09:07.002801700 +0200 +++ new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4inputcontextproxy.cpp 2023-09-27 19:36:11.389685400 +0200 @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2012~2017 CSSlayer <wen...@gmail.com> + * SPDX-FileCopyrightText: 2012~2023 CSSlayer <wen...@gmail.com> * * SPDX-License-Identifier: BSD-3-Clause * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4inputcontextproxy_p.h new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4inputcontextproxy_p.h --- old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4inputcontextproxy_p.h 2023-08-14 20:09:07.002801700 +0200 +++ new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4inputcontextproxy_p.h 2023-09-27 19:36:11.389685400 +0200 @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2012~2017 CSSlayer <wen...@gmail.com> + * SPDX-FileCopyrightText: 2012~2023 CSSlayer <wen...@gmail.com> * * SPDX-License-Identifier: BSD-3-Clause * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4watcher.cpp new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4watcher.cpp --- old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4watcher.cpp 2023-08-14 20:09:07.002801700 +0200 +++ new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4watcher.cpp 2023-09-27 19:36:11.393018700 +0200 @@ -68,9 +68,8 @@ } Fcitx4Watcher::Fcitx4Watcher(QDBusConnection sessionBus, QObject *parent) - : QObject(parent), fsWatcher_(new QFileSystemWatcher(this)), - serviceWatcher_(new QDBusServiceWatcher(this)), connection_(nullptr), - sessionBus_(sessionBus), socketFile_(socketFile()), + : QObject(parent), connection_(nullptr), sessionBus_(sessionBus), + socketFile_(socketFile()), serviceName_(QString("org.fcitx.Fcitx-%1").arg(displayNumber())), availability_(false), uniqueConnectionName_(newUniqueConnectionName()) {} @@ -111,6 +110,7 @@ return; } + serviceWatcher_ = new QDBusServiceWatcher(this); connect(serviceWatcher_, &QDBusServiceWatcher::serviceOwnerChanged, this, &Fcitx4Watcher::imChanged); serviceWatcher_->setConnection(sessionBus_); @@ -130,8 +130,9 @@ if (!watched_) { return; } - disconnect(serviceWatcher_, &QDBusServiceWatcher::serviceOwnerChanged, this, - &Fcitx4Watcher::imChanged); + + delete serviceWatcher_; + serviceWatcher_ = nullptr; unwatchSocketFile(); cleanUpConnection(); mainPresent_ = false; @@ -227,6 +228,7 @@ QDir rt(QDir::root()); rt.mkpath(info.path()); } + fsWatcher_ = new QFileSystemWatcher(this); fsWatcher_->addPath(info.path()); if (info.exists()) { fsWatcher_->addPath(info.filePath()); @@ -239,14 +241,8 @@ } void Fcitx4Watcher::unwatchSocketFile() { - if (!fsWatcher_->files().isEmpty()) { - fsWatcher_->removePaths(fsWatcher_->files()); - } - if (!fsWatcher_->directories().isEmpty()) { - fsWatcher_->removePaths(fsWatcher_->directories()); - } - fsWatcher_->disconnect(SIGNAL(fileChanged(QString))); - fsWatcher_->disconnect(SIGNAL(directoryChanged(QString))); + delete fsWatcher_; + fsWatcher_ = nullptr; } void Fcitx4Watcher::imChanged(const QString &service, const QString &, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4watcher.h new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4watcher.h --- old/fcitx5-qt-5.1.0/qt5/platforminputcontext/fcitx4watcher.h 2023-08-14 20:09:07.002801700 +0200 +++ new/fcitx5-qt-5.1.1/qt5/platforminputcontext/fcitx4watcher.h 2023-09-27 19:36:11.393018700 +0200 @@ -52,8 +52,8 @@ void setAvailability(bool availability); void updateAvailability(); - QFileSystemWatcher *fsWatcher_; - QDBusServiceWatcher *serviceWatcher_; + QFileSystemWatcher *fsWatcher_ = nullptr; + QDBusServiceWatcher *serviceWatcher_ = nullptr; QDBusConnection *connection_; QDBusConnection sessionBus_; QString socketFile_; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fcitx5-qt-5.1.0/qt5/platforminputcontext/qfcitxplatforminputcontext.cpp new/fcitx5-qt-5.1.1/qt5/platforminputcontext/qfcitxplatforminputcontext.cpp --- old/fcitx5-qt-5.1.0/qt5/platforminputcontext/qfcitxplatforminputcontext.cpp 2023-08-14 20:09:07.002801700 +0200 +++ new/fcitx5-qt-5.1.1/qt5/platforminputcontext/qfcitxplatforminputcontext.cpp 2023-09-27 19:36:11.393018700 +0200 @@ -14,6 +14,7 @@ #include <QTextCharFormat> #include <QWidget> #include <QWindow> +#include <qnamespace.h> #include <qpa/qplatformcursor.h> #include <qpa/qplatformnativeinterface.h> #include <qpa/qplatformscreen.h> @@ -252,15 +253,25 @@ : 0) { registerFcitxQtDBusTypes(); watcher_->setWatchPortal(true); - watcher_->watch(); - fcitx4Watcher_->watch(); + + // Input context may be created without QApplication with wayland, defer it + // to event loop to ensure event dispatcher is avaiable. + QMetaObject::invokeMethod( + this, + [this]() { + watcher_->watch(); + fcitx4Watcher_->watch(); + }, + Qt::QueuedConnection); } QFcitxPlatformInputContext::~QFcitxPlatformInputContext() { destroy_ = true; watcher_->unwatch(); + fcitx4Watcher_->unwatch(); cleanUp(); delete watcher_; + delete fcitx4Watcher_; } bool QFcitxPlatformInputContext::objectAcceptsInputMethod() const {