Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package qt6-virtualkeyboard for
openSUSE:Factory checked in at 2026-08-21 16:51:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6-virtualkeyboard (Old)
and /work/SRC/openSUSE:Factory/.qt6-virtualkeyboard.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-virtualkeyboard"
Fri Aug 21 16:51:33 2026 rev:42 rq:1372268 version:6.11.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6-virtualkeyboard/qt6-virtualkeyboard.changes
2026-05-28 17:26:27.682532329 +0200
+++
/work/SRC/openSUSE:Factory/.qt6-virtualkeyboard.new.1258/qt6-virtualkeyboard.changes
2026-08-21 16:52:27.010112312 +0200
@@ -1,0 +2,6 @@
+Tue Aug 18 11:49:33 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.11.2
+ https://www.qt.io/blog/qt-6.11.2-released
+
+-------------------------------------------------------------------
Old:
----
qtvirtualkeyboard-everywhere-src-6.11.1.tar.xz
New:
----
qtvirtualkeyboard-everywhere-src-6.11.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ qt6-virtualkeyboard.spec ++++++
--- /var/tmp/diff_new_pack.dasOCg/_old 2026-08-21 16:52:27.926144884 +0200
+++ /var/tmp/diff_new_pack.dasOCg/_new 2026-08-21 16:52:27.927144920 +0200
@@ -16,7 +16,7 @@
#
-%define real_version 6.11.1
+%define real_version 6.11.2
%define short_version 6.11
%define tar_name qtvirtualkeyboard-everywhere-src
%define tar_suffix %{nil}
@@ -27,7 +27,7 @@
%endif
#
Name: qt6-virtualkeyboard%{?pkg_suffix}
-Version: 6.11.1
+Version: 6.11.2
Release: 0
Summary: Framework for writing or integrating input methods and engines
for Qt 6
License: GPL-3.0-only
++++++ qtvirtualkeyboard-everywhere-src-6.11.1.tar.xz ->
qtvirtualkeyboard-everywhere-src-6.11.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/qtvirtualkeyboard-everywhere-src-6.11.1/.cmake.conf
new/qtvirtualkeyboard-everywhere-src-6.11.2/.cmake.conf
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/.cmake.conf 2026-05-08
06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/.cmake.conf 2026-08-12
18:35:10.000000000 +0200
@@ -1,8 +1,9 @@
-set(QT_REPO_MODULE_VERSION "6.11.1")
+set(QT_REPO_MODULE_VERSION "6.11.2")
set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1")
set(QT_EXTRA_INTERNAL_TARGET_DEFINES
"QT_NO_CONTEXTLESS_CONNECT=1"
"QT_NO_FOREACH=1"
"QT_NO_QASCONST=1"
+ "QT_NO_SINGLE_ARGUMENT_QHASH_OVERLOAD=1"
"QT_NO_URL_CAST_FROM_STRING=1"
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/qtvirtualkeyboard-everywhere-src-6.11.1/.tag
new/qtvirtualkeyboard-everywhere-src-6.11.2/.tag
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/.tag 2026-05-08
06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/.tag 2026-08-12
18:35:10.000000000 +0200
@@ -1 +1 @@
-2eb5eda48077645a88609f7e6237cd5598253d8a
+043d7629ccb62ce09b8c30cba7cc2a97248dfea9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/dependencies.yaml
new/qtvirtualkeyboard-everywhere-src-6.11.2/dependencies.yaml
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/dependencies.yaml
2026-05-08 06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/dependencies.yaml
2026-08-12 18:35:10.000000000 +0200
@@ -1,13 +1,13 @@
dependencies:
../qtbase:
- ref: 59c81a3c2247b821b9b84b4eb8d939b77e07e276
+ ref: ef55f427f2c8b410d34f8a7681020a3000cf6866
required: true
../qtdeclarative:
- ref: a02bed441965ee1f18f856352c7d5ee5ba35d795
+ ref: 4e3399c26ec57246c08de019cfcbda8d23604cfa
required: true
../qtmultimedia:
- ref: 1cdfe8d416a173a85051e0028dd94d24311022e2
+ ref: 6f162ccac1425edbd7b4d1582fabab5973b43d6c
required: false
../qtsvg:
- ref: 2596f43da2dc72d2afecc084355b0f5f87922a6c
+ ref: 17ca512f903f935282ebeca496aac5d11ba4199a
required: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/components/Keyboard.qml
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/components/Keyboard.qml
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/src/components/Keyboard.qml
2026-05-08 06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/src/components/Keyboard.qml
2026-08-12 18:35:10.000000000 +0200
@@ -1057,7 +1057,11 @@
break
y -= height
}
- nextKey = keyOnPoint(x, y)
+ // Pixel-grid snapping in Qt Quick Layouts can
leave a
+ // sub-pixel gap next to fixed-width keys
(QTBUG-146018).
+ // The gap never contains an integer x, so
floor the scan
+ // position to avoid landing in it.
+ nextKey = keyOnPoint(Math.floor(x), y)
if (nextKey) {
// Check if key is visible. Only the
visible keys have keyPanelDelegate set.
if (nextKey != initialKey &&
nextKey.hasOwnProperty("keyPanelDelegate") && nextKey.keyPanelDelegate)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugin/plugin.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugin/plugin.h
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugin/plugin.h
2026-05-08 06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugin/plugin.h
2026-08-12 18:35:10.000000000 +0200
@@ -2,8 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#ifndef PLUGIN_H
-#define PLUGIN_H
+#pragma once
#include <qpa/qplatforminputcontextplugin_p.h>
@@ -20,5 +19,3 @@
};
QT_END_NAMESPACE
-
-#endif // PLUGIN_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/CMakeLists.txt
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/CMakeLists.txt
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/CMakeLists.txt
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/CMakeLists.txt
2026-08-12 18:35:10.000000000 +0200
@@ -14,8 +14,8 @@
DEPENDENCIES
QtQuick.VirtualKeyboard.Core/auto
SOURCES
- hangul.cpp hangul_p.h
- hangulinputmethod.cpp hangulinputmethod_p.h
+ hangul.cpp hangul.h
+ hangulinputmethod.cpp hangulinputmethod.h
DEFINES
QT_ASCII_CAST_WARNINGS
QT_NO_CAST_FROM_ASCII
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangul.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangul.cpp
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangul.cpp
2026-05-08 06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangul.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "hangul_p.h"
+#include "hangul.h"
QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangul.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangul.h
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangul.h
1970-01-01 01:00:00.000000000 +0100
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangul.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,112 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#include <QString>
+#include <QList>
+#include <QMap>
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class Hangul
+{
+ Q_DISABLE_COPY(Hangul)
+
+ enum HangulMedialIndex { // VIndex Letter Jungseong Double
Jamo
+ //
----------------------------------------------------------------------
+ HANGUL_MEDIAL_A, // 0 314F 1161
+ HANGUL_MEDIAL_AE, // 1 3150 1162
+ HANGUL_MEDIAL_YA, // 2 3151 1163
+ HANGUL_MEDIAL_YAE, // 3 3152 1164
+ HANGUL_MEDIAL_EO, // 4 3153 1165
+ HANGUL_MEDIAL_E, // 5 3154 1166
+ HANGUL_MEDIAL_YEO, // 6 3155 1167
+ HANGUL_MEDIAL_YE, // 7 3156 1168
+ HANGUL_MEDIAL_O, // 8 3157 1169
+ HANGUL_MEDIAL_WA, // 9 3158 116A
3157+314F
+ HANGUL_MEDIAL_WAE, // 10 3159 116B
3157+3150
+ HANGUL_MEDIAL_OE, // 11 315A 116C
3157+3163
+ HANGUL_MEDIAL_YO, // 12 315B 116D
+ HANGUL_MEDIAL_U, // 13 315C 116E
+ HANGUL_MEDIAL_WEO, // 14 315D 116F
315C+3153
+ HANGUL_MEDIAL_WE, // 15 315E 1170
315C+3154
+ HANGUL_MEDIAL_WI, // 16 315F 1171
315C+3163
+ HANGUL_MEDIAL_YU, // 17 3160 1172
+ HANGUL_MEDIAL_EU, // 18 3161 1173
+ HANGUL_MEDIAL_YI, // 19 3162 1174
3161+3163
+ HANGUL_MEDIAL_I // 20 3163 1175
+ };
+
+ enum HangulFinalIndex { // TIndex Letter Jongseong Double
Jamo
+ //
----------------------------------------------------------------------
+ HANGUL_FINAL_NONE, // 0 n/a n/a
+ HANGUL_FINAL_KIYEOK, // 1 3131 11A8
+ HANGUL_FINAL_SSANGKIYEOK, // 2 3132 11A9
+ HANGUL_FINAL_KIYEOK_SIOS, // 3 3133 11AA
3131+3145
+ HANGUL_FINAL_NIEUN, // 4 3134 11AB
+ HANGUL_FINAL_NIEUN_CIEUC, // 5 3135 11AC
3134+3148
+ HANGUL_FINAL_NIEUN_HIEUH, // 6 3136 11AD
3134+314E
+ HANGUL_FINAL_TIKEUT, // 7 3137 11AE
+ HANGUL_FINAL_RIEUL, // 8 3139 11AF
+ HANGUL_FINAL_RIEUL_KIYEOK, // 9 313A 11B0
3139+3131
+ HANGUL_FINAL_RIEUL_MIEUM, // 10 313B 11B1
3139+3141
+ HANGUL_FINAL_RIEUL_PIEUP, // 11 313C 11B2
3139+3142
+ HANGUL_FINAL_RIEUL_SIOS, // 12 313D 11B3
3139+3145
+ HANGUL_FINAL_RIEUL_THIEUTH, // 13 313E 11B4
3139+314C
+ HANGUL_FINAL_RIEUL_PHIEUPH, // 14 313F 11B5
3139+314D
+ HANGUL_FINAL_RIEUL_HIEUH, // 15 3140 11B6
3139+314E
+ HANGUL_FINAL_MIEUM, // 16 3141 11B7
+ HANGUL_FINAL_PIEUP, // 17 3142 11B8
+ HANGUL_FINAL_PIEUP_SIOS, // 18 3144 11B9
3142+3145
+ HANGUL_FINAL_SIOS, // 19 3145 11BA
+ HANGUL_FINAL_SSANGSIOS, // 20 3146 11BB
3145+3145
+ HANGUL_FINAL_IEUNG, // 21 3147 11BC
+ HANGUL_FINAL_CIEUC, // 22 3148 11BD
+ HANGUL_FINAL_CHIEUCH, // 23 314A 11BE
+ HANGUL_FINAL_KHIEUKH, // 24 314B 11BF
+ HANGUL_FINAL_THIEUTH, // 25 314C 11C0
+ HANGUL_FINAL_PHIEUPH, // 26 314D 11C1
+ HANGUL_FINAL_HIEUH // 27 314E 11C2
+ };
+
+ Hangul();
+
+public:
+ static QString decompose(const QString &source);
+ static QString compose(const QString &source);
+ static bool isJamo(const ushort &unicode);
+
+private:
+ static bool isMedial(HangulMedialIndex vowel);
+ static bool isFinal(HangulFinalIndex consonant);
+ static ushort findDoubleMedial(HangulMedialIndex vowel);
+ static ushort findDoubleFinal(HangulFinalIndex consonant);
+ static ushort packDoubleMedial(HangulMedialIndex a, HangulMedialIndex b);
+ static ushort packDoubleFinal(HangulFinalIndex a, HangulFinalIndex b);
+ static void unpackDoubleMedial(ushort key, HangulMedialIndex &a,
HangulMedialIndex &b);
+ static void unpackDoubleFinal(ushort key, HangulFinalIndex &a,
HangulFinalIndex &b);
+ static QMap<ushort, HangulMedialIndex> initDoubleMedialMap();
+ static QMap<ushort, HangulFinalIndex> initDoubleFinalMap();
+
+ static const QList<ushort> initials;
+ static const QList<ushort> finals;
+ static const QMap<ushort, HangulMedialIndex> doubleMedialMap;
+ static const QMap<ushort, HangulFinalIndex> doubleFinalMap;
+ static const int SBase;
+ static const int LBase;
+ static const int VBase;
+ static const int TBase;
+ static const int LCount;
+ static const int VCount;
+ static const int TCount;
+ static const int NCount;
+ static const int SCount;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangul_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangul_p.h
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangul_p.h
2026-05-08 06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangul_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,124 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef HANGUL_P_H
-#define HANGUL_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <QString>
-#include <QList>
-#include <QMap>
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class Hangul
-{
- Q_DISABLE_COPY(Hangul)
-
- enum HangulMedialIndex { // VIndex Letter Jungseong Double
Jamo
- //
----------------------------------------------------------------------
- HANGUL_MEDIAL_A, // 0 314F 1161
- HANGUL_MEDIAL_AE, // 1 3150 1162
- HANGUL_MEDIAL_YA, // 2 3151 1163
- HANGUL_MEDIAL_YAE, // 3 3152 1164
- HANGUL_MEDIAL_EO, // 4 3153 1165
- HANGUL_MEDIAL_E, // 5 3154 1166
- HANGUL_MEDIAL_YEO, // 6 3155 1167
- HANGUL_MEDIAL_YE, // 7 3156 1168
- HANGUL_MEDIAL_O, // 8 3157 1169
- HANGUL_MEDIAL_WA, // 9 3158 116A
3157+314F
- HANGUL_MEDIAL_WAE, // 10 3159 116B
3157+3150
- HANGUL_MEDIAL_OE, // 11 315A 116C
3157+3163
- HANGUL_MEDIAL_YO, // 12 315B 116D
- HANGUL_MEDIAL_U, // 13 315C 116E
- HANGUL_MEDIAL_WEO, // 14 315D 116F
315C+3153
- HANGUL_MEDIAL_WE, // 15 315E 1170
315C+3154
- HANGUL_MEDIAL_WI, // 16 315F 1171
315C+3163
- HANGUL_MEDIAL_YU, // 17 3160 1172
- HANGUL_MEDIAL_EU, // 18 3161 1173
- HANGUL_MEDIAL_YI, // 19 3162 1174
3161+3163
- HANGUL_MEDIAL_I // 20 3163 1175
- };
-
- enum HangulFinalIndex { // TIndex Letter Jongseong Double
Jamo
- //
----------------------------------------------------------------------
- HANGUL_FINAL_NONE, // 0 n/a n/a
- HANGUL_FINAL_KIYEOK, // 1 3131 11A8
- HANGUL_FINAL_SSANGKIYEOK, // 2 3132 11A9
- HANGUL_FINAL_KIYEOK_SIOS, // 3 3133 11AA
3131+3145
- HANGUL_FINAL_NIEUN, // 4 3134 11AB
- HANGUL_FINAL_NIEUN_CIEUC, // 5 3135 11AC
3134+3148
- HANGUL_FINAL_NIEUN_HIEUH, // 6 3136 11AD
3134+314E
- HANGUL_FINAL_TIKEUT, // 7 3137 11AE
- HANGUL_FINAL_RIEUL, // 8 3139 11AF
- HANGUL_FINAL_RIEUL_KIYEOK, // 9 313A 11B0
3139+3131
- HANGUL_FINAL_RIEUL_MIEUM, // 10 313B 11B1
3139+3141
- HANGUL_FINAL_RIEUL_PIEUP, // 11 313C 11B2
3139+3142
- HANGUL_FINAL_RIEUL_SIOS, // 12 313D 11B3
3139+3145
- HANGUL_FINAL_RIEUL_THIEUTH, // 13 313E 11B4
3139+314C
- HANGUL_FINAL_RIEUL_PHIEUPH, // 14 313F 11B5
3139+314D
- HANGUL_FINAL_RIEUL_HIEUH, // 15 3140 11B6
3139+314E
- HANGUL_FINAL_MIEUM, // 16 3141 11B7
- HANGUL_FINAL_PIEUP, // 17 3142 11B8
- HANGUL_FINAL_PIEUP_SIOS, // 18 3144 11B9
3142+3145
- HANGUL_FINAL_SIOS, // 19 3145 11BA
- HANGUL_FINAL_SSANGSIOS, // 20 3146 11BB
3145+3145
- HANGUL_FINAL_IEUNG, // 21 3147 11BC
- HANGUL_FINAL_CIEUC, // 22 3148 11BD
- HANGUL_FINAL_CHIEUCH, // 23 314A 11BE
- HANGUL_FINAL_KHIEUKH, // 24 314B 11BF
- HANGUL_FINAL_THIEUTH, // 25 314C 11C0
- HANGUL_FINAL_PHIEUPH, // 26 314D 11C1
- HANGUL_FINAL_HIEUH // 27 314E 11C2
- };
-
- Hangul();
-
-public:
- static QString decompose(const QString &source);
- static QString compose(const QString &source);
- static bool isJamo(const ushort &unicode);
-
-private:
- static bool isMedial(HangulMedialIndex vowel);
- static bool isFinal(HangulFinalIndex consonant);
- static ushort findDoubleMedial(HangulMedialIndex vowel);
- static ushort findDoubleFinal(HangulFinalIndex consonant);
- static ushort packDoubleMedial(HangulMedialIndex a, HangulMedialIndex b);
- static ushort packDoubleFinal(HangulFinalIndex a, HangulFinalIndex b);
- static void unpackDoubleMedial(ushort key, HangulMedialIndex &a,
HangulMedialIndex &b);
- static void unpackDoubleFinal(ushort key, HangulFinalIndex &a,
HangulFinalIndex &b);
- static QMap<ushort, HangulMedialIndex> initDoubleMedialMap();
- static QMap<ushort, HangulFinalIndex> initDoubleFinalMap();
-
- static const QList<ushort> initials;
- static const QList<ushort> finals;
- static const QMap<ushort, HangulMedialIndex> doubleMedialMap;
- static const QMap<ushort, HangulFinalIndex> doubleFinalMap;
- static const int SBase;
- static const int LBase;
- static const int VBase;
- static const int TBase;
- static const int LCount;
- static const int VCount;
- static const int TCount;
- static const int NCount;
- static const int SCount;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangulinputmethod.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangulinputmethod.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangulinputmethod.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangulinputmethod.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,8 +2,8 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "hangulinputmethod_p.h"
-#include "hangul_p.h"
+#include "hangulinputmethod.h"
+#include "hangul.h"
#include <QtVirtualKeyboard/qvirtualkeyboardinputcontext.h>
QT_BEGIN_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangulinputmethod.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangulinputmethod.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangulinputmethod.h
1970-01-01 01:00:00.000000000 +0100
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangulinputmethod.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,38 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class HangulInputMethodPrivate;
+
+class HangulInputMethod : public QVirtualKeyboardAbstractInputMethod
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(HangulInputMethod)
+ QML_ELEMENT
+ QML_ADDED_IN_VERSION(2, 0)
+
+public:
+ explicit HangulInputMethod(QObject *parent = nullptr);
+ ~HangulInputMethod();
+
+ QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
+ bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
+ bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
+
+ bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
+
+ void reset() override;
+ void update() override;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangulinputmethod_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangulinputmethod_p.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/hangul/hangulinputmethod_p.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/hangul/hangulinputmethod_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,50 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef HANGULINPUTMETHOD_P_H
-#define HANGULINPUTMETHOD_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class HangulInputMethodPrivate;
-
-class HangulInputMethod : public QVirtualKeyboardAbstractInputMethod
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(HangulInputMethod)
- QML_ELEMENT
- QML_ADDED_IN_VERSION(2, 0)
-
-public:
- explicit HangulInputMethod(QObject *parent = nullptr);
- ~HangulInputMethod();
-
- QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
- bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
- bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
-
- bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
-
- void reset() override;
- void update() override;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif // HANGULINPUTMETHOD_P_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/CMakeLists.txt
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/CMakeLists.txt
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/CMakeLists.txt
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/CMakeLists.txt
2026-08-12 18:35:10.000000000 +0200
@@ -16,7 +16,7 @@
DEPENDENCIES
QtQuick.VirtualKeyboard.Core/auto
SOURCES
- openwnninputmethod.cpp openwnninputmethod_p.h
+ openwnninputmethod.cpp openwnninputmethod.h
DEFINES
QT_ASCII_CAST_WARNINGS
QT_NO_CAST_FROM_ASCII
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/openwnninputmethod.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/openwnninputmethod.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/openwnninputmethod.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/openwnninputmethod.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "openwnninputmethod_p.h"
+#include "openwnninputmethod.h"
#include <QtVirtualKeyboard/qvirtualkeyboardinputcontext.h>
#include <QLoggingCategory>
#include <openwnnenginejajp.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/openwnninputmethod.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/openwnninputmethod.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/openwnninputmethod.h
1970-01-01 01:00:00.000000000 +0100
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/openwnninputmethod.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,47 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class OpenWnnInputMethodPrivate;
+
+class OpenWnnInputMethod : public QVirtualKeyboardAbstractInputMethod
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(OpenWnnInputMethod)
+ QML_NAMED_ELEMENT(JapaneseInputMethod)
+ QML_ADDED_IN_VERSION(2, 0)
+
+public:
+ explicit OpenWnnInputMethod(QObject *parent = nullptr);
+ ~OpenWnnInputMethod();
+
+ QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
+ bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
+ bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
+
+ bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
+
+ QList<QVirtualKeyboardSelectionListModel::Type> selectionLists() override;
+ int selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
override;
+ QVariant selectionListData(QVirtualKeyboardSelectionListModel::Type type,
int index,
+ QVirtualKeyboardSelectionListModel::Role role)
override;
+ void selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type
type, int index) override;
+
+ void reset() override;
+ void update() override;
+
+private:
+ QScopedPointer<OpenWnnInputMethodPrivate> d_ptr;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/openwnninputmethod_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/openwnninputmethod_p.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/openwnn/openwnninputmethod_p.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/openwnn/openwnninputmethod_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,59 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef OPENWNNINPUTMETHOD_P_H
-#define OPENWNNINPUTMETHOD_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class OpenWnnInputMethodPrivate;
-
-class OpenWnnInputMethod : public QVirtualKeyboardAbstractInputMethod
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(OpenWnnInputMethod)
- QML_NAMED_ELEMENT(JapaneseInputMethod)
- QML_ADDED_IN_VERSION(2, 0)
-
-public:
- explicit OpenWnnInputMethod(QObject *parent = nullptr);
- ~OpenWnnInputMethod();
-
- QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
- bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
- bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
-
- bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
-
- QList<QVirtualKeyboardSelectionListModel::Type> selectionLists() override;
- int selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
override;
- QVariant selectionListData(QVirtualKeyboardSelectionListModel::Type type,
int index,
- QVirtualKeyboardSelectionListModel::Role role)
override;
- void selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type
type, int index) override;
-
- void reset() override;
- void update() override;
-
-private:
- QScopedPointer<OpenWnnInputMethodPrivate> d_ptr;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/CMakeLists.txt
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/CMakeLists.txt
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/CMakeLists.txt
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/CMakeLists.txt
2026-08-12 18:35:10.000000000 +0200
@@ -16,8 +16,8 @@
DEPENDENCIES
QtQuick.VirtualKeyboard.Core/auto
SOURCES
- pinyindecoderservice.cpp pinyindecoderservice_p.h
- pinyininputmethod.cpp pinyininputmethod_p.h
+ pinyindecoderservice.cpp pinyindecoderservice.h
+ pinyininputmethod.cpp pinyininputmethod.h
DEFINES
QT_ASCII_CAST_WARNINGS
QT_NO_CAST_FROM_ASCII
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyindecoderservice.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyindecoderservice.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyindecoderservice.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyindecoderservice.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "pinyindecoderservice_p.h"
+#include "pinyindecoderservice.h"
#include "pinyinime.h"
#include "dictdef.h"
#include <QStandardPaths>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyindecoderservice.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyindecoderservice.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyindecoderservice.h
1970-01-01 01:00:00.000000000 +0100
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyindecoderservice.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,49 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#include <QObject>
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class PinyinDecoderService : public QObject
+{
+ Q_OBJECT
+ Q_DISABLE_COPY(PinyinDecoderService)
+ explicit PinyinDecoderService(QObject *parent = nullptr);
+
+public:
+ ~PinyinDecoderService();
+
+ static PinyinDecoderService *getInstance();
+
+ bool init();
+ void setUserDictionary(bool enabled);
+ bool isUserDictionaryEnabled() const;
+ void setLimits(int maxSpelling, int maxHzsLen);
+ int search(const QString &spelling);
+ int deleteSearch(int pos, bool isPosInSpellingId, bool
clearFixedInThisStep);
+ void resetSearch();
+ QString pinyinString(bool decoded);
+ int pinyinStringLength(bool decoded);
+ QList<int> spellingStartPositions();
+ QString candidateAt(int index);
+ QList<QString> fetchCandidates(int index, int count, int sentFixedLen);
+ int chooseCandidate(int index);
+ int cancelLastChoice();
+ int fixedLength();
+ void flushCache();
+ QList<QString> predictionList(const QString &history);
+
+private:
+ static QScopedPointer<PinyinDecoderService> _instance;
+ bool initDone;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyindecoderservice_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyindecoderservice_p.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyindecoderservice_p.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyindecoderservice_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef PINYINDECODERSERVICE_P_H
-#define PINYINDECODERSERVICE_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <QObject>
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class PinyinDecoderService : public QObject
-{
- Q_OBJECT
- Q_DISABLE_COPY(PinyinDecoderService)
- explicit PinyinDecoderService(QObject *parent = nullptr);
-
-public:
- ~PinyinDecoderService();
-
- static PinyinDecoderService *getInstance();
-
- bool init();
- void setUserDictionary(bool enabled);
- bool isUserDictionaryEnabled() const;
- void setLimits(int maxSpelling, int maxHzsLen);
- int search(const QString &spelling);
- int deleteSearch(int pos, bool isPosInSpellingId, bool
clearFixedInThisStep);
- void resetSearch();
- QString pinyinString(bool decoded);
- int pinyinStringLength(bool decoded);
- QList<int> spellingStartPositions();
- QString candidateAt(int index);
- QList<QString> fetchCandidates(int index, int count, int sentFixedLen);
- int chooseCandidate(int index);
- int cancelLastChoice();
- int fixedLength();
- void flushCache();
- QList<QString> predictionList(const QString &history);
-
-private:
- static QScopedPointer<PinyinDecoderService> _instance;
- bool initDone;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif // PINYINDECODERSERVICE_P_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyininputmethod.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyininputmethod.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyininputmethod.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyininputmethod.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,8 +2,8 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "pinyininputmethod_p.h"
-#include "pinyindecoderservice_p.h"
+#include "pinyininputmethod.h"
+#include "pinyindecoderservice.h"
#include <QtVirtualKeyboard/qvirtualkeyboardinputcontext.h>
#include <QLoggingCategory>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyininputmethod.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyininputmethod.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyininputmethod.h
1970-01-01 01:00:00.000000000 +0100
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyininputmethod.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,47 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class PinyinInputMethodPrivate;
+
+class PinyinInputMethod : public QVirtualKeyboardAbstractInputMethod
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(PinyinInputMethod)
+ QML_ELEMENT
+ QML_ADDED_IN_VERSION(2, 0)
+
+public:
+ explicit PinyinInputMethod(QObject *parent = nullptr);
+ ~PinyinInputMethod();
+
+ QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
+ bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
+ bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
+
+ bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
+
+ QList<QVirtualKeyboardSelectionListModel::Type> selectionLists() override;
+ int selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
override;
+ QVariant selectionListData(QVirtualKeyboardSelectionListModel::Type type,
int index,
+ QVirtualKeyboardSelectionListModel::Role role)
override;
+ void selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type
type, int index) override;
+
+ void reset() override;
+ void update() override;
+
+private:
+ QScopedPointer<PinyinInputMethodPrivate> d_ptr;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyininputmethod_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyininputmethod_p.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/pinyin/pinyininputmethod_p.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/pinyin/pinyininputmethod_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,59 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef PINYININPUTMETHOD_P_H
-#define PINYININPUTMETHOD_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class PinyinInputMethodPrivate;
-
-class PinyinInputMethod : public QVirtualKeyboardAbstractInputMethod
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(PinyinInputMethod)
- QML_ELEMENT
- QML_ADDED_IN_VERSION(2, 0)
-
-public:
- explicit PinyinInputMethod(QObject *parent = nullptr);
- ~PinyinInputMethod();
-
- QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
- bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
- bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
-
- bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
-
- QList<QVirtualKeyboardSelectionListModel::Type> selectionLists() override;
- int selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
override;
- QVariant selectionListData(QVirtualKeyboardSelectionListModel::Type type,
int index,
- QVirtualKeyboardSelectionListModel::Role role)
override;
- void selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type
type, int index) override;
-
- void reset() override;
- void update() override;
-
-private:
- QScopedPointer<PinyinInputMethodPrivate> d_ptr;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif // PINYININPUTMETHOD_P_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/CMakeLists.txt
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/CMakeLists.txt
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/CMakeLists.txt
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/CMakeLists.txt
2026-08-12 18:35:10.000000000 +0200
@@ -16,7 +16,7 @@
DEPENDENCIES
QtQuick.VirtualKeyboard.Core/auto
SOURCES
- tcinputmethod.cpp tcinputmethod_p.h
+ tcinputmethod.cpp tcinputmethod.h
DEFINES
QT_ASCII_CAST_WARNINGS
QT_NO_CAST_FROM_ASCII
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/tcinputmethod.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/tcinputmethod.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/tcinputmethod.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/tcinputmethod.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "tcinputmethod_p.h"
+#include "tcinputmethod.h"
#include <QtVirtualKeyboard/qvirtualkeyboardinputengine.h>
#include <QtVirtualKeyboard/qvirtualkeyboardinputcontext.h>
#if QT_CONFIG(cangjie)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/tcinputmethod.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/tcinputmethod.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/tcinputmethod.h
1970-01-01 01:00:00.000000000 +0100
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/tcinputmethod.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,55 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#include <QtVirtualKeyboard/private/qvirtualkeyboard_global_p.h>
+#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class TCInputMethodPrivate;
+
+class TCInputMethod : public QVirtualKeyboardAbstractInputMethod
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(TCInputMethod)
+ Q_PROPERTY(bool simplified READ simplified WRITE setSimplified NOTIFY
simplifiedChanged)
+ QML_ELEMENT
+ QML_ADDED_IN_VERSION(2, 0)
+
+public:
+ explicit TCInputMethod(QObject *parent = nullptr);
+ ~TCInputMethod();
+
+ bool simplified() const;
+ void setSimplified(bool simplified);
+
+ QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
+ bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
+ bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
+
+ bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
+
+ QList<QVirtualKeyboardSelectionListModel::Type> selectionLists() override;
+ int selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
override;
+ QVariant selectionListData(QVirtualKeyboardSelectionListModel::Type type,
int index,
+ QVirtualKeyboardSelectionListModel::Role role)
override;
+ void selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type
type, int index) override;
+
+ void reset() override;
+ void update() override;
+
+signals:
+ void simplifiedChanged();
+
+private:
+ QScopedPointer<TCInputMethodPrivate> d_ptr;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/tcinputmethod_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/tcinputmethod_p.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/tcime/tcinputmethod_p.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/tcime/tcinputmethod_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,67 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef TCINPUTMETHOD_P_H
-#define TCINPUTMETHOD_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <QtVirtualKeyboard/private/qvirtualkeyboard_global_p.h>
-#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class TCInputMethodPrivate;
-
-class TCInputMethod : public QVirtualKeyboardAbstractInputMethod
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(TCInputMethod)
- Q_PROPERTY(bool simplified READ simplified WRITE setSimplified NOTIFY
simplifiedChanged)
- QML_ELEMENT
- QML_ADDED_IN_VERSION(2, 0)
-
-public:
- explicit TCInputMethod(QObject *parent = nullptr);
- ~TCInputMethod();
-
- bool simplified() const;
- void setSimplified(bool simplified);
-
- QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
- bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
- bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
-
- bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
-
- QList<QVirtualKeyboardSelectionListModel::Type> selectionLists() override;
- int selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
override;
- QVariant selectionListData(QVirtualKeyboardSelectionListModel::Type type,
int index,
- QVirtualKeyboardSelectionListModel::Role role)
override;
- void selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type
type, int index) override;
-
- void reset() override;
- void update() override;
-
-signals:
- void simplifiedChanged();
-
-private:
- QScopedPointer<TCInputMethodPrivate> d_ptr;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/CMakeLists.txt
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/CMakeLists.txt
--- old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/CMakeLists.txt
2026-05-08 06:33:29.000000000 +0200
+++ new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/CMakeLists.txt
2026-08-12 18:35:10.000000000 +0200
@@ -14,7 +14,7 @@
DEPENDENCIES
QtQuick.VirtualKeyboard.Core/auto
SOURCES
- thaiinputmethod.cpp thaiinputmethod_p.h
+ thaiinputmethod.cpp thaiinputmethod.h
DEFINES
QT_ASCII_CAST_WARNINGS
QT_NO_CAST_FROM_ASCII
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/thaiinputmethod.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/thaiinputmethod.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/thaiinputmethod.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/thaiinputmethod.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Qt-Security score:significant reason:default
-#include "thaiinputmethod_p.h"
+#include "thaiinputmethod.h"
#include <QtVirtualKeyboard/qvirtualkeyboardinputengine.h>
#include <QtVirtualKeyboard/qvirtualkeyboardinputcontext.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/thaiinputmethod.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/thaiinputmethod.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/thaiinputmethod.h
1970-01-01 01:00:00.000000000 +0100
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/thaiinputmethod.h
2026-08-12 18:35:10.000000000 +0200
@@ -0,0 +1,42 @@
+// Copyright (C) 2018 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+// Qt-Security score:significant reason:default
+
+#pragma once
+
+#ifdef QT_HUNSPELLINPUTMETHOD_LIB
+#include <QtHunspellInputMethod/private/hunspellinputmethod_p.h>
+#define ThaiInputMethodBase HunspellInputMethod
+#else
+#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
+#define ThaiInputMethodBase QVirtualKeyboardAbstractInputMethod
+#endif
+
+QT_BEGIN_NAMESPACE
+
+namespace QtVirtualKeyboard {
+
+class ThaiInputMethodPrivate;
+
+class ThaiInputMethod : public ThaiInputMethodBase
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(ThaiInputMethod)
+ QML_ELEMENT
+ QML_ADDED_IN_VERSION(2, 0)
+
+public:
+ explicit ThaiInputMethod(QObject *parent = nullptr);
+
+#ifndef QT_HUNSPELLINPUTMETHOD_LIB
+ QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
+ bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
+ bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
+#endif
+
+ bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
+};
+
+} // namespace QtVirtualKeyboard
+
+QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/thaiinputmethod_p.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/thaiinputmethod_p.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/plugins/thai/thaiinputmethod_p.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/plugins/thai/thaiinputmethod_p.h
1970-01-01 01:00:00.000000000 +0100
@@ -1,43 +0,0 @@
-// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-// Qt-Security score:significant reason:default
-
-#ifndef THAIINPUTMETHOD_H
-#define THAIINPUTMETHOD_H
-
-#ifdef QT_HUNSPELLINPUTMETHOD_LIB
-#include <QtHunspellInputMethod/private/hunspellinputmethod_p.h>
-#define ThaiInputMethodBase HunspellInputMethod
-#else
-#include <QtVirtualKeyboard/qvirtualkeyboardabstractinputmethod.h>
-#define ThaiInputMethodBase QVirtualKeyboardAbstractInputMethod
-#endif
-
-QT_BEGIN_NAMESPACE
-namespace QtVirtualKeyboard {
-
-class ThaiInputMethodPrivate;
-
-class ThaiInputMethod : public ThaiInputMethodBase
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(ThaiInputMethod)
- QML_ELEMENT
- QML_ADDED_IN_VERSION(2, 0)
-
-public:
- explicit ThaiInputMethod(QObject *parent = nullptr);
-
-#ifndef QT_HUNSPELLINPUTMETHOD_LIB
- QList<QVirtualKeyboardInputEngine::InputMode> inputModes(const QString
&locale) override;
- bool setInputMode(const QString &locale,
QVirtualKeyboardInputEngine::InputMode inputMode) override;
- bool setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) override;
-#endif
-
- bool keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers
modifiers) override;
-};
-
-} // namespace QtVirtualKeyboard
-QT_END_NAMESPACE
-
-#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/settings/qquickvirtualkeyboardsettings.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/settings/qquickvirtualkeyboardsettings.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/settings/qquickvirtualkeyboardsettings.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/settings/qquickvirtualkeyboardsettings.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -548,7 +548,8 @@
focused input field to the fullscreen input field located at the top of the
keyboard.
- \image shadow-input.png
+ \image shadow-input.png {Keyboard in fullscreen mode with the focused
+ field contents replicated in a bar above the keys}
For example, to activate the fullscreen mode when the screen aspect ratio
is greater than 16:9:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/desktopinputpanel.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/desktopinputpanel.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/desktopinputpanel.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/desktopinputpanel.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -48,6 +48,8 @@
}
QScopedPointer<InputView> view;
+ QMetaObject::Connection m_focusWindowVisibleConnection;
+ QMetaObject::Connection m_focusWindowScreenConnection;
QPointer<QScreen> m_screen;
QRectF keyboardRect;
QRectF previewRect;
@@ -171,12 +173,16 @@
void DesktopInputPanel::focusWindowChanged(QWindow *focusWindow)
{
- disconnect(this, SLOT(focusWindowVisibleChanged(bool)));
- disconnect(this, SLOT(screenChanged(QScreen*)));
+ Q_D(DesktopInputPanel);
+ disconnect(d->m_focusWindowVisibleConnection);
+ disconnect(d->m_focusWindowScreenConnection);
if (focusWindow) {
- connect(focusWindow, &QWindow::visibleChanged, this,
&DesktopInputPanel::focusWindowVisibleChanged);
- connect(focusWindow, &QWindow::screenChanged, this,
&DesktopInputPanel::screenChanged,
- Qt::UniqueConnection);
+ d->m_focusWindowVisibleConnection =
+ connect(focusWindow, &QWindow::visibleChanged,
+ this, &DesktopInputPanel::focusWindowVisibleChanged);
+ d->m_focusWindowScreenConnection =
+ connect(focusWindow, &QWindow::screenChanged,
+ this, &DesktopInputPanel::screenChanged);
screenChanged(focusWindow->screen());
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/qtvirtualkeyboard.qdocconf
2026-08-12 18:35:10.000000000 +0200
@@ -61,3 +61,6 @@
# Enforce zero documentation warnings
warninglimit = 0
+
+# Report warnings for images without alt text
+reportmissingalttextforimages = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/src/handwriting.qdoc
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/src/handwriting.qdoc
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/src/handwriting.qdoc
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/src/handwriting.qdoc
2026-08-12 18:35:10.000000000 +0200
@@ -10,7 +10,8 @@
Qt Virtual Keyboard supports handwriting recognition through open source and
commercially-licensed engines.
-\image handwriting.gif
+\image handwriting.gif {Compact handwriting panel recognizing the word hello
+ handwritten stroke by stroke in the writing area}
There are two modes in which to write: using the more compact handwriting panel
(as shown above), or \l {HandwritingInputPanel}{fullscreen}.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/src/qtvirtualkeyboard-examples.qdoc
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/src/qtvirtualkeyboard-examples.qdoc
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/src/qtvirtualkeyboard-examples.qdoc
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/src/qtvirtualkeyboard-examples.qdoc
2026-08-12 18:35:10.000000000 +0200
@@ -14,6 +14,8 @@
\brief This example shows how to use the virtual keyboard in a Qt Quick
application.
\ingroup qtvirtualkeyboard-examples
\image basic-example.webp
+ {Application window with labeled text fields above the virtual
+ keyboard for entering text}
\meta tags {quick}
The example has two implementations: one for desktop
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/src/user-guide.qdoc
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/src/user-guide.qdoc
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/doc/src/user-guide.qdoc
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/doc/src/user-guide.qdoc
2026-08-12 18:35:10.000000000 +0200
@@ -20,7 +20,8 @@
The language can be changed by pressing the language key, which is illustrated
with a "globe" icon:
-\image language-icon.png
+\image language-icon.png {Keyboard bottom row with the globe language key
+ highlighted next to the space bar showing British English}
The current language is displayed on the space bar key.
@@ -29,7 +30,8 @@
The handwriting mode can be activated by pressing the handwriting key:
-\image handwriting-mode-icon.png
+\image handwriting-mode-icon.png {Keyboard bottom row with the cursive
+ handwriting key highlighted between the globe key and the space bar}
\section2 Gestures
@@ -40,32 +42,32 @@
\li MyScript Text SDK
\row
\li Backspace
- \li \image gesture-single-left.png
- \li \image gesture-single-left.png
- \li \image gesture-single-left.png
+ \li \image gesture-single-left.png {Arrow pointing left}
+ \li \image gesture-single-left.png {Arrow pointing left}
+ \li \image gesture-single-left.png {Arrow pointing left}
\row
\li Space
- \li \image gesture-single-right.png
- \li \image gesture-single-right.png
- \li \image gesture-single-left.png
+ \li \image gesture-single-right.png {Arrow pointing right}
+ \li \image gesture-single-right.png {Arrow pointing right}
+ \li \image gesture-single-left.png {Arrow pointing left}
\row
\li Enter
\li Gesture not available
- \li \image gesture-single-down-left.png
- \li \image gesture-single-down-left.png
+ \li \image gesture-single-down-left.png {Arrow pointing down then left}
+ \li \image gesture-single-down-left.png {Arrow pointing down then left}
\row
\li Reset word
- \li \image gesture-double-left.png
+ \li \image gesture-double-left.png {Two arrows pointing left}
\li Gesture not available
\li Gesture not available
\row
\li Toggle input mode
- \li \image gesture-single-up.png
+ \li \image gesture-single-up.png {Arrow pointing up}
\li Gesture not available
\li Gesture not available
\row
\li Toggle text case
- \li \image gesture-double-up.png
+ \li \image gesture-double-up.png {Two arrows pointing up}
\li Gesture not available
\li Gesture not available
\endtable
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/qvirtualkeyboardinputengine.h
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/qvirtualkeyboardinputengine.h
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/qvirtualkeyboardinputengine.h
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/qvirtualkeyboardinputengine.h
2026-08-12 18:35:10.000000000 +0200
@@ -148,7 +148,6 @@
friend class QVirtualKeyboardInputContextPrivate;
};
-Q_DECL_CONST_FUNCTION Q_DECL_CONSTEXPR inline uint
qHash(QVirtualKeyboardInputEngine::InputMode key, uint seed = 0) Q_DECL_NOTHROW
{ return uint(key) ^ seed; }
Q_DECLARE_OPERATORS_FOR_FLAGS(QVirtualKeyboardInputEngine::ReselectFlags)
QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/settings.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/settings.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/settings.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/settings.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -29,7 +29,7 @@
wclAlwaysVisible(false),
wclAutoCommitWord(false),
fullScreenMode(false),
- userDataPath(defaultUserDataPath),
+ userDataPath(defaultUserDataPath()),
hwrTimeoutForAlphabetic(defaultHwrTimeoutForAlphabetic),
hwrTimeoutForCjk(defaultHwrTimeoutForCjk),
handwritingModeDisabled(false),
@@ -56,6 +56,13 @@
}
}
+ static QString defaultUserDataPath()
+ {
+ static const QString path = u"%1/qtvirtualkeyboard"_s
+
.arg(QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation));
+ return path;
+ }
+
QString style;
QString styleName;
QString locale;
@@ -79,14 +86,10 @@
bool arrowKeyNavigationEnabled;
static const int defaultWclAutoHideDelay = 5000;
- static const QString defaultUserDataPath;
static const int defaultHwrTimeoutForAlphabetic = 500;
static const int defaultHwrTimeoutForCjk = 500;
};
-const QString SettingsPrivate::defaultUserDataPath = u"%1/qtvirtualkeyboard"_s
-
.arg(QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation));
-
static QScopedPointer<Settings> s_settingsInstance;
/*!
@@ -334,7 +337,7 @@
void Settings::resetUserDataPath()
{
- setUserDataPath(SettingsPrivate::defaultUserDataPath);
+ setUserDataPath(SettingsPrivate::defaultUserDataPath());
}
int Settings::hwrTimeoutForAlphabetic() const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/shifthandler.cpp
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/shifthandler.cpp
---
old/qtvirtualkeyboard-everywhere-src-6.11.1/src/virtualkeyboard/shifthandler.cpp
2026-05-08 06:33:29.000000000 +0200
+++
new/qtvirtualkeyboard-everywhere-src-6.11.2/src/virtualkeyboard/shifthandler.cpp
2026-08-12 18:35:10.000000000 +0200
@@ -12,16 +12,68 @@
#include <QElapsedTimer>
#include <QStyleHints>
+#include <QtCore/q20algorithm.h>
+
QT_BEGIN_NAMESPACE
using namespace Qt::StringLiterals;
-size_t qHash(QLocale::Language lang, size_t seed)
+namespace QtVirtualKeyboard {
+
+template <typename T, size_t N>
+class SmallEnumSet
{
- return qHash(ushort(lang), seed);
-}
+ Q_DISABLE_COPY_MOVE(SmallEnumSet)
+ std::array<T, N> m_data;
+public:
+ // Need a ctor: CTAD doesn't work on aggregates in C++17:
+ constexpr SmallEnumSet(std::array<T, N> data) : m_data{data} {}
-namespace QtVirtualKeyboard {
+ constexpr bool contains(T t) const
+ {
+ return std::find(m_data.begin(), m_data.end(), t) != m_data.end();
+ }
+
+ constexpr bool isSorted() const
+ {
+ return q20::is_sorted(m_data.begin(), m_data.end());
+ }
+};
+
+constexpr SmallEnumSet manualShiftLanguageFilter = std::array{
+ QLocale::Arabic,
+ QLocale::Hindi,
+ QLocale::Korean,
+ QLocale::Persian,
+ QLocale::Thai,
+};
+static_assert(manualShiftLanguageFilter.isSorted(), "just in case");
+
+constexpr SmallEnumSet manualCapsInputModeFilter = std::array{
+ QVirtualKeyboardInputEngine::InputMode::Cangjie,
+ QVirtualKeyboardInputEngine::InputMode::Zhuyin,
+ QVirtualKeyboardInputEngine::InputMode::Hebrew,
+};
+static_assert(manualCapsInputModeFilter.isSorted(), "just in case");
+
+constexpr SmallEnumSet noAutoUppercaseInputModeFilter = std::array{
+ QVirtualKeyboardInputEngine::InputMode::Pinyin,
+ QVirtualKeyboardInputEngine::InputMode::Cangjie,
+ QVirtualKeyboardInputEngine::InputMode::Zhuyin,
+ QVirtualKeyboardInputEngine::InputMode::FullwidthLatin,
+ QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting,
+ QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting,
+ QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting,
+ QVirtualKeyboardInputEngine::InputMode::Romaji,
+};
+static_assert(noAutoUppercaseInputModeFilter.isSorted(), "just in case");
+
+constexpr SmallEnumSet allCapsInputModeFilter = std::array{
+ QVirtualKeyboardInputEngine::InputMode::Hiragana,
+ QVirtualKeyboardInputEngine::InputMode::Katakana,
+ QVirtualKeyboardInputEngine::InputMode::HiraganaFlick,
+};
+static_assert(allCapsInputModeFilter.isSorted(), "just in case");
class ShiftHandlerPrivate : public QObjectPrivate
{
@@ -36,11 +88,7 @@
shiftChanged(false),
shiftBeforeCapsLock(false),
capsLock(false),
- resetWhenVisible(false),
- manualShiftLanguageFilter(QSet<QLocale::Language>() << QLocale::Arabic
<< QLocale::Persian << QLocale::Hindi << QLocale::Korean << QLocale::Thai),
-
manualCapsInputModeFilter(QSet<QVirtualKeyboardInputEngine::InputMode>() <<
QVirtualKeyboardInputEngine::InputMode::Cangjie <<
QVirtualKeyboardInputEngine::InputMode::Zhuyin <<
QVirtualKeyboardInputEngine::InputMode::Hebrew),
-
noAutoUppercaseInputModeFilter(QSet<QVirtualKeyboardInputEngine::InputMode>()
<< QVirtualKeyboardInputEngine::InputMode::FullwidthLatin <<
QVirtualKeyboardInputEngine::InputMode::Pinyin <<
QVirtualKeyboardInputEngine::InputMode::Cangjie <<
QVirtualKeyboardInputEngine::InputMode::Zhuyin <<
QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting <<
QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting <<
QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting <<
QVirtualKeyboardInputEngine::InputMode::Romaji),
- allCapsInputModeFilter(QSet<QVirtualKeyboardInputEngine::InputMode>()
<< QVirtualKeyboardInputEngine::InputMode::Hiragana <<
QVirtualKeyboardInputEngine::InputMode::HiraganaFlick <<
QVirtualKeyboardInputEngine::InputMode::Katakana)
+ resetWhenVisible(false)
{
}
@@ -55,10 +103,6 @@
bool resetWhenVisible;
QLocale locale;
QElapsedTimer timer;
- const QSet<QLocale::Language> manualShiftLanguageFilter;
- const QSet<QVirtualKeyboardInputEngine::InputMode>
manualCapsInputModeFilter;
- const QSet<QVirtualKeyboardInputEngine::InputMode>
noAutoUppercaseInputModeFilter;
- const QSet<QVirtualKeyboardInputEngine::InputMode> allCapsInputModeFilter;
};
/*!
@@ -202,10 +246,10 @@
Q_D(ShiftHandler);
if (!d->toggleShiftEnabled)
return;
- if (d->manualShiftLanguageFilter.contains(d->locale.language())) {
+ if (manualShiftLanguageFilter.contains(d->locale.language())) {
setCapsLockActive(false);
setShiftActive(!d->shift);
- } else if
(d->manualCapsInputModeFilter.contains(d->inputContext->inputEngine()->inputMode()))
{
+ } else if
(manualCapsInputModeFilter.contains(d->inputContext->inputEngine()->inputMode()))
{
bool capsLock = d->capsLock;
setCapsLockActive(!capsLock);
setShiftActive(!capsLock);
@@ -248,16 +292,16 @@
bool autoCapitalizationEnabled = !(d->inputContext->inputMethodHints()
& (Qt::ImhNoAutoUppercase |
Qt::ImhUppercaseOnly | Qt::ImhLowercaseOnly |
Qt::ImhEmailCharactersOnly |
Qt::ImhUrlCharactersOnly | Qt::ImhDialableCharactersOnly |
Qt::ImhFormattedNumbersOnly |
- Qt::ImhDigitsOnly)) &&
!d->noAutoUppercaseInputModeFilter.contains(inputMode);
+ Qt::ImhDigitsOnly)) &&
!noAutoUppercaseInputModeFilter.contains(inputMode);
bool toggleShiftEnabled = !(inputMethodHints & (Qt::ImhUppercaseOnly |
Qt::ImhLowercaseOnly));
// For filtered languages reset the initial shift status to lower case
// and allow manual shift change
- if (d->manualShiftLanguageFilter.contains(d->locale.language()) ||
- d->manualCapsInputModeFilter.contains(inputMode)) {
+ if (manualShiftLanguageFilter.contains(d->locale.language()) ||
+ manualCapsInputModeFilter.contains(inputMode)) {
preferUpperCase = false;
autoCapitalizationEnabled = false;
toggleShiftEnabled = true;
- } else if (d->allCapsInputModeFilter.contains(inputMode)) {
+ } else if (allCapsInputModeFilter.contains(inputMode)) {
preferUpperCase = true;
autoCapitalizationEnabled = false;
toggleShiftEnabled = false;