aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJarkko Koivikko <jarkko.koivikko@code-q.fi>2018-05-27 12:12:06 +0300
committerMitch Curtis <mitch.curtis@qt.io>2018-08-06 08:20:01 +0000
commit59208edaaf40be982904a6c8cad4eab2d14f938e (patch)
treea613276e1f785e6cd82d019f01dbe478c7cebc5d
parent263a16009e8d08004a546954cd7b2671c26fab9e (diff)
Modularize virtual keyboard and add an extension interface
With the extension interface it is possible to add new input method and/or languages without recompiling the Qt Virtual Keyboard plugin itself. The existing input methods are now isolated into plugins. So installing a new input method is a matter of copying the corresponding extension plugin to the plugins/virtualkeyboard directory (and any collateral required by the extension plugin itself). This change also renames the HunspellInputMethod to DefaultInputMethod. This change is necessary because some other extension plugin may want to provide the default input method instead. Implementation plan =================== [x] Create virtualkeyboard-private module [x] Create plugin library [x] Define interface for input method plugin [x] Define interface for keyboard layouts [x] Move existing input methods and layouts to plugins [x] HangulInputMethod [x] HunspellInputMethod [x] Maybe create a private library for sharing between HunspellInputMethod and LipiInputMethod [x] LipiInputMethod [x] OpenWnnInputMethod [x] PinyinInputMethod [x] T9WriteInputMethod [x] TCInputMethod [o] Rename some C++ classes (too generic name?) [x] Think again replacing the QtVirtualKeyboard namespace [x] Update documentation [x] General instructions for creating a plugin [x] For the C++ interfaces too (previously removed) [ChangeLog][Important Behavior Changes] Introduce an extension interface for the virtual keyboard. All the current input methods and some special keyboard layouts (e.g. Hunspell, OpenWnn, etc.) have been moved to extensions. The extension interface allows third party to create a new input method without having to modify or rebuild the virtual keyboard. In addition, this change makes it possible to add features and languages independently by copying the desired extension to the system. [ChangeLog][Important Behavior Changes] Introduce a virtualkeyboard module, which can be linked against an extension plugin. This module provides the C++ API necessary for creating an input method. [ChangeLog][Important Behavior Changes] Wrap the entire virtual keyboard API into Qt namespace (e.g. QT_BEGIN_NAMESPACE/QT_END_NAMESPACE). Task-number: QTBUG-57602 Change-Id: I449f4429109f596a7a1df7517c81f97d4aada27c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
-rw-r--r--.gitignore14
-rw-r--r--src/config.pri22
-rw-r--r--src/import/import.pro (renamed from src/virtualkeyboard/import/import.pro)0
-rw-r--r--src/import/plugins.qmltypes (renamed from src/virtualkeyboard/import/plugins.qmltypes)0
-rw-r--r--src/import/qmldir (renamed from src/virtualkeyboard/import/qmldir)0
-rw-r--r--src/plugin/extensionloader.cpp114
-rw-r--r--src/plugin/extensionloader.h59
-rw-r--r--src/plugin/plugin.cpp (renamed from src/virtualkeyboard/plugin.cpp)131
-rw-r--r--src/plugin/plugin.h (renamed from src/virtualkeyboard/plugin.h)6
-rw-r--r--src/plugin/plugin.pro23
-rw-r--r--src/plugin/qtvirtualkeyboard.json (renamed from src/virtualkeyboard/qtvirtualkeyboard.json)0
-rw-r--r--src/plugins/hangul/hangul.cpp (renamed from src/virtualkeyboard/hangul.cpp)4
-rw-r--r--src/plugins/hangul/hangul.json6
-rw-r--r--src/plugins/hangul/hangul.pro33
-rw-r--r--src/plugins/hangul/hangul_p.h (renamed from src/virtualkeyboard/hangul.h)17
-rw-r--r--src/plugins/hangul/hangulinputmethod.cpp (renamed from src/virtualkeyboard/hangulinputmethod.cpp)10
-rw-r--r--src/plugins/hangul/hangulinputmethod_p.h (renamed from src/virtualkeyboard/hangulinputmethod.h)21
-rw-r--r--src/plugins/hangul/hangulplugin.cpp44
-rw-r--r--src/plugins/hangul/hangulplugin.h49
-rw-r--r--src/plugins/hunspell/3rdparty/hunspell/hunspell.pro (renamed from src/virtualkeyboard/3rdparty/hunspell/hunspell.pro)0
-rw-r--r--src/plugins/hunspell/hunspell.pro13
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.cpp (renamed from src/virtualkeyboard/hunspellinputmethod.cpp)17
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.pro23
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p.cpp (renamed from src/virtualkeyboard/hunspellinputmethod_p.cpp)8
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p.h (renamed from src/virtualkeyboard/hunspellinputmethod.h)28
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p_p.h (renamed from src/virtualkeyboard/hunspellinputmethod_p.h)25
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellworker.cpp (renamed from src/virtualkeyboard/hunspellworker.cpp)26
-rw-r--r--src/plugins/hunspell/hunspellinputmethod/hunspellworker_p.h (renamed from src/virtualkeyboard/hunspellworker.h)19
-rw-r--r--src/plugins/hunspell/plugin/hunspell.json6
-rw-r--r--src/plugins/hunspell/plugin/hunspellplugin.cpp45
-rw-r--r--src/plugins/hunspell/plugin/hunspellplugin.h49
-rw-r--r--src/plugins/hunspell/plugin/plugin.pro34
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/MIT_LICENSE.txt (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/MIT_LICENSE.txt)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/license.txt (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/license.txt)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/lipi-toolkit.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/lipi-toolkit.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.mdt (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.mdt)bin11505083 -> 11505083 bytes
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/profile.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/profile.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/project.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/project.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/unicodeMapfile_alphanumeric.ini (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/unicodeMapfile_alphanumeric.ini)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.mdt (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.mdt)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/profile.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/profile.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/project.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/project.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/unicodeMapfile_demonumerals.ini (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/unicodeMapfile_demonumerals.ini)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/lipiengine.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/qt_attribution.json (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/qt_attribution.json)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKCaptureDevice.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKCaptureDevice.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKChannel.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKChannel.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKException.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKException.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKScreenContext.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKScreenContext.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTrace.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTrace.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTraceFormat.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTraceFormat.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTraceGroup.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTraceGroup.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/common.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/common.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKCaptureDevice.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKCaptureDevice.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKChannel.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKChannel.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKClassifierDefaults.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKClassifierDefaults.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKErrorsList.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKErrorsList.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKException.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKException.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKInc.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKInc.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLogger.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLogger.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLoggerInterface.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLoggerInterface.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKMacros.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKOSUtilFactory.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtilFactory.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocDefaults.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocDefaults.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocessor.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocessor.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocessorInterface.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocessorInterface.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKRecognitionContext.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKRecognitionContext.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKRefCountedPtr.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKRefCountedPtr.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKScreenContext.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKScreenContext.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeFeatureMacros.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeFeatureMacros.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoConfig.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoConfig.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoEngine.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoEngine.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoResult.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoResult.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecognizer.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecognizer.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTrace.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTrace.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTraceFormat.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTraceFormat.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTraceGroup.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTraceGroup.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTypes.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecoConfig.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecoConfig.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecoResult.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecoResult.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecognizer.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecognizer.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/TpcError.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/TpcError.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/headers.pri (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/headers.pri)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipicommon.pri (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipicommon.pri)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/version.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/version.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipilib.pri (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipilib.pri)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiplugin.pri (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiplugin.pri)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/reco.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/reco.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoConfig.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoConfig.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoResult.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoResult.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoUtil.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoUtil.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecognizer.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecognizer.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/common.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/common.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeature.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeature.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/common.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/common.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/featureextractor.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/featureextractor.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/npen.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/npen.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/pointfloat.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/pointfloat.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/substroke.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/substroke.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/LTKPreprocessor.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/LTKPreprocessor.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/shaperec.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/shaperec.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cfg (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cfg)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKRecognitionContext.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKRecognitionContext.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoConfig.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoConfig.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoResult.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoResult.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/common.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/common.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/wordrec.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/wordrec.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/src.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKDynamicTimeWarping.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKDynamicTimeWarping.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKHierarchicalClustering.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKHierarchicalClustering.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKOSUtilFactory.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKOSUtilFactory.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/lib.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/lib.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/LTKLogger.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/LTKLogger.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.cpp (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.cpp)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.def (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.def)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.h (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.h)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro)0
-rw-r--r--src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/util.pro (renamed from src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/util.pro)0
-rw-r--r--src/plugins/lipi-toolkit/lipi-toolkit.pro7
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipi.json6
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipiinputmethod.cpp (renamed from src/virtualkeyboard/lipiinputmethod.cpp)48
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipiinputmethod_p.h (renamed from src/virtualkeyboard/lipiinputmethod.h)24
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipiplugin.cpp43
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipiplugin.h49
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipisharedrecognizer.cpp (renamed from src/virtualkeyboard/lipisharedrecognizer.cpp)44
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipisharedrecognizer_p.h (renamed from src/virtualkeyboard/lipisharedrecognizer.h)21
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipiworker.cpp (renamed from src/virtualkeyboard/lipiworker.cpp)26
-rw-r--r--src/plugins/lipi-toolkit/plugin/lipiworker_p.h (renamed from src/virtualkeyboard/lipiworker.h)19
-rw-r--r--src/plugins/lipi-toolkit/plugin/plugin.pro55
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/NOTICE (renamed from src/virtualkeyboard/3rdparty/openwnn/NOTICE)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/openwnn.pro (renamed from src/virtualkeyboard/3rdparty/openwnn/openwnn.pro)1
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/qt_attribution.json (renamed from src/virtualkeyboard/3rdparty/openwnn/qt_attribution.json)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndapi.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndapi.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndbdic.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndbdic.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndcommon.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndcommon.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndfdic.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndfdic.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndldic.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndldic.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndrdic.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndrdic.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/neapi.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/neapi.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/necode.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/necode.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/nj_str.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_dic.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_dic.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_err.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_err.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_ext.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_ext.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_lib.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_lib.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/njd.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/njd.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/njx_lib.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/njx_lib.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/WnnJpnDic.c (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/WnnJpnDic.c)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/composingtext.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/composingtext.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/composingtext.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/composingtext.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/kanaconverter.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/kanaconverter.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/letterconverter.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/letterconverter.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnnclauseconverterjajp.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnnclauseconverterjajp.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnndictionary.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnndictionary.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnnenginejajp.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnnenginejajp.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkan.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkan.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkanfullkatakana.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkanfullkatakana.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkanhalfkatakana.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkanhalfkatakana.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/strsegment.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/strsegment.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/wnnlookuptable.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/wnnlookuptable.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/wnnword.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/wnnword.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/kanaconverter.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/kanaconverter.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/letterconverter.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/letterconverter.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnnclauseconverterjajp.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnnclauseconverterjajp.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnndictionary.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnndictionary.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnnenginejajp.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnnenginejajp.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/predef_table.h (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/predef_table.h)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkan.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkan.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkanfullkatakana.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkanfullkatakana.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkanhalfkatakana.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkanhalfkatakana.cpp)0
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnEngine/wnnlookuptable.cpp (renamed from src/virtualkeyboard/3rdparty/openwnn/wnnEngine/wnnlookuptable.cpp)0
-rw-r--r--src/plugins/openwnn/openwnn.pro7
-rw-r--r--src/plugins/openwnn/plugin/openwnn.json6
-rw-r--r--src/plugins/openwnn/plugin/openwnninputmethod.cpp (renamed from src/virtualkeyboard/openwnninputmethod.cpp)58
-rw-r--r--src/plugins/openwnn/plugin/openwnninputmethod_p.h (renamed from src/virtualkeyboard/openwnninputmethod.h)20
-rw-r--r--src/plugins/openwnn/plugin/openwnnplugin.cpp44
-rw-r--r--src/plugins/openwnn/plugin/openwnnplugin.h49
-rw-r--r--src/plugins/openwnn/plugin/plugin.pro33
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/NOTICE (renamed from src/virtualkeyboard/3rdparty/pinyin/NOTICE)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/command/Makefile (renamed from src/virtualkeyboard/3rdparty/pinyin/command/Makefile)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/command/pinyinime_dictbuilder.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/command/pinyinime_dictbuilder.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/data/dict_pinyin.dat (renamed from src/virtualkeyboard/3rdparty/pinyin/data/dict_pinyin.dat)bin1068442 -> 1068442 bytes
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/data/rawdict_utf16_65105_freq.txt (renamed from src/virtualkeyboard/3rdparty/pinyin/data/rawdict_utf16_65105_freq.txt)bin3570346 -> 3570346 bytes
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/data/valid_utf16.txt (renamed from src/virtualkeyboard/3rdparty/pinyin/data/valid_utf16.txt)bin32934 -> 32934 bytes
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/atomdictbase.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/atomdictbase.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/dictbuilder.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/dictbuilder.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/dictdef.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/dictdef.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/dictlist.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/dictlist.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/dicttrie.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/dicttrie.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/lpicache.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/lpicache.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/matrixsearch.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/matrixsearch.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/mystdlib.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/mystdlib.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/ngram.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/ngram.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/pinyinime.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/pinyinime.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/searchutility.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/searchutility.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/spellingtable.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/spellingtable.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/spellingtrie.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/spellingtrie.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/splparser.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/splparser.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/sync.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/sync.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/userdict.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/userdict.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/utf16char.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/utf16char.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/include/utf16reader.h (renamed from src/virtualkeyboard/3rdparty/pinyin/include/utf16reader.h)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/patches/0001-Make-the-keyboard-layout-changeable-in-password-url-.patch (renamed from src/virtualkeyboard/3rdparty/pinyin/patches/0001-Make-the-keyboard-layout-changeable-in-password-url-.patch)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/patches/0002-Prepare-Pinyin-library-for-WIN32.patch (renamed from src/virtualkeyboard/3rdparty/pinyin/patches/0002-Prepare-Pinyin-library-for-WIN32.patch)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/patches/0003-Fix-crash-in-pinyin-ime-if-the-user-dictionary-canno.patch (renamed from src/virtualkeyboard/3rdparty/pinyin/patches/0003-Fix-crash-in-pinyin-ime-if-the-user-dictionary-canno.patch)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/patches/0004-Bundle-pinyin-dictionary-in-the-plugin.patch (renamed from src/virtualkeyboard/3rdparty/pinyin/patches/0004-Bundle-pinyin-dictionary-in-the-plugin.patch)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/pinyin.pro (renamed from src/virtualkeyboard/3rdparty/pinyin/pinyin.pro)1
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/qt_attribution.json (renamed from src/virtualkeyboard/3rdparty/pinyin/qt_attribution.json)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/dictbuilder.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/dictbuilder.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/dictlist.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/dictlist.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/dicttrie.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/dicttrie.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/lpicache.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/lpicache.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/matrixsearch.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/matrixsearch.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/mystdlib.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/mystdlib.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/ngram.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/ngram.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/pinyinime.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/pinyinime.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/searchutility.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/searchutility.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/spellingtable.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/spellingtable.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/spellingtrie.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/spellingtrie.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/splparser.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/splparser.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/sync.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/sync.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/userdict.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/userdict.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/utf16char.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/utf16char.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/share/utf16reader.cpp (renamed from src/virtualkeyboard/3rdparty/pinyin/share/utf16reader.cpp)0
-rw-r--r--src/plugins/pinyin/3rdparty/pinyin/update-patches.sh (renamed from src/virtualkeyboard/3rdparty/pinyin/update-patches.sh)0
-rw-r--r--src/plugins/pinyin/pinyin.pro7
-rw-r--r--src/plugins/pinyin/plugin/pinyin.json6
-rw-r--r--src/plugins/pinyin/plugin/pinyindecoderservice.cpp (renamed from src/virtualkeyboard/pinyindecoderservice.cpp)12
-rw-r--r--src/plugins/pinyin/plugin/pinyindecoderservice_p.h (renamed from src/virtualkeyboard/pinyindecoderservice.h)19
-rw-r--r--src/plugins/pinyin/plugin/pinyininputmethod.cpp (renamed from src/virtualkeyboard/pinyininputmethod.cpp)17
-rw-r--r--src/plugins/pinyin/plugin/pinyininputmethod_p.h (renamed from src/virtualkeyboard/pinyininputmethod.h)22
-rw-r--r--src/plugins/pinyin/plugin/pinyinplugin.cpp44
-rw-r--r--src/plugins/pinyin/plugin/pinyinplugin.h49
-rw-r--r--src/plugins/pinyin/plugin/plugin.pro47
-rw-r--r--src/plugins/plugins.pro14
-rw-r--r--src/plugins/t9write/3rdparty/t9write/t9write-build.pri (renamed from src/virtualkeyboard/3rdparty/t9write/t9write-build.pri)0
-rw-r--r--src/plugins/t9write/3rdparty/t9write/t9write.pro (renamed from src/virtualkeyboard/3rdparty/t9write/t9write.pro)3
-rw-r--r--src/plugins/t9write/3rdparty/t9write/unpack.py (renamed from src/virtualkeyboard/3rdparty/t9write/unpack.py)0
-rw-r--r--src/plugins/t9write/plugin/plugin.pro95
-rw-r--r--src/plugins/t9write/plugin/t9write.json6
-rw-r--r--src/plugins/t9write/plugin/t9write_p.h (renamed from src/virtualkeyboard/t9write.h)17
-rw-r--r--src/plugins/t9write/plugin/t9writedictionary.cpp (renamed from src/virtualkeyboard/t9writedictionary.cpp)14
-rw-r--r--src/plugins/t9write/plugin/t9writedictionary_p.h (renamed from src/virtualkeyboard/t9writedictionary.h)23
-rw-r--r--src/plugins/t9write/plugin/t9writeinputmethod.cpp (renamed from src/virtualkeyboard/t9writeinputmethod.cpp)84
-rw-r--r--src/plugins/t9write/plugin/t9writeinputmethod_p.h (renamed from src/virtualkeyboard/t9writeinputmethod.h)22
-rw-r--r--src/plugins/t9write/plugin/t9writeplugin.cpp43
-rw-r--r--src/plugins/t9write/plugin/t9writeplugin.h49
-rw-r--r--src/plugins/t9write/plugin/t9writeworker.cpp (renamed from src/virtualkeyboard/t9writeworker.cpp)40
-rw-r--r--src/plugins/t9write/plugin/t9writeworker_p.h (renamed from src/virtualkeyboard/t9writeworker.h)19
-rw-r--r--src/plugins/t9write/t9write.pro7
-rw-r--r--src/plugins/tcime/3rdparty/tcime/COPYING (renamed from src/virtualkeyboard/3rdparty/tcime/COPYING)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/cangjiedictionary.cpp (renamed from src/virtualkeyboard/3rdparty/tcime/cangjiedictionary.cpp)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/cangjiedictionary.h (renamed from src/virtualkeyboard/3rdparty/tcime/cangjiedictionary.h)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/cangjietable.cpp (renamed from src/virtualkeyboard/3rdparty/tcime/cangjietable.cpp)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/cangjietable.h (renamed from src/virtualkeyboard/3rdparty/tcime/cangjietable.h)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/data/java/dict_cangjie.dat (renamed from src/virtualkeyboard/3rdparty/tcime/data/java/dict_cangjie.dat)bin58525 -> 58525 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/data/java/dict_phrases.dat (renamed from src/virtualkeyboard/3rdparty/tcime/data/java/dict_phrases.dat)bin133359 -> 133359 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/data/java/dict_zhuyin.dat (renamed from src/virtualkeyboard/3rdparty/tcime/data/java/dict_zhuyin.dat)bin37323 -> 37323 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/data/qt/dict_cangjie.dat (renamed from src/virtualkeyboard/3rdparty/tcime/data/qt/dict_cangjie.dat)bin54840 -> 54840 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/data/qt/dict_phrases.dat (renamed from src/virtualkeyboard/3rdparty/tcime/data/qt/dict_phrases.dat)bin133304 -> 133304 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/data/qt/dict_zhuyin.dat (renamed from src/virtualkeyboard/3rdparty/tcime/data/qt/dict_zhuyin.dat)bin36044 -> 36044 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/phrasedictionary.cpp (renamed from src/virtualkeyboard/3rdparty/tcime/phrasedictionary.cpp)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/phrasedictionary.h (renamed from src/virtualkeyboard/3rdparty/tcime/phrasedictionary.h)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/qt_attribution.json (renamed from src/virtualkeyboard/3rdparty/tcime/qt_attribution.json)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/tcime.pro (renamed from src/virtualkeyboard/3rdparty/tcime/tcime.pro)1
-rw-r--r--src/plugins/tcime/3rdparty/tcime/tools/dict2qt.class (renamed from src/virtualkeyboard/3rdparty/tcime/tools/dict2qt.class)bin5163 -> 5163 bytes
-rw-r--r--src/plugins/tcime/3rdparty/tcime/tools/dict2qt.java (renamed from src/virtualkeyboard/3rdparty/tcime/tools/dict2qt.java)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/worddictionary.cpp (renamed from src/virtualkeyboard/3rdparty/tcime/worddictionary.cpp)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/worddictionary.h (renamed from src/virtualkeyboard/3rdparty/tcime/worddictionary.h)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/zhuyindictionary.cpp (renamed from src/virtualkeyboard/3rdparty/tcime/zhuyindictionary.cpp)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/zhuyindictionary.h (renamed from src/virtualkeyboard/3rdparty/tcime/zhuyindictionary.h)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/zhuyintable.cpp (renamed from src/virtualkeyboard/3rdparty/tcime/zhuyintable.cpp)0
-rw-r--r--src/plugins/tcime/3rdparty/tcime/zhuyintable.h (renamed from src/virtualkeyboard/3rdparty/tcime/zhuyintable.h)0
-rw-r--r--src/plugins/tcime/plugin/plugin.pro56
-rw-r--r--src/plugins/tcime/plugin/tcime.json6
-rw-r--r--src/plugins/tcime/plugin/tcimeplugin.cpp43
-rw-r--r--src/plugins/tcime/plugin/tcimeplugin.h49
-rw-r--r--src/plugins/tcime/plugin/tcinputmethod.cpp (renamed from src/virtualkeyboard/tcinputmethod.cpp)20
-rw-r--r--src/plugins/tcime/plugin/tcinputmethod_p.h (renamed from src/virtualkeyboard/tcinputmethod.h)20
-rw-r--r--src/plugins/tcime/tcime.pro7
-rw-r--r--src/settings/plugins.qmltypes (renamed from src/virtualkeyboard/settings/plugins.qmltypes)0
-rw-r--r--src/settings/qmldir (renamed from src/virtualkeyboard/settings/qmldir)0
-rw-r--r--src/settings/settings.pro (renamed from src/virtualkeyboard/settings/settings.pro)0
-rw-r--r--src/src.pro41
-rw-r--r--src/styles/KeyIcon.qml (renamed from src/virtualkeyboard/styles/KeyIcon.qml)0
-rw-r--r--src/styles/KeyPanel.qml (renamed from src/virtualkeyboard/styles/KeyPanel.qml)0
-rw-r--r--src/styles/KeyboardStyle.qml (renamed from src/virtualkeyboard/styles/KeyboardStyle.qml)0
-rw-r--r--src/styles/SelectionListItem.qml (renamed from src/virtualkeyboard/styles/SelectionListItem.qml)0
-rw-r--r--src/styles/TraceCanvas.qml (renamed from src/virtualkeyboard/styles/TraceCanvas.qml)0
-rw-r--r--src/styles/TraceInputKeyPanel.qml (renamed from src/virtualkeyboard/styles/TraceInputKeyPanel.qml)0
-rw-r--r--src/styles/TraceUtils.js (renamed from src/virtualkeyboard/styles/TraceUtils.js)0
-rw-r--r--src/styles/plugins.qmltypes (renamed from src/virtualkeyboard/styles/plugins.qmltypes)0
-rw-r--r--src/styles/qmldir (renamed from src/virtualkeyboard/styles/qmldir)0
-rw-r--r--src/styles/styles.pro (renamed from src/virtualkeyboard/styles/styles.pro)0
-rw-r--r--src/styles/styles.qrc (renamed from src/virtualkeyboard/styles/styles.qrc)0
-rw-r--r--src/styles/styles_plugin.cpp (renamed from src/virtualkeyboard/styles/styles_plugin.cpp)0
-rw-r--r--src/styles/styles_plugin.h (renamed from src/virtualkeyboard/styles/styles_plugin.h)0
-rw-r--r--src/styles/svgimageprovider.cpp (renamed from src/virtualkeyboard/styles/svgimageprovider.cpp)0
-rw-r--r--src/styles/svgimageprovider.h (renamed from src/virtualkeyboard/styles/svgimageprovider.h)0
-rw-r--r--src/virtualkeyboard/abstractinputmethod.cpp21
-rw-r--r--src/virtualkeyboard/abstractinputmethod.h23
-rw-r--r--src/virtualkeyboard/abstractinputpanel.cpp4
-rw-r--r--src/virtualkeyboard/abstractinputpanel_p.h (renamed from src/virtualkeyboard/abstractinputpanel.h)22
-rw-r--r--src/virtualkeyboard/appinputpanel.cpp5
-rw-r--r--src/virtualkeyboard/appinputpanel_p.h (renamed from src/virtualkeyboard/appinputpanel.h)41
-rw-r--r--src/virtualkeyboard/appinputpanel_p_p.h70
-rw-r--r--src/virtualkeyboard/content/components/Keyboard.qml2
-rw-r--r--src/virtualkeyboard/desktopinputpanel.cpp11
-rw-r--r--src/virtualkeyboard/desktopinputpanel_p.h (renamed from src/virtualkeyboard/desktopinputpanel.h)24
-rw-r--r--src/virtualkeyboard/desktopinputselectioncontrol.cpp13
-rw-r--r--src/virtualkeyboard/desktopinputselectioncontrol_p.h (renamed from src/virtualkeyboard/desktopinputselectioncontrol.h)23
-rw-r--r--src/virtualkeyboard/doc/src/deployment-guide.qdoc4
-rw-r--r--src/virtualkeyboard/doc/src/technical-guide.qdoc10
-rw-r--r--src/virtualkeyboard/enterkeyaction.cpp6
-rw-r--r--src/virtualkeyboard/enterkeyaction_p.h (renamed from src/virtualkeyboard/enterkeyaction.h)24
-rw-r--r--src/virtualkeyboard/enterkeyactionattachedtype.cpp4
-rw-r--r--src/virtualkeyboard/enterkeyactionattachedtype_p.h (renamed from src/virtualkeyboard/enterkeyactionattachedtype.h)22
-rw-r--r--src/virtualkeyboard/fallbackinputmethod.cpp (renamed from src/virtualkeyboard/defaultinputmethod.cpp)18
-rw-r--r--src/virtualkeyboard/fallbackinputmethod_p.h (renamed from src/virtualkeyboard/defaultinputmethod.h)25
-rw-r--r--src/virtualkeyboard/gesturerecognizer.cpp6
-rw-r--r--src/virtualkeyboard/gesturerecognizer_p.h (renamed from src/virtualkeyboard/gesturerecognizer.h)24
-rw-r--r--src/virtualkeyboard/handwritinggesturerecognizer.cpp6
-rw-r--r--src/virtualkeyboard/handwritinggesturerecognizer_p.h (renamed from src/virtualkeyboard/handwritinggesturerecognizer.h)23
-rw-r--r--src/virtualkeyboard/inputcontext.cpp15
-rw-r--r--src/virtualkeyboard/inputcontext.h13
-rw-r--r--src/virtualkeyboard/inputengine.cpp25
-rw-r--r--src/virtualkeyboard/inputengine.h25
-rw-r--r--src/virtualkeyboard/inputmethod.cpp6
-rw-r--r--src/virtualkeyboard/inputmethod_p.h (renamed from src/virtualkeyboard/inputmethod.h)27
-rw-r--r--src/virtualkeyboard/inputselectionhandle.cpp6
-rw-r--r--src/virtualkeyboard/inputselectionhandle_p.h (renamed from src/virtualkeyboard/inputselectionhandle.h)23
-rw-r--r--src/virtualkeyboard/inputview.cpp4
-rw-r--r--src/virtualkeyboard/inputview_p.h66
-rw-r--r--src/virtualkeyboard/plaininputmethod.cpp6
-rw-r--r--src/virtualkeyboard/plaininputmethod_p.h (renamed from src/virtualkeyboard/plaininputmethod.h)21
-rw-r--r--src/virtualkeyboard/platforminputcontext.cpp16
-rw-r--r--src/virtualkeyboard/platforminputcontext_p.h (renamed from src/virtualkeyboard/platforminputcontext.h)23
-rw-r--r--src/virtualkeyboard/qvirtualkeyboard_global.h (renamed from src/virtualkeyboard/inputview.h)33
-rw-r--r--src/virtualkeyboard/qvirtualkeyboardextensionplugin.cpp43
-rw-r--r--src/virtualkeyboard/qvirtualkeyboardextensionplugin.h54
-rw-r--r--src/virtualkeyboard/selectionlistmodel.cpp4
-rw-r--r--src/virtualkeyboard/selectionlistmodel.h13
-rw-r--r--src/virtualkeyboard/settings.cpp4
-rw-r--r--src/virtualkeyboard/settings_p.h (renamed from src/virtualkeyboard/settings.h)22
-rw-r--r--src/virtualkeyboard/shadowinputcontext.cpp6
-rw-r--r--src/virtualkeyboard/shadowinputcontext_p.h (renamed from src/virtualkeyboard/shadowinputcontext.h)22
-rw-r--r--src/virtualkeyboard/shifthandler.cpp6
-rw-r--r--src/virtualkeyboard/shifthandler_p.h (renamed from src/virtualkeyboard/shifthandler.h)22
-rw-r--r--src/virtualkeyboard/trace.cpp2
-rw-r--r--src/virtualkeyboard/trace.h7
-rw-r--r--src/virtualkeyboard/unipentrace.cpp3
-rw-r--r--src/virtualkeyboard/unipentrace_p.h (renamed from src/virtualkeyboard/unipentrace.h)15
-rw-r--r--src/virtualkeyboard/virtualkeyboard.pro317
-rw-r--r--src/virtualkeyboard/virtualkeyboarddebug_p.h (renamed from src/virtualkeyboard/virtualkeyboarddebug.h)17
-rw-r--r--src/virtualkeyboard/virtualkeyboardsettings.cpp8
-rw-r--r--src/virtualkeyboard/virtualkeyboardsettings_p.h (renamed from src/virtualkeyboard/virtualkeyboardsettings.h)20
-rw-r--r--sync.profile2
-rw-r--r--tests/auto/auto.pro2
-rw-r--r--tests/auto/cmake/CMakeLists.txt12
-rw-r--r--tests/auto/cmake/cmake.pro6
473 files changed, 2746 insertions, 910 deletions
diff --git a/.gitignore b/.gitignore
index 60b9523b..bee08fee 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,15 +2,13 @@
# --------------------------------------------------------------
examples/virtualkeyboard/basic/basic
-!src/virtualkeyboard/3rdparty/hunspell/hunspell.pro
-src/virtualkeyboard/3rdparty/hunspell/*
-src/virtualkeyboard/3rdparty/hunspell/doc/html
-src/virtualkeyboard/3rdparty/t9write/build_*
-src/virtualkeyboard/3rdparty/t9write/databases
-src/virtualkeyboard/3rdparty/t9write/doc
-src/virtualkeyboard/3rdparty/t9write/example
+!src/plugins/hunspell/3rdparty/hunspell/hunspell.pro
+src/plugins/hunspell/3rdparty/hunspell/*
+src/plugins/hunspell/3rdparty/hunspell/doc/html
+src/plugins/t9write/3rdparty/t9write/api
+src/plugins/t9write/3rdparty/t9write/data
+src/plugins/t9write/3rdparty/t9write/lib
-src/virtualkeyboard/layouts.qrc
*_wrapper.sh
*_wrapper.bat
*_resource.rc
diff --git a/src/config.pri b/src/config.pri
index becf8efb..ce4245e2 100644
--- a/src/config.pri
+++ b/src/config.pri
@@ -1,15 +1,28 @@
# Enable handwriting
handwriting:!lipi-toolkit:!t9write {
- include(virtualkeyboard/3rdparty/t9write/t9write-build.pri)
+ include(plugins/t9write/3rdparty/t9write/t9write-build.pri)
equals(T9WRITE_FOUND, 1): CONFIG += t9write
else: CONFIG += lipi-toolkit
}
t9write {
- !handwriting: include(virtualkeyboard/3rdparty/t9write/t9write-build.pri)
+ !handwriting: include(plugins/t9write/3rdparty/t9write/t9write-build.pri)
equals(T9WRITE_CJK_FOUND, 1): CONFIG += t9write-cjk
equals(T9WRITE_ALPHABETIC_FOUND, 1): CONFIG += t9write-alphabetic
}
+# Enable pkgconfig
+win32: CONFIG += no-pkg-config
+!no-pkg-config: CONFIG += link_pkgconfig
+
+# Enable Hunspell
+!disable-hunspell:!hunspell-library:!hunspell-package {
+ exists(plugins/hunspell/3rdparty/hunspell/src/hunspell/hunspell.h): CONFIG += hunspell-library
+ else:link_pkgconfig:packagesExist(hunspell): CONFIG += hunspell-package
+ else: CONFIG += disable-hunspell
+}
+disable-hunspell: CONFIG -= hunspell
+else: CONFIG += hunspell
+
# Disable built-in layouts
disable-layouts {
message("The built-in layouts are now excluded from the Qt Virtual Keyboard plugin.")
@@ -57,6 +70,11 @@ disable-layouts {
lang-zh_TW
}
+# Common variables
+LAYOUTS_BASE = $$PWD/virtualkeyboard
+LAYOUTS_PREFIX = /QtQuick/VirtualKeyboard
+VIRTUALKEYBOARD_INSTALL_DATA = $$[QT_INSTALL_DATA]/qtvirtualkeyboard
+
# Enable features by languages
contains(CONFIG, lang-ja.*)|lang-all: CONFIG += openwnn
contains(CONFIG, lang-ko.*)|lang-all: CONFIG += hangul
diff --git a/src/virtualkeyboard/import/import.pro b/src/import/import.pro
index d76bb91e..d76bb91e 100644
--- a/src/virtualkeyboard/import/import.pro
+++ b/src/import/import.pro
diff --git a/src/virtualkeyboard/import/plugins.qmltypes b/src/import/plugins.qmltypes
index f2977658..f2977658 100644
--- a/src/virtualkeyboard/import/plugins.qmltypes
+++ b/src/import/plugins.qmltypes
diff --git a/src/virtualkeyboard/import/qmldir b/src/import/qmldir
index b13824c5..b13824c5 100644
--- a/src/virtualkeyboard/import/qmldir
+++ b/src/import/qmldir
diff --git a/src/plugin/extensionloader.cpp b/src/plugin/extensionloader.cpp
new file mode 100644
index 00000000..e3f1b28e
--- /dev/null
+++ b/src/plugin/extensionloader.cpp
@@ -0,0 +1,114 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "extensionloader.h"
+#include <QtVirtualKeyboard/QVirtualKeyboardExtensionPlugin>
+#include <QtCore/private/qfactoryloader_p.h>
+
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
+QMutex ExtensionLoader::m_mutex;
+QHash<QString, QJsonObject> ExtensionLoader::m_plugins;
+bool ExtensionLoader::m_alreadyDiscovered = false;
+
+Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader,
+ (QVirtualKeyboardExtensionPluginFactoryInterface_iid,
+ QLatin1String("/virtualkeyboard")))
+
+QHash<QString, QJsonObject> ExtensionLoader::plugins(bool reload)
+{
+ QMutexLocker lock(&m_mutex);
+
+ if (reload == true)
+ m_alreadyDiscovered = false;
+
+ if (!m_alreadyDiscovered) {
+ loadPluginMetadata();
+ m_alreadyDiscovered = true;
+ }
+ return m_plugins;
+}
+
+QJsonObject ExtensionLoader::loadMeta(const QString &extensionName)
+{
+ QJsonObject metaData;
+ metaData = QJsonObject();
+ metaData.insert(QLatin1String("index"), -1);
+
+ QList<QJsonObject> candidates = ExtensionLoader::plugins().values(extensionName);
+
+ int versionFound = -1;
+ int idx = -1;
+
+ // figure out which version of the plugin we want
+ for (int i = 0; i < candidates.size(); ++i) {
+ QJsonObject meta = candidates[i];
+ if (meta.contains(QLatin1String("Version"))
+ && meta.value(QLatin1String("Version")).isDouble()) {
+ int ver = int(meta.value(QLatin1String("Version")).toDouble());
+ if (ver > versionFound) {
+ versionFound = ver;
+ idx = i;
+ }
+ }
+ }
+
+ if (idx != -1) {
+ metaData = candidates[idx];
+ return metaData;
+ }
+ return QJsonObject();
+}
+
+QVirtualKeyboardExtensionPlugin *ExtensionLoader::loadPlugin(QJsonObject metaData)
+{
+ if (int(metaData.value(QLatin1String("index")).toDouble()) < 0) {
+ return NULL;
+ }
+ int idx = int(metaData.value(QLatin1String("index")).toDouble());
+ return qobject_cast<QVirtualKeyboardExtensionPlugin *>(loader()->instance(idx));
+}
+
+void ExtensionLoader::loadPluginMetadata()
+{
+ QFactoryLoader *l = loader();
+ QList<QJsonObject> meta = l->metaData();
+ for (int i = 0; i < meta.size(); ++i) {
+ QJsonObject obj = meta.at(i).value(QLatin1String("MetaData")).toObject();
+ QString name = obj.value(QLatin1String("Name")).toString();
+ if (!name.isEmpty()) {
+ obj.insert(QLatin1String("index"), i);
+ m_plugins.insertMulti(name, obj);
+ }
+ }
+}
+
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/plugin/extensionloader.h b/src/plugin/extensionloader.h
new file mode 100644
index 00000000..4d18ad30
--- /dev/null
+++ b/src/plugin/extensionloader.h
@@ -0,0 +1,59 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef EXTENSIONLOADER_H
+#define EXTENSIONLOADER_H
+
+#include <QMutex>
+#include <QtVirtualKeyboard/QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
+class ExtensionLoader
+{
+ Q_DISABLE_COPY(ExtensionLoader)
+public:
+ static QHash<QString, QJsonObject> plugins(bool reload = false);
+ static QJsonObject loadMeta(const QString &extensionName);
+ static QVirtualKeyboardExtensionPlugin *loadPlugin(QJsonObject metaData);
+
+private:
+ static void loadPluginMetadata();
+
+private:
+ static QMutex m_mutex;
+ static QHash<QString, QJsonObject> m_plugins;
+ static bool m_alreadyDiscovered;
+};
+
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
+
+#endif // EXTENSIONLOADER_H
diff --git a/src/virtualkeyboard/plugin.cpp b/src/plugin/plugin.cpp
index 09eced62..46b1bf04 100644
--- a/src/virtualkeyboard/plugin.cpp
+++ b/src/plugin/plugin.cpp
@@ -28,38 +28,19 @@
****************************************************************************/
#include "plugin.h"
-#include "inputcontext.h"
-#include "inputengine.h"
-#include "shifthandler.h"
-#include "plaininputmethod.h"
-#ifdef HAVE_HUNSPELL
-#include "hunspellinputmethod.h"
-#endif
-#ifdef HAVE_PINYIN
-#include "pinyininputmethod.h"
-#endif
-#ifdef HAVE_TCIME
-#include "tcinputmethod.h"
-#endif
-#ifdef HAVE_HANGUL
-#include "hangulinputmethod.h"
-#endif
-#ifdef HAVE_OPENWNN
-#include "openwnninputmethod.h"
-#endif
-#ifdef HAVE_LIPI_TOOLKIT
-#include "lipiinputmethod.h"
-#endif
-#ifdef HAVE_T9WRITE
-#include "t9writeinputmethod.h"
-#endif
-#include "inputmethod.h"
-#include "selectionlistmodel.h"
-#include "enterkeyaction.h"
-#include "enterkeyactionattachedtype.h"
-#include "virtualkeyboardsettings.h"
-#include "trace.h"
-#include "shadowinputcontext.h"
+#include "extensionloader.h"
+#include <QtVirtualKeyboard/inputcontext.h>
+#include <QtVirtualKeyboard/inputengine.h>
+#include <QtVirtualKeyboard/private/shifthandler_p.h>
+#include <QtVirtualKeyboard/private/plaininputmethod_p.h>
+#include <QtVirtualKeyboard/private/inputmethod_p.h>
+#include <QtVirtualKeyboard/selectionlistmodel.h>
+#include <QtVirtualKeyboard/private/enterkeyaction_p.h>
+#include <QtVirtualKeyboard/private/enterkeyactionattachedtype_p.h>
+#include <QtVirtualKeyboard/private/virtualkeyboardsettings_p.h>
+#include <QtVirtualKeyboard/trace.h>
+#include <QtVirtualKeyboard/private/shadowinputcontext_p.h>
+#include <QLoggingCategory>
#if defined(QT_STATICPLUGIN)
#include <QtPlugin>
// This macro is similar to Q_IMPORT_PLUGIN, except it does not
@@ -72,6 +53,8 @@
qRegisterStaticPluginFunction(qt_static_plugin_##PLUGIN());
#endif
+QT_BEGIN_NAMESPACE
+
using namespace QtVirtualKeyboard;
Q_LOGGING_CATEGORY(qlcVirtualKeyboard, "qt.virtualkeyboard")
@@ -83,29 +66,12 @@ static const char pluginSettingsUri[] = "QtQuick.VirtualKeyboard.Settings";
static QPointer<PlatformInputContext> platformInputContext;
+static QStringList inputMethodList = QStringList() << QLatin1String("PlainInputMethod");
+
static QObject *createInputContextModule(QQmlEngine *engine, QJSEngine *scriptEngine)
{
Q_UNUSED(scriptEngine);
QQmlContext *rootContext = engine->rootContext();
- QStringList inputMethodList = QStringList()
- << QLatin1String("PlainInputMethod")
- << QLatin1String("HunspellInputMethod")
-#ifdef HAVE_PINYIN
- << QLatin1String("PinyinInputMethod")
-#endif
-#ifdef HAVE_TCIME
- << QLatin1String("TCInputMethod")
-#endif
-#ifdef HAVE_HANGUL
- << QLatin1String("HangulInputMethod")
-#endif
-#ifdef HAVE_OPENWNN
- << QLatin1String("JapaneseInputMethod")
-#endif
-#if defined(HAVE_LIPI_TOOLKIT) || defined(HAVE_T9WRITE)
- << QLatin1String("HandwritingInputMethod")
-#endif
- ;
rootContext->setContextProperty(QStringLiteral("VirtualKeyboardInputMethods"), inputMethodList);
return new InputContext(platformInputContext);
}
@@ -122,6 +88,10 @@ QPlatformInputContext *QVirtualKeyboardPlugin::create(const QString &system, con
if (!qEnvironmentVariableIsSet(inputMethodEnvVarName) || qgetenv(inputMethodEnvVarName) != pluginName)
return Q_NULLPTR;
+ if (system.compare(system, QLatin1String(pluginName), Qt::CaseInsensitive) != 0)
+ return Q_NULLPTR;
+ platformInputContext = new PlatformInputContext();
+
#if defined(QT_STATICPLUGIN)
Q_VKB_IMPORT_PLUGIN(QtQuick2Plugin)
Q_VKB_IMPORT_PLUGIN(QtQuick2WindowPlugin)
@@ -132,54 +102,36 @@ QPlatformInputContext *QVirtualKeyboardPlugin::create(const QString &system, con
qmlRegisterSingletonType<InputContext>(pluginUri, 1, 0, "InputContext", createInputContextModule);
qmlRegisterSingletonType<InputContext>(pluginUri, 2, 0, "InputContext", createInputContextModule);
+ qRegisterMetaType<InputEngine *>("InputEngine*");
qmlRegisterUncreatableType<InputEngine>(pluginUri, 1, 0, "InputEngine", QLatin1String("Cannot create input method engine"));
qmlRegisterUncreatableType<InputEngine>(pluginUri, 2, 0, "InputEngine", QLatin1String("Cannot create input method engine"));
+ qRegisterMetaType<ShiftHandler *>("ShiftHandler*");
qmlRegisterUncreatableType<ShiftHandler>(pluginUri, 1, 0, "ShiftHandler", QLatin1String("Cannot create shift handler"));
qmlRegisterUncreatableType<ShiftHandler>(pluginUri, 2, 0, "ShiftHandler", QLatin1String("Cannot create shift handler"));
+ qRegisterMetaType<SelectionListModel *>("SelectionListModel*");
qmlRegisterUncreatableType<SelectionListModel>(pluginUri, 1, 0, "SelectionListModel", QLatin1String("Cannot create selection list model"));
qmlRegisterUncreatableType<SelectionListModel>(pluginUri, 2, 0, "SelectionListModel", QLatin1String("Cannot create selection list model"));
+ qRegisterMetaType<AbstractInputMethod *>("AbstractInputMethod*");
qmlRegisterUncreatableType<AbstractInputMethod>(pluginUri, 1, 0, "AbstractInputMethod", QLatin1String("Cannot create abstract input method"));
qmlRegisterUncreatableType<AbstractInputMethod>(pluginUri, 2, 0, "AbstractInputMethod", QLatin1String("Cannot create abstract input method"));
+ qRegisterMetaType<PlainInputMethod *>("PlainInputMethod*");
qmlRegisterType<PlainInputMethod>(pluginUri, 1, 0, "PlainInputMethod");
qmlRegisterType<PlainInputMethod>(pluginUri, 2, 0, "PlainInputMethod");
qmlRegisterType<InputMethod>(pluginUri, 1, 0, "InputMethod");
qmlRegisterType<InputMethod>(pluginUri, 2, 0, "InputMethod");
-#ifdef HAVE_HUNSPELL
- qmlRegisterType<HunspellInputMethod>(pluginUri, 1, 0, "HunspellInputMethod");
- qmlRegisterType<HunspellInputMethod>(pluginUri, 2, 0, "HunspellInputMethod");
-#endif
-#ifdef HAVE_PINYIN
- qmlRegisterType<PinyinInputMethod>(pluginUri, 1, 1, "PinyinInputMethod");
- qmlRegisterType<PinyinInputMethod>(pluginUri, 2, 0, "PinyinInputMethod");
-#endif
-#ifdef HAVE_TCIME
- qmlRegisterType<TCInputMethod>(pluginUri, 2, 0, "TCInputMethod");
-#endif
-#ifdef HAVE_HANGUL
- qmlRegisterType<HangulInputMethod>(pluginUri, 1, 3, "HangulInputMethod");
- qmlRegisterType<HangulInputMethod>(pluginUri, 2, 0, "HangulInputMethod");
-#endif
-#ifdef HAVE_OPENWNN
- qmlRegisterType<OpenWnnInputMethod>(pluginUri, 1, 3, "JapaneseInputMethod");
- qmlRegisterType<OpenWnnInputMethod>(pluginUri, 2, 0, "JapaneseInputMethod");
-#endif
-#ifdef HAVE_LIPI_TOOLKIT
- qmlRegisterType<LipiInputMethod>(pluginUri, 2, 0, "HandwritingInputMethod");
-#endif
-#ifdef HAVE_T9WRITE
- qmlRegisterType<T9WriteInputMethod>(pluginUri, 2, 0, "HandwritingInputMethod");
-#endif
qmlRegisterType<EnterKeyActionAttachedType>();
qmlRegisterType<EnterKeyAction>(pluginUri, 1, 0, "EnterKeyAction");
qmlRegisterType<EnterKeyAction>(pluginUri, 2, 0, "EnterKeyAction");
+ qRegisterMetaType<Trace *>("Trace*");
qmlRegisterType<Trace>(pluginUri, 2, 0, "Trace");
- qRegisterMetaType<QtVirtualKeyboard::ShadowInputContext *>("ShadowInputContext*");
+ qRegisterMetaType<ShadowInputContext *>("ShadowInputContext*");
qmlRegisterUncreatableType<ShadowInputContext>(pluginUri, 2, 2, "ShadowInputContext", QLatin1String("Cannot create shadow input context"));
qmlRegisterSingletonType<VirtualKeyboardSettings>(pluginSettingsUri, 1, 0, "VirtualKeyboardSettings", VirtualKeyboardSettings::registerSettingsModule);
qmlRegisterSingletonType<VirtualKeyboardSettings>(pluginSettingsUri, 1, 1, "VirtualKeyboardSettings", VirtualKeyboardSettings::registerSettingsModule);
qmlRegisterSingletonType<VirtualKeyboardSettings>(pluginSettingsUri, 1, 2, "VirtualKeyboardSettings", VirtualKeyboardSettings::registerSettingsModule);
qmlRegisterSingletonType<VirtualKeyboardSettings>(pluginSettingsUri, 2, 0, "VirtualKeyboardSettings", VirtualKeyboardSettings::registerSettingsModule);
qmlRegisterSingletonType<VirtualKeyboardSettings>(pluginSettingsUri, 2, 1, "VirtualKeyboardSettings", VirtualKeyboardSettings::registerSettingsModule);
+ qRegisterMetaType<WordCandidateListSettings *>("WordCandidateListSettings*");
qmlRegisterUncreatableType<WordCandidateListSettings>(pluginSettingsUri, 2, 2, "WordCandidateListSettings", QLatin1String("Cannot create word candidate list settings"));
const QString path(QStringLiteral("qrc:///QtQuick/VirtualKeyboard/content/"));
@@ -241,8 +193,29 @@ QPlatformInputContext *QVirtualKeyboardPlugin::create(const QString &system, con
qmlRegisterType(QUrl(componentsPath + QLatin1String("SelectionControl.qml")), pluginUri, 2, 1, "SelectionControl");
qmlRegisterType(QUrl(componentsPath + QLatin1String("InputModeKey.qml")), pluginUri, 2, 3, "InputModeKey");
- if (system.compare(system, QLatin1String(pluginName), Qt::CaseInsensitive) == 0) {
- platformInputContext = new PlatformInputContext();
+ QHash<QString, QJsonObject> extensions = ExtensionLoader::plugins();
+ for (const QString &extensionName : extensions.uniqueKeys()) {
+ QJsonObject metaData = ExtensionLoader::loadMeta(extensionName);
+ if (metaData.isEmpty()) {
+ qCWarning(qlcVirtualKeyboard) << "Error loading extension - metadata not found!";
+ continue;
+ }
+ const QString inputMethod = metaData.value("InputMethod").toString();
+ if (!inputMethod.isEmpty() && inputMethodList.contains(inputMethod)) {
+ qCWarning(qlcVirtualKeyboard) << "Ignored extension" << extensionName <<
+ "by" << metaData.value("Provider").toString() <<
+ "-" << inputMethod << "is already registered!";
+ continue;
+ }
+ qCDebug(qlcVirtualKeyboard) << "Loading extension" << extensionName;
+ QVirtualKeyboardExtensionPlugin *extensionPlugin = ExtensionLoader::loadPlugin(metaData);
+ if (extensionPlugin && !inputMethod.isEmpty()) {
+ extensionPlugin->registerTypes(pluginUri);
+ inputMethodList.append(inputMethod);
+ }
}
+
return platformInputContext;
}
+
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/plugin.h b/src/plugin/plugin.h
index 08074d19..c1c80e50 100644
--- a/src/virtualkeyboard/plugin.h
+++ b/src/plugin/plugin.h
@@ -32,9 +32,11 @@
#include <QtQml>
#include <qpa/qplatforminputcontextplugin_p.h>
-#include "platforminputcontext.h"
+#include <QtVirtualKeyboard/private/platforminputcontext_p.h>
#include <QStringList>
+QT_BEGIN_NAMESPACE
+
class QVirtualKeyboardPlugin : public QPlatformInputContextPlugin
{
Q_OBJECT
@@ -45,4 +47,6 @@ public:
QPlatformInputContext *create(const QString&, const QStringList&);
};
+QT_END_NAMESPACE
+
#endif // PLUGIN_H
diff --git a/src/plugin/plugin.pro b/src/plugin/plugin.pro
new file mode 100644
index 00000000..c823e0a3
--- /dev/null
+++ b/src/plugin/plugin.pro
@@ -0,0 +1,23 @@
+TARGET = qtvirtualkeyboardplugin
+QT += virtualkeyboard-private
+
+SOURCES += \
+ plugin.cpp \
+ extensionloader.cpp
+
+HEADERS += \
+ plugin.h \
+ extensionloader.h
+
+OTHER_FILES += \
+ qtvirtualkeyboard.json
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard for Qt."
+}
+
+PLUGIN_TYPE = platforminputcontexts
+PLUGIN_EXTENDS = -
+PLUGIN_CLASS_NAME = QVirtualKeyboardPlugin
+load(qt_plugin)
diff --git a/src/virtualkeyboard/qtvirtualkeyboard.json b/src/plugin/qtvirtualkeyboard.json
index 76d17069..76d17069 100644
--- a/src/virtualkeyboard/qtvirtualkeyboard.json
+++ b/src/plugin/qtvirtualkeyboard.json
diff --git a/src/virtualkeyboard/hangul.cpp b/src/plugins/hangul/hangul.cpp
index 4410b06f..f29fb3a3 100644
--- a/src/virtualkeyboard/hangul.cpp
+++ b/src/plugins/hangul/hangul.cpp
@@ -27,8 +27,9 @@
**
****************************************************************************/
-#include "hangul.h"
+#include "hangul_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
const QList<ushort> Hangul::initials = QList<ushort>()
@@ -361,3 +362,4 @@ QMap<ushort, Hangul::HangulFinalIndex> Hangul::initDoubleFinalMap()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/plugins/hangul/hangul.json b/src/plugins/hangul/hangul.json
new file mode 100644
index 00000000..f7008a87
--- /dev/null
+++ b/src/plugins/hangul/hangul.json
@@ -0,0 +1,6 @@
+{
+ "Name": "hangul",
+ "Provider": "Qt Hangul Extension",
+ "InputMethod": "HangulInputMethod",
+ "Version": 100
+}
diff --git a/src/plugins/hangul/hangul.pro b/src/plugins/hangul/hangul.pro
new file mode 100644
index 00000000..a0dfea0d
--- /dev/null
+++ b/src/plugins/hangul/hangul.pro
@@ -0,0 +1,33 @@
+TARGET = qtvirtualkeyboard_hangul
+QT += qml virtualkeyboard
+
+HEADERS += \
+ hangul_p.h \
+ hangulplugin.h \
+ hangulinputmethod_p.h
+SOURCES += \
+ hangul.cpp \
+ hangulplugin.cpp \
+ hangulinputmethod.cpp
+OTHER_FILES += \
+ hangul.json
+
+include(../../config.pri)
+
+LAYOUT_FILES += \
+ $$LAYOUTS_BASE/content/layouts/ko_KR/main.qml \
+ $$LAYOUTS_BASE/content/layouts/ko_KR/symbols.qml
+
+layouts.files = $$LAYOUT_FILES
+layouts.base = $$LAYOUTS_BASE
+layouts.prefix = $$LAYOUTS_PREFIX
+RESOURCES += layouts
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard Hangul (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = HangulPlugin
+load(qt_plugin)
diff --git a/src/virtualkeyboard/hangul.h b/src/plugins/hangul/hangul_p.h
index e30a659a..4f8c70c9 100644
--- a/src/virtualkeyboard/hangul.h
+++ b/src/plugins/hangul/hangul_p.h
@@ -27,13 +27,25 @@
**
****************************************************************************/
-#ifndef HANGUL_H
-#define HANGUL_H
+#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
@@ -132,5 +144,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/virtualkeyboard/hangulinputmethod.cpp b/src/plugins/hangul/hangulinputmethod.cpp
index 3baf8305..8fcd5e96 100644
--- a/src/virtualkeyboard/hangulinputmethod.cpp
+++ b/src/plugins/hangul/hangulinputmethod.cpp
@@ -27,10 +27,11 @@
**
****************************************************************************/
-#include "hangulinputmethod.h"
-#include "inputcontext.h"
-#include "hangul.h"
+#include "hangulinputmethod_p.h"
+#include "hangul_p.h"
+#include <QtVirtualKeyboard/inputcontext.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -39,7 +40,7 @@ namespace QtVirtualKeyboard {
*/
HangulInputMethod::HangulInputMethod(QObject *parent) :
- AbstractInputMethod(*new AbstractInputMethodPrivate(), parent)
+ AbstractInputMethod(parent)
{
}
@@ -99,3 +100,4 @@ void HangulInputMethod::update()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/hangulinputmethod.h b/src/plugins/hangul/hangulinputmethod_p.h
index 2a59528f..ba0458eb 100644
--- a/src/virtualkeyboard/hangulinputmethod.h
+++ b/src/plugins/hangul/hangulinputmethod_p.h
@@ -27,11 +27,23 @@
**
****************************************************************************/
-#ifndef HANGULINPUTMETHOD_H
-#define HANGULINPUTMETHOD_H
+#ifndef HANGULINPUTMETHOD_P_H
+#define HANGULINPUTMETHOD_P_H
-#include "abstractinputmethod.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/abstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class HangulInputMethodPrivate;
@@ -55,5 +67,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // HANGULINPUTMETHOD_H
+#endif // HANGULINPUTMETHOD_P_H
diff --git a/src/plugins/hangul/hangulplugin.cpp b/src/plugins/hangul/hangulplugin.cpp
new file mode 100644
index 00000000..29c5d2a8
--- /dev/null
+++ b/src/plugins/hangul/hangulplugin.cpp
@@ -0,0 +1,44 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "hangulplugin.h"
+#include "hangulinputmethod_p.h"
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void HangulPlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<HangulInputMethod>(uri, 1, 3, "HangulInputMethod");
+ qmlRegisterType<HangulInputMethod>(uri, 2, 0, "HangulInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/hangul/hangulplugin.h b/src/plugins/hangul/hangulplugin.h
new file mode 100644
index 00000000..9e476390
--- /dev/null
+++ b/src/plugins/hangul/hangulplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef HANGULPLUGIN_H
+#define HANGULPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class HangulPlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "hangul.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/virtualkeyboard/3rdparty/hunspell/hunspell.pro b/src/plugins/hunspell/3rdparty/hunspell/hunspell.pro
index bd5eccb3..bd5eccb3 100644
--- a/src/virtualkeyboard/3rdparty/hunspell/hunspell.pro
+++ b/src/plugins/hunspell/3rdparty/hunspell/hunspell.pro
diff --git a/src/plugins/hunspell/hunspell.pro b/src/plugins/hunspell/hunspell.pro
new file mode 100644
index 00000000..fbe25a0a
--- /dev/null
+++ b/src/plugins/hunspell/hunspell.pro
@@ -0,0 +1,13 @@
+TEMPLATE = subdirs
+
+include(../../config.pri)
+
+SUBDIRS += \
+ hunspellinputmethod \
+ plugin
+hunspell-library {
+ SUBDIRS += 3rdparty/hunspell
+ hunspellinputmethod.depends += 3rdparty/hunspell
+}
+
+plugin.depends += hunspellinputmethod
diff --git a/src/virtualkeyboard/hunspellinputmethod.cpp b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.cpp
index 87134162..d437f8fe 100644
--- a/src/virtualkeyboard/hunspellinputmethod.cpp
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.cpp
@@ -27,23 +27,29 @@
**
****************************************************************************/
-#include "hunspellinputmethod_p.h"
-#include "inputcontext.h"
+#include <QtHunspellInputMethod/private/hunspellinputmethod_p_p.h>
+#include <QtVirtualKeyboard/inputcontext.h>
+#include <QLoggingCategory>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_LOGGING_CATEGORY(lcHunspell, "qt.virtualkeyboard.hunspell")
+
/*!
\class QtVirtualKeyboard::HunspellInputMethod
\internal
*/
-HunspellInputMethod::HunspellInputMethod(HunspellInputMethodPrivate &dd, QObject *parent) :
- AbstractInputMethod(dd, parent)
+HunspellInputMethod::HunspellInputMethod(HunspellInputMethodPrivate *d_ptr, QObject *parent) :
+ AbstractInputMethod(parent),
+ d_ptr(d_ptr)
{
}
HunspellInputMethod::HunspellInputMethod(QObject *parent) :
- AbstractInputMethod(*new HunspellInputMethodPrivate(this), parent)
+ AbstractInputMethod(parent),
+ d_ptr(new HunspellInputMethodPrivate(this))
{
}
@@ -349,3 +355,4 @@ void HunspellInputMethod::dictionaryLoadCompleted(bool success)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.pro b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.pro
new file mode 100644
index 00000000..a1aa9492
--- /dev/null
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod.pro
@@ -0,0 +1,23 @@
+TARGET = QtHunspellInputMethod
+MODULE = hunspellinputmethod
+
+CONFIG += static internal_module
+QT += virtualkeyboard-private
+
+MODULE_DEFINES = HAVE_HUNSPELL
+
+SOURCES += \
+ hunspellinputmethod.cpp \
+ hunspellinputmethod_p.cpp \
+ hunspellworker.cpp
+HEADERS += \
+ hunspellinputmethod_p.h \
+ hunspellinputmethod_p_p.h \
+ hunspellworker_p.h
+
+include(../../../config.pri)
+
+hunspell-library: QMAKE_USE += hunspell
+else:hunspell-package: PKGCONFIG += hunspell
+
+load(qt_module)
diff --git a/src/virtualkeyboard/hunspellinputmethod_p.cpp b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p.cpp
index 3a97e683..0120815a 100644
--- a/src/virtualkeyboard/hunspellinputmethod_p.cpp
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p.cpp
@@ -27,15 +27,15 @@
**
****************************************************************************/
-#include "hunspellinputmethod_p.h"
-#include "inputcontext.h"
+#include <QtHunspellInputMethod/private/hunspellinputmethod_p_p.h>
+#include <QtVirtualKeyboard/inputcontext.h>
#include <hunspell/hunspell.h>
#include <QStringList>
#include <QDir>
-#include "virtualkeyboarddebug.h"
#include <QTextCodec>
#include <QtCore/QLibraryInfo>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -44,7 +44,6 @@ namespace QtVirtualKeyboard {
*/
HunspellInputMethodPrivate::HunspellInputMethodPrivate(HunspellInputMethod *q_ptr) :
- AbstractInputMethodPrivate(),
q_ptr(q_ptr),
hunspellWorker(new HunspellWorker()),
locale(),
@@ -211,3 +210,4 @@ bool HunspellInputMethodPrivate::isJoiner(const QChar &c) const
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/hunspellinputmethod.h b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p.h
index 9faeff5c..26cf8452 100644
--- a/src/virtualkeyboard/hunspellinputmethod.h
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p.h
@@ -27,11 +27,23 @@
**
****************************************************************************/
-#ifndef HUNSPELLINPUTMETHOD_H
-#define HUNSPELLINPUTMETHOD_H
+#ifndef HUNSPELLINPUTMETHOD_P_H
+#define HUNSPELLINPUTMETHOD_P_H
-#include "abstractinputmethod.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/abstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class HunspellInputMethodPrivate;
@@ -41,7 +53,7 @@ class HunspellInputMethod : public AbstractInputMethod
Q_OBJECT
Q_DECLARE_PRIVATE(HunspellInputMethod)
protected:
- HunspellInputMethod(HunspellInputMethodPrivate &dd, QObject *parent);
+ HunspellInputMethod(HunspellInputMethodPrivate *d_ptr, QObject *parent);
public:
explicit HunspellInputMethod(QObject *parent = 0);
~HunspellInputMethod();
@@ -62,11 +74,15 @@ public:
void reset();
void update();
-protected slots:
+protected Q_SLOTS:
void updateSuggestions(const QStringList &wordList, int activeWordIndex);
void dictionaryLoadCompleted(bool success);
+
+protected:
+ QScopedPointer<HunspellInputMethodPrivate> d_ptr;
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // HUNSPELLINPUTMETHOD_H
+#endif // HUNSPELLINPUTMETHOD_P_H
diff --git a/src/virtualkeyboard/hunspellinputmethod_p.h b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p_p.h
index a73273b2..ebf202fd 100644
--- a/src/virtualkeyboard/hunspellinputmethod_p.h
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellinputmethod_p_p.h
@@ -27,15 +27,27 @@
**
****************************************************************************/
-#ifndef HUNSPELLINPUTMETHOD_P_H
-#define HUNSPELLINPUTMETHOD_P_H
+#ifndef HUNSPELLINPUTMETHOD_P_P_H
+#define HUNSPELLINPUTMETHOD_P_P_H
-#include "hunspellinputmethod.h"
-#include "hunspellworker.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 <QtHunspellInputMethod/private/hunspellinputmethod_p.h>
+#include <QtHunspellInputMethod/private/hunspellworker_p.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class HunspellInputMethodPrivate : public AbstractInputMethodPrivate
+class HunspellInputMethodPrivate
{
Q_DECLARE_PUBLIC(HunspellInputMethod)
@@ -71,5 +83,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // HUNSPELLINPUTMETHOD_P_H
+#endif // HUNSPELLINPUTMETHOD_P_P_H
diff --git a/src/virtualkeyboard/hunspellworker.cpp b/src/plugins/hunspell/hunspellinputmethod/hunspellworker.cpp
index fee4b939..292d3ae1 100644
--- a/src/virtualkeyboard/hunspellworker.cpp
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellworker.cpp
@@ -27,16 +27,19 @@
**
****************************************************************************/
-#include "hunspellworker.h"
-#include "virtualkeyboarddebug.h"
+#include <QtHunspellInputMethod/private/hunspellworker_p.h>
+#include <QLoggingCategory>
#include <QVector>
#include <QTextCodec>
#include <QFileInfo>
#include <QRegularExpression>
#include <QTime>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_DECLARE_LOGGING_CATEGORY(lcHunspell)
+
/*!
\class QtVirtualKeyboard::HunspellTask
\internal
@@ -64,12 +67,10 @@ void HunspellLoadDictionaryTask::run()
{
Q_ASSERT(hunspellPtr != 0);
- VIRTUALKEYBOARD_DEBUG() << "HunspellLoadDictionaryTask::run(): locale:" << locale;
+ qCDebug(lcHunspell) << "HunspellLoadDictionaryTask::run(): locale:" << locale;
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
if (*hunspellPtr) {
Hunspell_destroy(*hunspellPtr);
@@ -96,17 +97,15 @@ void HunspellLoadDictionaryTask::run()
by the QTextCodec.
*/
if (!QTextCodec::codecForName(Hunspell_get_dic_encoding(*hunspellPtr))) {
- qWarning() << "The Hunspell dictionary" << dicPath << "cannot be used because it uses an unknown text codec" << QString(Hunspell_get_dic_encoding(*hunspellPtr));
+ qCWarning(lcHunspell) << "The Hunspell dictionary" << dicPath << "cannot be used because it uses an unknown text codec" << QString(Hunspell_get_dic_encoding(*hunspellPtr));
Hunspell_destroy(*hunspellPtr);
*hunspellPtr = 0;
}
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "HunspellLoadDictionaryTask::run(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcHunspell) << "HunspellLoadDictionaryTask::run(): time:" << perf.elapsed() << "ms";
} else {
- VIRTUALKEYBOARD_DEBUG() << "Hunspell dictionary is missing for" << locale << ". Search paths" << searchPaths;
+ qCWarning(lcHunspell) << "Hunspell dictionary is missing for" << locale << ". Search paths" << searchPaths;
}
emit completed(*hunspellPtr != 0);
@@ -119,10 +118,8 @@ void HunspellLoadDictionaryTask::run()
void HunspellBuildSuggestionsTask::run()
{
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
wordList->list.append(word);
wordList->index = 0;
@@ -188,9 +185,7 @@ void HunspellBuildSuggestionsTask::run()
}
Hunspell_free_list(hunspell, &slst, n);
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "HunspellBuildSuggestionsTask::run(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcHunspell) << "HunspellBuildSuggestionsTask::run(): time:" << perf.elapsed() << "ms";
}
bool HunspellBuildSuggestionsTask::spellCheck(const QString &word)
@@ -319,3 +314,4 @@ void HunspellWorker::run()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/hunspellworker.h b/src/plugins/hunspell/hunspellinputmethod/hunspellworker_p.h
index ff423595..7c3be1f6 100644
--- a/src/virtualkeyboard/hunspellworker.h
+++ b/src/plugins/hunspell/hunspellinputmethod/hunspellworker_p.h
@@ -27,8 +27,19 @@
**
****************************************************************************/
-#ifndef HUNSPELLWORKER_H
-#define HUNSPELLWORKER_H
+#ifndef HUNSPELLWORKER_P_H
+#define HUNSPELLWORKER_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 <QThread>
#include <QSemaphore>
@@ -39,7 +50,6 @@
QT_BEGIN_NAMESPACE
class QTextCodec;
-QT_END_NAMESPACE
namespace QtVirtualKeyboard {
@@ -151,5 +161,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // HUNSPELLWORKER_H
+#endif // HUNSPELLWORKER_P_H
diff --git a/src/plugins/hunspell/plugin/hunspell.json b/src/plugins/hunspell/plugin/hunspell.json
new file mode 100644
index 00000000..449e440c
--- /dev/null
+++ b/src/plugins/hunspell/plugin/hunspell.json
@@ -0,0 +1,6 @@
+{
+ "Name": "default",
+ "Provider": "Qt Hunspell Extension",
+ "InputMethod": "DefaultInputMethod",
+ "Version": 100
+}
diff --git a/src/plugins/hunspell/plugin/hunspellplugin.cpp b/src/plugins/hunspell/plugin/hunspellplugin.cpp
new file mode 100644
index 00000000..89f5d7e8
--- /dev/null
+++ b/src/plugins/hunspell/plugin/hunspellplugin.cpp
@@ -0,0 +1,45 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "hunspellplugin.h"
+#include <QtHunspellInputMethod/private/hunspellinputmethod_p.h>
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void HunspellPlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<HunspellInputMethod>(uri, 1, 0, "HunspellInputMethod");
+ qmlRegisterType<HunspellInputMethod>(uri, 2, 0, "HunspellInputMethod");
+ qmlRegisterType<HunspellInputMethod>(uri, 2, 3, "DefaultInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/hunspell/plugin/hunspellplugin.h b/src/plugins/hunspell/plugin/hunspellplugin.h
new file mode 100644
index 00000000..142a76ef
--- /dev/null
+++ b/src/plugins/hunspell/plugin/hunspellplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef HUNSPELLPLUGIN_H
+#define HUNSPELLPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class HunspellPlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "hunspell.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/plugins/hunspell/plugin/plugin.pro b/src/plugins/hunspell/plugin/plugin.pro
new file mode 100644
index 00000000..5ebde9c5
--- /dev/null
+++ b/src/plugins/hunspell/plugin/plugin.pro
@@ -0,0 +1,34 @@
+TARGET = qtvirtualkeyboard_hunspell
+QT += qml virtualkeyboard hunspellinputmethod-private
+
+HEADERS += \
+ hunspellplugin.h
+SOURCES += \
+ hunspellplugin.cpp
+OTHER_FILES += \
+ hunspell.json
+
+include(../../../config.pri)
+
+hunspell-library {
+ exists(../3rdparty/hunspell/data) {
+ hunspell_data.files = \
+ $$PWD/../3rdparty/hunspell/data/*.dic \
+ $$PWD/../3rdparty/hunspell/data/*.aff
+ hunspell_data.path = $$VIRTUALKEYBOARD_INSTALL_DATA/hunspell
+ INSTALLS += hunspell_data
+ !prefix_build: COPIES += hunspell_data
+ } else {
+ error("Hunspell dictionaries are missing! Please copy .dic and .aff" \
+ "files to src/plugins/hunspell/3rdparty/hunspell/data directory.")
+ }
+}
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard Hunspell (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = HunspellPlugin
+load(qt_plugin)
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/MIT_LICENSE.txt b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/MIT_LICENSE.txt
index 5d391355..5d391355 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/MIT_LICENSE.txt
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/MIT_LICENSE.txt
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/license.txt b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/license.txt
index 219193f6..219193f6 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/license.txt
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/license.txt
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/lipi-toolkit.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/lipi-toolkit.pro
index 9593051a..9593051a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/lipi-toolkit.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/lipi-toolkit.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.cfg
index 73e13e21..73e13e21 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.mdt b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.mdt
index 3941986b..3941986b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.mdt
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/nn.mdt
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/profile.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/profile.cfg
index ddf5704f..ddf5704f 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/profile.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/default/profile.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/project.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/project.cfg
index 32fe6ba1..32fe6ba1 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/project.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/project.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/unicodeMapfile_alphanumeric.ini b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/unicodeMapfile_alphanumeric.ini
index 7b75d3f0..7b75d3f0 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/alphanumeric/config/unicodeMapfile_alphanumeric.ini
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/alphanumeric/config/unicodeMapfile_alphanumeric.ini
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.cfg
index f7322e5c..f7322e5c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.mdt b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.mdt
index 5430d396..5430d396 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.mdt
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/nn.mdt
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/profile.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/profile.cfg
index ddf5704f..ddf5704f 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/profile.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/pointfloat_nn/profile.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/project.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/project.cfg
index 98fa2526..98fa2526 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/project.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/project.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/unicodeMapfile_demonumerals.ini b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/unicodeMapfile_demonumerals.ini
index e45c7afc..e45c7afc 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/demonumerals/config/unicodeMapfile_demonumerals.ini
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/demonumerals/config/unicodeMapfile_demonumerals.ini
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/lipiengine.cfg
index c924d943..c924d943 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/projects/lipiengine.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/projects/lipiengine.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/qt_attribution.json b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/qt_attribution.json
index c26f7870..c26f7870 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/qt_attribution.json
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/qt_attribution.json
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKCaptureDevice.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKCaptureDevice.cpp
index 0b2b2a26..0b2b2a26 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKCaptureDevice.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKCaptureDevice.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKChannel.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKChannel.cpp
index 918419c9..918419c9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKChannel.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKChannel.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKException.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKException.cpp
index 48a0c834..48a0c834 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKException.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKException.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKScreenContext.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKScreenContext.cpp
index 735e7437..735e7437 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKScreenContext.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKScreenContext.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTrace.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTrace.cpp
index 3625ce50..3625ce50 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTrace.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTrace.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTraceFormat.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTraceFormat.cpp
index 65706dea..65706dea 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTraceFormat.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTraceFormat.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTraceGroup.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTraceGroup.cpp
index 282789d5..282789d5 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/LTKTraceGroup.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/LTKTraceGroup.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/common.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/common.pro
index fcb567bb..fcb567bb 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/common/common.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/common/common.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKCaptureDevice.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKCaptureDevice.h
index 5acb9838..5acb9838 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKCaptureDevice.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKCaptureDevice.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKChannel.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKChannel.h
index e5328bfd..e5328bfd 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKChannel.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKChannel.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKClassifierDefaults.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKClassifierDefaults.h
index 745b0bf0..745b0bf0 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKClassifierDefaults.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKClassifierDefaults.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKErrorsList.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKErrorsList.h
index 3307ae9a..3307ae9a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKErrorsList.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKErrorsList.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKException.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKException.h
index 1914ffa9..1914ffa9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKException.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKException.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKInc.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKInc.h
index 91fb8dd1..91fb8dd1 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKInc.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKInc.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h
index 04d315b9..04d315b9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLipiEngineInterface.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLogger.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLogger.h
index e0594d90..e0594d90 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLogger.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLogger.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLoggerInterface.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLoggerInterface.h
index 8bd94b5e..8bd94b5e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKLoggerInterface.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKLoggerInterface.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKMacros.h
index b9cc072d..b9cc072d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKMacros.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKMacros.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h
index 88a56ac8..88a56ac8 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKOSUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtilFactory.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKOSUtilFactory.h
index 2427d80e..2427d80e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKOSUtilFactory.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKOSUtilFactory.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocDefaults.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocDefaults.h
index 36179a7c..36179a7c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocDefaults.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocDefaults.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocessor.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocessor.h
index 8ef68249..8ef68249 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocessor.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocessor.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocessorInterface.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocessorInterface.h
index fb913100..fb913100 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKPreprocessorInterface.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKPreprocessorInterface.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKRecognitionContext.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKRecognitionContext.h
index cf1bcc62..cf1bcc62 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKRecognitionContext.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKRecognitionContext.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKRefCountedPtr.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKRefCountedPtr.h
index 3b67c9ee..3b67c9ee 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKRefCountedPtr.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKRefCountedPtr.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKScreenContext.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKScreenContext.h
index 08374256..08374256 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKScreenContext.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKScreenContext.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeFeatureMacros.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeFeatureMacros.h
index 7d107dd1..7d107dd1 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeFeatureMacros.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeFeatureMacros.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoConfig.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoConfig.h
index 1c9bc299..1c9bc299 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoConfig.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoConfig.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoEngine.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoEngine.h
index c33b727b..c33b727b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoEngine.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoEngine.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoResult.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoResult.h
index 7dc74129..7dc74129 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoResult.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoResult.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoUtil.h
index 9a4c3776..9a4c3776 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecoUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecoUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecognizer.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecognizer.h
index 7938b1f4..7938b1f4 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKShapeRecognizer.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKShapeRecognizer.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTrace.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTrace.h
index f114cd7a..f114cd7a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTrace.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTrace.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTraceFormat.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTraceFormat.h
index 26901b05..26901b05 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTraceFormat.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTraceFormat.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTraceGroup.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTraceGroup.h
index e96b4a63..e96b4a63 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTraceGroup.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTraceGroup.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTypes.h
index 6c10ccc2..6c10ccc2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKTypes.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKTypes.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecoConfig.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecoConfig.h
index 535b4c2a..535b4c2a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecoConfig.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecoConfig.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecoResult.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecoResult.h
index 3d54d6c2..3d54d6c2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecoResult.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecoResult.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecognizer.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecognizer.h
index 0322b79c..0322b79c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/LTKWordRecognizer.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/LTKWordRecognizer.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/TpcError.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/TpcError.h
index acace684..acace684 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/TpcError.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/TpcError.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/headers.pri b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/headers.pri
index b84d5e53..b84d5e53 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/include/headers.pri
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/include/headers.pri
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipicommon.pri b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipicommon.pri
index a1b770bb..a1b770bb 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipicommon.pri
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipicommon.pri
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp
index f5a69788..f5a69788 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h
index 9ccffac3..9ccffac3 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/LipiEngineModule.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.cpp
index eb55ddb4..eb55ddb4 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.def
index 96f73e12..96f73e12 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.h
index bc1aa408..bc1aa408 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.pro
index bfcc0bcd..bfcc0bcd 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/lipiengine.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/version.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/version.h
index a31c2503..a31c2503 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiengine/version.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiengine/version.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipilib.pri b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipilib.pri
index c28eb85d..c28eb85d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipilib.pri
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipilib.pri
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiplugin.pri b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiplugin.pri
index 3dd51a22..3dd51a22 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/lipiplugin.pri
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/lipiplugin.pri
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/reco.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/reco.pro
index 72efcc7f..72efcc7f 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/reco.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/reco.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.cpp
index bdbec8c2..bdbec8c2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.def
index 0a4f75c9..0a4f75c9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.h
index 854dc6da..854dc6da 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTW.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.cpp
index e0c36e6b..e0c36e6b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.h
index 276eeb24..276eeb24 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWAdapt.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.cpp
index 34886d32..34886d32 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.h
index 4d183487..4d183487 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWClusterModel.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.cpp
index 2514a626..2514a626 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.h
index f79182ea..f79182ea 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeModel.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp
index 247f5f98..247f5f98 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h
index 9459d5c7..9459d5c7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/ActiveDTWShapeRecognizer.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.cfg
index 142470cf..142470cf 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.pro
index 255c5512..255c5512 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/activedtw/activedtw.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoConfig.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoConfig.cpp
index 8ff31c80..8ff31c80 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoConfig.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoConfig.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoResult.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoResult.cpp
index 746d45dc..746d45dc 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoResult.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoResult.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoUtil.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoUtil.cpp
index 2d944d0c..2d944d0c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoUtil.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecoUtil.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecognizer.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecognizer.cpp
index bed1ca48..bed1ca48 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecognizer.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeRecognizer.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.cpp
index 4044c86f..4044c86f 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.h
index 02ec1f7f..02ec1f7f 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/LTKShapeSample.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/common.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/common.pro
index a8b0756b..a8b0756b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/common/common.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/common/common.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeature.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeature.h
index c233d3c5..c233d3c5 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeature.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeature.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.cpp
index 1b4e9532..1b4e9532 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.h
index 51ab4b57..51ab4b57 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractor.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp
index 07fa2adc..07fa2adc 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h
index d178d6ef..d178d6ef 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/LTKShapeFeatureExtractorFactory.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/common.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/common.pro
index ae6ce1d2..ae6ce1d2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/common.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/common/common.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/featureextractor.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/featureextractor.pro
index 538b9f29..538b9f29 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/featureextractor.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/featureextractor.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.cpp
index 16eaaca4..16eaaca4 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.h
index 6c767112..6c767112 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeature.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.cpp
index 19e6a9c1..19e6a9c1 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.h
index 9c48636d..9c48636d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/L7ShapeFeatureExtractor.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.cpp
index eca6cf84..eca6cf84 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.def
index 9a185d39..9a185d39 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.h
index c0f64a01..c0f64a01 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.pro
index 2372c2cf..2372c2cf 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/l7/l7.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.cpp
index 1d142230..1d142230 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.def
index 9a185d39..9a185d39 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.h
index c1a410d7..c1a410d7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPen.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.cpp
index a05867be..a05867be 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.h
index 1f9f5f08..1f9f5f08 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeature.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.cpp
index e20b63dc..e20b63dc 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.h
index 18ca347e..18ca347e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/NPenShapeFeatureExtractor.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/npen.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/npen.pro
index dacec369..dacec369 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/npen.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/npen/npen.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.cpp
index 81678e45..81678e45 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.def
index 9a185d39..9a185d39 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.h
index 91ee5e6b..91ee5e6b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloat.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.cpp
index 02e5c9c7..02e5c9c7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.h
index 4e05a0ca..4e05a0ca 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeature.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.cpp
index 49260852..49260852 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.h
index 59f14e20..59f14e20 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/PointFloatShapeFeatureExtractor.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/pointfloat.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/pointfloat.pro
index 39eff0ee..39eff0ee 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/pointfloat.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/pointfloat/pointfloat.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.cpp
index 8484b39d..8484b39d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.def
index c35a826e..c35a826e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.h
index 125ab5ae..125ab5ae 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStroke.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.cpp
index fb282d31..fb282d31 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.h
index 791ed9a7..791ed9a7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeature.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.cpp
index 87e0cd05..87e0cd05 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.h
index 7d803727..7d803727 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/SubStrokeShapeFeatureExtractor.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/substroke.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/substroke.pro
index 804d1f42..804d1f42 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/substroke.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/featureextractor/substroke/substroke.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.cpp
index ac6cdae5..ac6cdae5 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.def
index 0a4f75c9..0a4f75c9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.h
index bfe4ac02..bfe4ac02 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNet.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp
index 3c406f68..3c406f68 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h
index 6e32002a..6e32002a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/NeuralNetShapeRecognizer.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.cfg
index e52d3147..e52d3147 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.pro
index 8359a4f3..8359a4f3 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/neuralnet/neuralnet.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.cpp
index 167e7fed..167e7fed 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.def
index 0a4f75c9..0a4f75c9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.h
index 0241eb21..0241eb21 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NN.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.cpp
index 7e57252b..7e57252b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.h
index 2b78be50..2b78be50 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNAdapt.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp
index 78b09e47..78b09e47 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h
index cce1baf0..cce1baf0 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/NNShapeRecognizer.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.cfg
index c20803b7..c20803b7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.pro
index 0b7046db..0b7046db 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/nn/nn.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/LTKPreprocessor.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/LTKPreprocessor.cpp
index a3eae6cd..a3eae6cd 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/LTKPreprocessor.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/LTKPreprocessor.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.cpp
index b6f4fa28..b6f4fa28 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.def
index ca038d78..ca038d78 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.h
index 5d052153..5d052153 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.pro
index e8a11983..e8a11983 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/preprocessing/preprocessing.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/shaperec.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/shaperec.pro
index 8b5d5e3b..8b5d5e3b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/shaperec/shaperec.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/shaperec/shaperec.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp
index dbcdca58..dbcdca58 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h
index e0703b5a..e0703b5a 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/BoxFieldRecognizer.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cfg b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cfg
index b727da97..b727da97 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cfg
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cfg
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cpp
index 45969652..45969652 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.def
index 452b6dd6..452b6dd6 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.h
index f44d2ab3..f44d2ab3 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro
index 5d16d041..5d16d041 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/boxfld/boxfld.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKRecognitionContext.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKRecognitionContext.cpp
index 4fc45305..4fc45305 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKRecognitionContext.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKRecognitionContext.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoConfig.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoConfig.cpp
index 57fc6317..57fc6317 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoConfig.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoConfig.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoResult.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoResult.cpp
index f7c60716..f7c60716 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoResult.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/LTKWordRecoResult.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/common.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/common.pro
index bac16ef9..bac16ef9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/common/common.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/common/common.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/wordrec.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/wordrec.pro
index cf49e45d..cf49e45d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/reco/wordrec/wordrec.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/reco/wordrec/wordrec.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/src.pro
index a3f90198..a3f90198 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/src.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/src.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.cpp
index a9041ba6..a9041ba6 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.h
index 511bfbaa..511bfbaa 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKCheckSumGenerate.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.cpp
index 30e06f42..30e06f42 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.h
index 361d70f6..361d70f6 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKConfigFileReader.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKDynamicTimeWarping.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKDynamicTimeWarping.h
index dced46bc..dced46bc 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKDynamicTimeWarping.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKDynamicTimeWarping.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.cpp
index 2cf87532..2cf87532 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.h
index eac0224b..eac0224b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKErrors.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKHierarchicalClustering.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKHierarchicalClustering.h
index 921c6085..921c6085 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKHierarchicalClustering.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKHierarchicalClustering.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.cpp
index 9067ca98..9067ca98 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.h
index c1e387e6..c1e387e6 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKImageWriter.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.cpp
index da5e89b7..da5e89b7 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.h
index 16704688..16704688 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileReader.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.cpp
index ae7fdd3f..ae7fdd3f 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.h
index ee41ac4c..ee41ac4c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkFileWriter.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.cpp
index 53a34c13..53a34c13 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.h
index a6ca369e..a6ca369e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKInkUtils.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp
index f7f85702..f7f85702 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h
index d8eef6f2..d8eef6f2 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLinuxUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp
index 1971a69d..1971a69d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h
index 2f09831b..2f09831b 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKLoggerUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKOSUtilFactory.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKOSUtilFactory.cpp
index 87e14a64..87e14a64 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKOSUtilFactory.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKOSUtilFactory.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.cpp
index 3d27249e..3d27249e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.h
index a61517fb..a61517fb 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStrEncoding.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.cpp
index 7f56a66d..7f56a66d 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.h
index 4a2c9442..4a2c9442 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKStringUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.cpp
index 1b48e8d4..1b48e8d4 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.h
index 476aae72..476aae72 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKVersionCompatibilityCheck.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.cpp
index 1462fedf..1462fedf 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h
index 649a2700..649a2700 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWinCEUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp
index 825ee84c..825ee84c 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h
index d62350d9..d62350d9 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/LTKWindowsUtil.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/lib.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/lib.pro
index 362973c4..362973c4 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/lib/lib.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/lib/lib.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/LTKLogger.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/LTKLogger.cpp
index 75ad218e..75ad218e 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/LTKLogger.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/LTKLogger.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.cpp b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.cpp
index 2fa735bb..2fa735bb 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.cpp
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.cpp
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.def b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.def
index 5a47ec22..5a47ec22 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.def
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.def
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.h b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.h
index dfcbde30..dfcbde30 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.h
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.h
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.pro
index 5f1cc5ac..5f1cc5ac 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/logger/logger.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/logger/logger.pro
diff --git a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/util.pro b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/util.pro
index 79cfc027..79cfc027 100644
--- a/src/virtualkeyboard/3rdparty/lipi-toolkit/src/util/util.pro
+++ b/src/plugins/lipi-toolkit/3rdparty/lipi-toolkit/src/util/util.pro
diff --git a/src/plugins/lipi-toolkit/lipi-toolkit.pro b/src/plugins/lipi-toolkit/lipi-toolkit.pro
new file mode 100644
index 00000000..ce996b66
--- /dev/null
+++ b/src/plugins/lipi-toolkit/lipi-toolkit.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+
+SUBDIRS += \
+ 3rdparty/lipi-toolkit \
+ plugin
+
+plugin.depends += 3rdparty/lipi-toolkit
diff --git a/src/plugins/lipi-toolkit/plugin/lipi.json b/src/plugins/lipi-toolkit/plugin/lipi.json
new file mode 100644
index 00000000..8e22b4e9
--- /dev/null
+++ b/src/plugins/lipi-toolkit/plugin/lipi.json
@@ -0,0 +1,6 @@
+{
+ "Name": "handwriting",
+ "Provider": "Qt Lipi-Toolkit Extension",
+ "InputMethod": "HandwritingInputMethod",
+ "Version": 100
+}
diff --git a/src/virtualkeyboard/lipiinputmethod.cpp b/src/plugins/lipi-toolkit/plugin/lipiinputmethod.cpp
index 5bb1d46c..49fadf24 100644
--- a/src/virtualkeyboard/lipiinputmethod.cpp
+++ b/src/plugins/lipi-toolkit/plugin/lipiinputmethod.cpp
@@ -27,17 +27,17 @@
**
****************************************************************************/
-#include "lipiinputmethod.h"
-#include "lipisharedrecognizer.h"
-#include "inputengine.h"
-#include "inputcontext.h"
-#include "shifthandler.h"
-#include "virtualkeyboarddebug.h"
-#include "trace.h"
-#include "handwritinggesturerecognizer.h"
+#include "lipiinputmethod_p.h"
+#include "lipisharedrecognizer_p.h"
+#include <QtVirtualKeyboard/inputengine.h>
+#include <QtVirtualKeyboard/inputcontext.h>
+#include <QtVirtualKeyboard/private/shifthandler_p.h>
+#include <QLoggingCategory>
+#include <QtVirtualKeyboard/trace.h>
+#include <QtVirtualKeyboard/private/handwritinggesturerecognizer_p.h>
#ifdef HAVE_HUNSPELL
-#include "hunspellinputmethod_p.h"
+#include <QtHunspellInputMethod/private/hunspellinputmethod_p_p.h>
#endif
#include "LTKCaptureDevice.h"
@@ -55,13 +55,17 @@
#include <QStandardPaths>
#endif
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
#ifdef HAVE_HUNSPELL
#define LipiInputMethodPrivateBase HunspellInputMethodPrivate
#else
-#define LipiInputMethodPrivateBase AbstractInputMethodPrivate
+#define LipiInputMethodPrivateBase DummyPrivate
+class DummyPrivate {};
#endif
-namespace QtVirtualKeyboard {
+Q_LOGGING_CATEGORY(lcLipi, "qt.virtualkeyboard.lipi")
class LipiInputMethodPrivate : public LipiInputMethodPrivateBase
{
@@ -112,7 +116,7 @@ public:
if (context == currentContext)
return;
- VIRTUALKEYBOARD_DEBUG() << "LipiInputMethodPrivate::setContext():" << QString(context.toHex());
+ qCDebug(lcLipi) << "LipiInputMethodPrivate::setContext():" << QString(context.toHex());
clearTraces();
@@ -185,7 +189,7 @@ public:
void traceEnd(Trace *trace)
{
if (trace->isCanceled()) {
- VIRTUALKEYBOARD_DEBUG() << "LipiInputMethodPrivate::traceEnd(): discarded" << trace;
+ qCDebug(lcLipi) << "LipiInputMethodPrivate::traceEnd(): discarded" << trace;
traceList.removeOne(trace);
delete trace;
} else {
@@ -215,7 +219,7 @@ public:
if (gesture.isEmpty())
return;
- VIRTUALKEYBOARD_DEBUG() << "LipiInputMethodPrivate::handleGesture():" << gesture;
+ qCDebug(lcLipi) << "LipiInputMethodPrivate::handleGesture():" << gesture;
if (gesture[QLatin1String("type")].toString() == QLatin1String("swipe")) {
@@ -472,7 +476,12 @@ public:
*/
LipiInputMethod::LipiInputMethod(QObject *parent) :
- LipiInputMethodBase(*new LipiInputMethodPrivate(this), parent)
+#ifdef HAVE_HUNSPELL
+ LipiInputMethodBase(new LipiInputMethodPrivate(this), parent)
+#else
+ LipiInputMethodBase(parent),
+ d_ptr(new LipiInputMethodPrivate(this))
+#endif
{
}
@@ -608,17 +617,16 @@ void LipiInputMethod::timerEvent(QTimerEvent *timerEvent)
void LipiInputMethod::resultsAvailable(const QVariantList &resultList)
{
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- {
- VIRTUALKEYBOARD_DEBUG() << "LipiInputMethod::resultsAvailable():";
+ if (lcLipi().isDebugEnabled()) {
+ qCDebug(lcLipi) << "LipiInputMethod::resultsAvailable():";
for (int i = 0; i < resultList.size(); i++) {
QVariantMap result = resultList.at(i).toMap();
- VIRTUALKEYBOARD_DEBUG() << QString("%1: %2 (%3)").arg(i + 1).arg(result["unicode"].toChar()).arg(result["confidence"].toFloat()).toUtf8().constData();
+ qCDebug(lcLipi) << QString("%1: %2 (%3)").arg(i + 1).arg(result["unicode"].toChar()).arg(result["confidence"].toFloat()).toUtf8().constData();
}
}
-#endif
Q_D(LipiInputMethod);
d->resultsAvailable(resultList);
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/lipiinputmethod.h b/src/plugins/lipi-toolkit/plugin/lipiinputmethod_p.h
index cbb211ba..060b0f3d 100644
--- a/src/virtualkeyboard/lipiinputmethod.h
+++ b/src/plugins/lipi-toolkit/plugin/lipiinputmethod_p.h
@@ -27,17 +27,29 @@
**
****************************************************************************/
-#ifndef LIPIINPUTMETHOD_H
-#define LIPIINPUTMETHOD_H
+#ifndef LIPIINPUTMETHOD_P_H
+#define LIPIINPUTMETHOD_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.
+//
#ifdef HAVE_HUNSPELL
-#include "hunspellinputmethod.h"
+#include <QtHunspellInputMethod/private/hunspellinputmethod_p.h>
#define LipiInputMethodBase HunspellInputMethod
#else
#include "abstractinputmethod.h"
#define LipiInputMethodBase AbstractInputMethod
#endif
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class LipiInputMethodPrivate;
@@ -71,8 +83,14 @@ protected:
protected slots:
void resultsAvailable(const QVariantList &resultList);
+
+#ifndef HAVE_HUNSPELL
+private:
+ QScopedPointer<LipiInputMethodPrivate> d_ptr;
+#endif
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/plugins/lipi-toolkit/plugin/lipiplugin.cpp b/src/plugins/lipi-toolkit/plugin/lipiplugin.cpp
new file mode 100644
index 00000000..d31baed3
--- /dev/null
+++ b/src/plugins/lipi-toolkit/plugin/lipiplugin.cpp
@@ -0,0 +1,43 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "lipiplugin.h"
+#include "lipiinputmethod_p.h"
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void LipiPlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<LipiInputMethod>(uri, 2, 0, "HandwritingInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/lipi-toolkit/plugin/lipiplugin.h b/src/plugins/lipi-toolkit/plugin/lipiplugin.h
new file mode 100644
index 00000000..9888de2b
--- /dev/null
+++ b/src/plugins/lipi-toolkit/plugin/lipiplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef LIPIPLUGIN_H
+#define LIPIPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class LipiPlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "lipi.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/virtualkeyboard/lipisharedrecognizer.cpp b/src/plugins/lipi-toolkit/plugin/lipisharedrecognizer.cpp
index fc5a1ba7..a204e051 100644
--- a/src/virtualkeyboard/lipisharedrecognizer.cpp
+++ b/src/plugins/lipi-toolkit/plugin/lipisharedrecognizer.cpp
@@ -27,9 +27,9 @@
**
****************************************************************************/
-#include "lipisharedrecognizer.h"
-#include "virtualkeyboarddebug.h"
-#include "lipiworker.h"
+#include "lipisharedrecognizer_p.h"
+#include <QLoggingCategory>
+#include "lipiworker_p.h"
#include "LTKMacros.h"
#include "LTKInc.h"
@@ -46,8 +46,11 @@
#include <QDir>
#include <QtCore/QLibraryInfo>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_DECLARE_LOGGING_CATEGORY(lcLipi)
+
int LipiSharedRecognizer::s_lipiEngineRefCount = 0;
QString LipiSharedRecognizer::s_lipiRoot;
QString LipiSharedRecognizer::s_lipiLib;
@@ -84,7 +87,7 @@ QString LipiSharedRecognizer::model() const
bool LipiSharedRecognizer::setModel(const QString &modelName)
{
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::setModel():" << modelName;
+ qCDebug(lcLipi) << "LipiSharedRecognizer::setModel():" << modelName;
if (!s_lipiEngine) {
qWarning() << "Engine not initialized";
@@ -106,22 +109,16 @@ void LipiSharedRecognizer::subsetOfClasses(const QString &charset, vector<int> &
{
outSubsetOfClasses.clear();
outSubsetOfClasses.reserve(charset.length());
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QString notFound;
-#endif
for (int i = 0; i < charset.length(); i++) {
int classId = s_unicodeMap.key(charset.at(i), -1);
if (classId != -1)
outSubsetOfClasses.push_back(classId);
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- else
+ else if (lcLipi().isDebugEnabled())
notFound.append(charset.at(i));
-#endif
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
if (!notFound.isEmpty())
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::subsetOfClasses(): unrecognized characters" << notFound;
-#endif
+ qCDebug(lcLipi) << "LipiSharedRecognizer::subsetOfClasses(): unrecognized characters" << notFound;
}
QSharedPointer<LipiRecognitionTask> LipiSharedRecognizer::newRecognition(const LTKCaptureDevice& deviceInfo,
@@ -178,7 +175,7 @@ bool LipiSharedRecognizer::cancelRecognitionTask(QSharedPointer<LipiRecognitionT
int LipiSharedRecognizer::loadLipiInterface()
{
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::loadLipiInterface():" << s_lipiEngineRefCount;
+ qCDebug(lcLipi) << "LipiSharedRecognizer::loadLipiInterface():" << s_lipiEngineRefCount;
if (++s_lipiEngineRefCount == 1) {
if (s_lipiRoot.isEmpty()) {
@@ -248,7 +245,7 @@ int LipiSharedRecognizer::loadLipiInterface()
void LipiSharedRecognizer::unloadLipiInterface()
{
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::unloadLipiInterface():" << s_lipiEngineRefCount;
+ qCDebug(lcLipi) << "LipiSharedRecognizer::unloadLipiInterface():" << s_lipiEngineRefCount;
Q_ASSERT(s_lipiEngineRefCount > 0);
if (--s_lipiEngineRefCount == 0) {
@@ -308,15 +305,13 @@ int LipiSharedRecognizer::resolveLogicalNameToProjectProfile(const QString &logi
int LipiSharedRecognizer::loadModelData(const QString &logicalName)
{
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::loadModelData():" << logicalName;
+ qCDebug(lcLipi) << "LipiSharedRecognizer::loadModelData():" << logicalName;
Q_ASSERT(s_shapeRecognizer == 0);
Q_ASSERT(s_lipiWorker == 0);
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
s_activeModel = logicalName;
@@ -338,10 +333,8 @@ int LipiSharedRecognizer::loadModelData(const QString &logicalName)
}
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
if (result == SUCCESS)
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::loadModelData(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcLipi) << "LipiSharedRecognizer::loadModelData(): time:" << perf.elapsed() << "ms";
if (result != SUCCESS) {
qWarning() << QString("Error %1: %2").arg(result).arg(getErrorMessage(result).c_str());
@@ -356,12 +349,10 @@ void LipiSharedRecognizer::unloadModelData()
if (!s_shapeRecognizer)
return;
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::unloadModelData():" << s_activeModel;
+ qCDebug(lcLipi) << "LipiSharedRecognizer::unloadModelData():" << s_activeModel;
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
if (s_lipiWorker) {
delete s_lipiWorker;
@@ -373,9 +364,7 @@ void LipiSharedRecognizer::unloadModelData()
s_unicodeMap.clear();
s_activeModel.clear();
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "LipiSharedRecognizer::unloadModelData(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcLipi) << "LipiSharedRecognizer::unloadModelData(): time:" << perf.elapsed() << "ms";
}
int LipiSharedRecognizer::loadMapping(const QString &mapFile)
@@ -410,9 +399,10 @@ int LipiSharedRecognizer::loadMapping(const QString &mapFile)
return FAILURE;
}
- VIRTUALKEYBOARD_DEBUG() << s_unicodeMap;
+ qCDebug(lcLipi) << s_unicodeMap;
return SUCCESS;
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/lipisharedrecognizer.h b/src/plugins/lipi-toolkit/plugin/lipisharedrecognizer_p.h
index 5bfb6ec6..9d7cfbea 100644
--- a/src/virtualkeyboard/lipisharedrecognizer.h
+++ b/src/plugins/lipi-toolkit/plugin/lipisharedrecognizer_p.h
@@ -27,16 +27,28 @@
**
****************************************************************************/
-#ifndef LIPISHAREDRECOGNIZER_H
-#define LIPISHAREDRECOGNIZER_H
+#ifndef LIPISHAREDRECOGNIZER_P_H
+#define LIPISHAREDRECOGNIZER_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 <QMap>
-#include "lipiworker.h"
+#include "lipiworker_p.h"
class LTKLipiEngineInterface;
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class LipiSharedRecognizer
@@ -88,5 +100,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // LIPISHAREDRECOGNIZER_H
+#endif // LIPISHAREDRECOGNIZER_P_H
diff --git a/src/virtualkeyboard/lipiworker.cpp b/src/plugins/lipi-toolkit/plugin/lipiworker.cpp
index 45983621..b1e8320d 100644
--- a/src/virtualkeyboard/lipiworker.cpp
+++ b/src/plugins/lipi-toolkit/plugin/lipiworker.cpp
@@ -27,16 +27,19 @@
**
****************************************************************************/
-#include "lipiworker.h"
-#include "virtualkeyboarddebug.h"
+#include "lipiworker_p.h"
+#include <QLoggingCategory>
#include <QTime>
#include "LTKShapeRecognizer.h"
#include "LTKErrors.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_DECLARE_LOGGING_CATEGORY(lcLipi)
+
/*!
\class QtVirtualKeyboard::LipiTask
\internal
@@ -49,15 +52,11 @@ namespace QtVirtualKeyboard {
void LipiLoadModelDataTask::run()
{
- VIRTUALKEYBOARD_DEBUG() << "LipiLoadModelDataTask::run()";
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
+ qCDebug(lcLipi) << "LipiLoadModelDataTask::run()";
QTime perf;
perf.start();
-#endif
int result = shapeRecognizer->loadModelData();
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "LipiLoadModelDataTask::run(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcLipi) << "LipiLoadModelDataTask::run(): time:" << perf.elapsed() << "ms";
if (result != SUCCESS)
qWarning() << QString("Error %1: %2").arg(result).arg(getErrorMessage(result).c_str());
}
@@ -88,7 +87,7 @@ LipiRecognitionTask::LipiRecognitionTask(const LTKCaptureDevice& deviceInfo,
void LipiRecognitionTask::run()
{
- VIRTUALKEYBOARD_DEBUG() << "LipiRecognitionTask::run()";
+ qCDebug(lcLipi) << "LipiRecognitionTask::run()";
if (!shapeRecognizer || !resultVector)
return;
@@ -103,26 +102,20 @@ void LipiRecognitionTask::run()
shapeRecognizer->setDeviceContext(deviceInfo);
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
shapeRecognizer->recognize(traceGroup, screenContext,
inSubsetOfClasses, confThreshold,
numChoices, *resultVector);
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
int perfElapsed = perf.elapsed();
-#endif
{
QMutexLocker stateGuard(&stateLock);
stateRunning = false;
if (stateCancelled)
resultVector->clear();
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "LipiRecognitionTask::run(): time:" << perfElapsed << "ms" << (stateCancelled ? "(cancelled)" : "");
-#endif
+ qCDebug(lcLipi) << "LipiRecognitionTask::run(): time:" << perfElapsed << "ms" << (stateCancelled ? "(cancelled)" : "");
}
}
@@ -254,3 +247,4 @@ void LipiWorker::run()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/lipiworker.h b/src/plugins/lipi-toolkit/plugin/lipiworker_p.h
index 1117c3f4..e3073313 100644
--- a/src/virtualkeyboard/lipiworker.h
+++ b/src/plugins/lipi-toolkit/plugin/lipiworker_p.h
@@ -27,8 +27,19 @@
**
****************************************************************************/
-#ifndef LIPIWORKER_H
-#define LIPIWORKER_H
+#ifndef LIPIWORKER_P_H
+#define LIPIWORKER_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 <QThread>
#include <QSemaphore>
@@ -47,6 +58,7 @@
#include "LTKShapeRecognizer.h"
#include "LTKShapeRecoResult.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class LipiTask : public QObject
@@ -144,5 +156,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // LIPIWORKER_H
+#endif // LIPIWORKER_P_H
diff --git a/src/plugins/lipi-toolkit/plugin/plugin.pro b/src/plugins/lipi-toolkit/plugin/plugin.pro
new file mode 100644
index 00000000..07c7e872
--- /dev/null
+++ b/src/plugins/lipi-toolkit/plugin/plugin.pro
@@ -0,0 +1,55 @@
+TARGET = qtvirtualkeyboard_lipi
+CONFIG += exceptions
+QT += qml virtualkeyboard-private
+
+HEADERS += \
+ lipiinputmethod_p.h \
+ lipiplugin.h \
+ lipisharedrecognizer_p.h \
+ lipiworker_p.h
+SOURCES += \
+ lipiinputmethod.cpp \
+ lipiplugin.cpp \
+ lipisharedrecognizer.cpp \
+ lipiworker.cpp
+OTHER_FILES += \
+ lipi.json
+
+include(../../../config.pri)
+
+INCLUDEPATH += \
+ ../3rdparty/lipi-toolkit/src/include \
+ ../3rdparty/lipi-toolkit/src/util/lib
+LIBS += -L$$OUT_PWD/../../lib \
+ -lshaperecommon$$qtPlatformTargetSuffix() \
+ -lltkcommon$$qtPlatformTargetSuffix() \
+ -lltkutil$$qtPlatformTargetSuffix()
+win32: LIBS += Advapi32.lib
+else: QMAKE_USE += libdl
+ltk_projects.files = $$PWD/../3rdparty/lipi-toolkit/projects
+ltk_projects.path = $$VIRTUALKEYBOARD_INSTALL_DATA/lipi_toolkit
+INSTALLS += ltk_projects
+!prefix_build: COPIES += ltk_projects
+
+!disable-hunspell {
+ QT += hunspellinputmethod-private
+}
+
+contains(CONFIG, lang-en.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/en_GB/handwriting.qml
+contains(CONFIG, lang-nl.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/nl_NL/handwriting.qml
+
+!isEmpty(LAYOUT_FILES) {
+ layouts.files = $$LAYOUT_FILES
+ layouts.base = $$LAYOUTS_BASE
+ layouts.prefix = $$LAYOUTS_PREFIX
+ RESOURCES += layouts
+}
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard Lipi-Toolkit (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = LipiPlugin
+load(qt_plugin)
diff --git a/src/virtualkeyboard/3rdparty/openwnn/NOTICE b/src/plugins/openwnn/3rdparty/openwnn/NOTICE
index 828dc845..828dc845 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/NOTICE
+++ b/src/plugins/openwnn/3rdparty/openwnn/NOTICE
diff --git a/src/virtualkeyboard/3rdparty/openwnn/openwnn.pro b/src/plugins/openwnn/3rdparty/openwnn/openwnn.pro
index 9d9fc9b5..6c75d8ee 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/openwnn.pro
+++ b/src/plugins/openwnn/3rdparty/openwnn/openwnn.pro
@@ -5,6 +5,7 @@ CONFIG += static
CONFIG += warn_off
MODULE_INCLUDEPATH = $$PWD/wnnEngine/include
+MODULE_DEFINES = HAVE_OPENWNN
INCLUDEPATH += wnnDictionary/include
SOURCES += \
diff --git a/src/virtualkeyboard/3rdparty/openwnn/qt_attribution.json b/src/plugins/openwnn/3rdparty/openwnn/qt_attribution.json
index 9ac944df..9ac944df 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/qt_attribution.json
+++ b/src/plugins/openwnn/3rdparty/openwnn/qt_attribution.json
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndapi.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndapi.c
index 55971c69..55971c69 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndapi.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndapi.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndbdic.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndbdic.c
index 6cf73da7..6cf73da7 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndbdic.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndbdic.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndcommon.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndcommon.c
index fc1c25a6..fc1c25a6 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndcommon.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndcommon.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndfdic.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndfdic.c
index 1a7c37e2..1a7c37e2 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndfdic.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndfdic.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndldic.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndldic.c
index d140ea22..d140ea22 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndldic.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndldic.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndrdic.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndrdic.c
index b8fe6347..b8fe6347 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/ndrdic.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/ndrdic.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/neapi.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/neapi.c
index 4b59aac7..4b59aac7 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/neapi.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/neapi.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/necode.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/necode.c
index ca331861..ca331861 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/necode.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/necode.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/nj_str.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c
index 1892458b..1892458b 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/engine/nj_str.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_dic.h b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_dic.h
index 47b54acd..47b54acd 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_dic.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_dic.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_err.h b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_err.h
index 3b4010ca..3b4010ca 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_err.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_err.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_ext.h b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_ext.h
index 87553a00..87553a00 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_ext.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_ext.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_lib.h b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_lib.h
index 3334d1fc..3334d1fc 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/nj_lib.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/nj_lib.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/njd.h b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/njd.h
index 937a009b..937a009b 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/njd.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/njd.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/njx_lib.h b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/njx_lib.h
index 91755e70..91755e70 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnDictionary/include/njx_lib.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/include/njx_lib.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/WnnJpnDic.c b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/WnnJpnDic.c
index d3929598..d3929598 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/WnnJpnDic.c
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/WnnJpnDic.c
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/composingtext.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/composingtext.cpp
index 82022c8e..82022c8e 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/composingtext.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/composingtext.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/composingtext.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/composingtext.h
index be2cee2d..be2cee2d 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/composingtext.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/composingtext.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/kanaconverter.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/kanaconverter.h
index 13f14ebf..13f14ebf 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/kanaconverter.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/kanaconverter.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/letterconverter.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/letterconverter.h
index 5aa1cc56..5aa1cc56 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/letterconverter.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/letterconverter.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnnclauseconverterjajp.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnnclauseconverterjajp.h
index 5bd0d234..5bd0d234 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnnclauseconverterjajp.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnnclauseconverterjajp.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnndictionary.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnndictionary.h
index 8bc62940..8bc62940 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnndictionary.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnndictionary.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnnenginejajp.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnnenginejajp.h
index db416732..db416732 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/openwnnenginejajp.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/openwnnenginejajp.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkan.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkan.h
index 5889a659..5889a659 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkan.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkan.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkanfullkatakana.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkanfullkatakana.h
index 9e9db9fc..9e9db9fc 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkanfullkatakana.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkanfullkatakana.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkanhalfkatakana.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkanhalfkatakana.h
index 884fe493..884fe493 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/romkanhalfkatakana.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/romkanhalfkatakana.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/strsegment.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/strsegment.h
index f65665fd..f65665fd 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/strsegment.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/strsegment.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/wnnlookuptable.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/wnnlookuptable.h
index 49d88208..49d88208 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/wnnlookuptable.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/wnnlookuptable.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/wnnword.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/wnnword.h
index c7674ca4..c7674ca4 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/include/wnnword.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/include/wnnword.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/kanaconverter.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/kanaconverter.cpp
index 2b200b9e..2b200b9e 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/kanaconverter.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/kanaconverter.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/letterconverter.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/letterconverter.cpp
index 7dc94580..7dc94580 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/letterconverter.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/letterconverter.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnnclauseconverterjajp.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnnclauseconverterjajp.cpp
index 947f6cee..947f6cee 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnnclauseconverterjajp.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnnclauseconverterjajp.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnndictionary.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnndictionary.cpp
index 1063fd9a..1063fd9a 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnndictionary.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnndictionary.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnnenginejajp.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnnenginejajp.cpp
index dbcb7c37..dbcb7c37 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/openwnnenginejajp.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/openwnnenginejajp.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/predef_table.h b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/predef_table.h
index 34b6b660..34b6b660 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/predef_table.h
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/predef_table.h
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkan.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkan.cpp
index 3a555e2b..3a555e2b 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkan.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkan.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkanfullkatakana.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkanfullkatakana.cpp
index 32726f6b..32726f6b 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkanfullkatakana.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkanfullkatakana.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkanhalfkatakana.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkanhalfkatakana.cpp
index 14bdf527..14bdf527 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/romkanhalfkatakana.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/romkanhalfkatakana.cpp
diff --git a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/wnnlookuptable.cpp b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/wnnlookuptable.cpp
index 87f83dad..87f83dad 100644
--- a/src/virtualkeyboard/3rdparty/openwnn/wnnEngine/wnnlookuptable.cpp
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnEngine/wnnlookuptable.cpp
diff --git a/src/plugins/openwnn/openwnn.pro b/src/plugins/openwnn/openwnn.pro
new file mode 100644
index 00000000..33b18551
--- /dev/null
+++ b/src/plugins/openwnn/openwnn.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+
+SUBDIRS += \
+ 3rdparty/openwnn \
+ plugin
+
+plugin.depends += 3rdparty/openwnn
diff --git a/src/plugins/openwnn/plugin/openwnn.json b/src/plugins/openwnn/plugin/openwnn.json
new file mode 100644
index 00000000..053875f0
--- /dev/null
+++ b/src/plugins/openwnn/plugin/openwnn.json
@@ -0,0 +1,6 @@
+{
+ "Name": "japanese",
+ "Provider": "Qt OpenWNN Extension",
+ "InputMethod": "JapaneseInputMethod",
+ "Version": 100
+}
diff --git a/src/virtualkeyboard/openwnninputmethod.cpp b/src/plugins/openwnn/plugin/openwnninputmethod.cpp
index 2c265d00..a038fa34 100644
--- a/src/virtualkeyboard/openwnninputmethod.cpp
+++ b/src/plugins/openwnn/plugin/openwnninputmethod.cpp
@@ -27,9 +27,9 @@
**
****************************************************************************/
-#include "openwnninputmethod.h"
-#include "inputcontext.h"
-#include "virtualkeyboarddebug.h"
+#include "openwnninputmethod_p.h"
+#include <QtVirtualKeyboard/inputcontext.h>
+#include <QLoggingCategory>
#include <openwnnenginejajp.h>
#include <composingtext.h>
#include <romkan.h>
@@ -37,9 +37,12 @@
#include <romkanhalfkatakana.h>
#include <QTextFormat>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class OpenWnnInputMethodPrivate : public AbstractInputMethodPrivate
+Q_LOGGING_CATEGORY(lcOpenWnn, "qt.virtualkeyboard.openwnn")
+
+class OpenWnnInputMethodPrivate
{
Q_DECLARE_PUBLIC(OpenWnnInputMethod)
public:
@@ -61,7 +64,6 @@ public:
};
OpenWnnInputMethodPrivate(OpenWnnInputMethod *q_ptr) :
- AbstractInputMethodPrivate(),
q_ptr(q_ptr),
inputMode(InputEngine::Latin),
exactMatchMode(false),
@@ -173,16 +175,17 @@ public:
ss[0].clause->candidate = word->candidate;
ss[0].string = word->candidate;
composingText.replaceStrSegment(ComposingText::LAYER2, ss);
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- composingText.debugout();
-#endif
+ if (lcOpenWnn().isDebugEnabled())
+ composingText.debugout();
updateViewStatus(ComposingText::LAYER2, false, false);
}
void initializeScreen()
{
- if (composingText.size(ComposingText::LAYER0) != 0)
- inputEngine->inputContext()->commit("");
+ if (composingText.size(ComposingText::LAYER0) != 0) {
+ Q_Q(OpenWnnInputMethod);
+ q->inputContext()->commit("");
+ }
composingText.clear();
exactMatchMode = false;
activeConvertType = CONVERT_TYPE_NONE;
@@ -251,7 +254,8 @@ public:
int displayCursor = composingText.toString(layer, 0, cursor - 1).length();
attributes.append(QInputMethodEvent::Attribute(QInputMethodEvent::Cursor, displayCursor, 1, QVariant()));
- inputEngine->inputContext()->setPreeditText(displayText, attributes);
+ Q_Q(OpenWnnInputMethod);
+ q->inputContext()->setPreeditText(displayText, attributes);
}
}
@@ -358,7 +362,7 @@ public:
Q_Q(OpenWnnInputMethod);
enableConverter = true;
- Qt::InputMethodHints inputMethodHints = inputEngine->inputContext()->inputMethodHints();
+ Qt::InputMethodHints inputMethodHints = q->inputContext()->inputMethodHints();
if (inputMethodHints.testFlag(Qt::ImhDigitsOnly) ||
inputMethodHints.testFlag(Qt::ImhFormattedNumbersOnly) ||
inputMethodHints.testFlag(Qt::ImhDialableCharactersOnly)) {
@@ -419,6 +423,7 @@ public:
void commitConvertingText()
{
if (activeConvertType != CONVERT_TYPE_NONE) {
+ Q_Q(OpenWnnInputMethod);
int size = composingText.size(ComposingText::LAYER2);
for (int i = 0; i < size; i++) {
learnWord(i);
@@ -426,7 +431,7 @@ public:
QString text = composingText.toString(ComposingText::LAYER2);
disableUpdate = true;
- inputEngine->inputContext()->commit(text);
+ q->inputContext()->commit(text);
disableUpdate = false;
initializeScreen();
@@ -467,10 +472,11 @@ public:
bool commitText(const QString &string)
{
+ Q_Q(OpenWnnInputMethod);
ComposingText::TextLayer layer = targetLayer;
disableUpdate = true;
- inputEngine->inputContext()->commit(string);
+ q->inputContext()->commit(string);
disableUpdate = false;
int cursor = composingText.getCursor(layer);
@@ -531,9 +537,8 @@ public:
exactMatchMode = true;
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- composingText.debugout();
-#endif
+ if (lcOpenWnn().isDebugEnabled())
+ composingText.debugout();
commitCount = 0; /* retry consecutive clause conversion if necessary. */
updateViewStatus(targetLayer, true, true);
@@ -565,9 +570,8 @@ public:
}
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- composingText.debugout();
-#endif
+ if (lcOpenWnn().isDebugEnabled())
+ composingText.debugout();
commitCount = 0; /* retry consecutive clause conversion if necessary. */
@@ -604,7 +608,8 @@ public:
*/
OpenWnnInputMethod::OpenWnnInputMethod(QObject *parent) :
- AbstractInputMethod(*new OpenWnnInputMethodPrivate(this), parent)
+ AbstractInputMethod(parent),
+ d_ptr(new OpenWnnInputMethodPrivate(this))
{
}
@@ -694,9 +699,8 @@ bool OpenWnnInputMethod::keyEvent(Qt::Key key, const QString &text, Qt::Keyboard
d->composingText.deleteAt(ComposingText::LAYER1, false);
}
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- d->composingText.debugout();
-#endif
+ if (lcOpenWnn().isDebugEnabled())
+ d->composingText.debugout();
d->updateViewStatusForPrediction(true, true);
return true;
}
@@ -754,9 +758,8 @@ bool OpenWnnInputMethod::keyEvent(Qt::Key key, const QString &text, Qt::Keyboard
}
}
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- d->composingText.debugout();
-#endif
+ if (lcOpenWnn().isDebugEnabled())
+ d->composingText.debugout();
return true;
}
break;
@@ -821,3 +824,4 @@ void OpenWnnInputMethod::update()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/openwnninputmethod.h b/src/plugins/openwnn/plugin/openwnninputmethod_p.h
index 30d7d0f7..1ecdf8fc 100644
--- a/src/virtualkeyboard/openwnninputmethod.h
+++ b/src/plugins/openwnn/plugin/openwnninputmethod_p.h
@@ -27,11 +27,23 @@
**
****************************************************************************/
-#ifndef OPENWNNINPUTMETHOD_H
-#define OPENWNNINPUTMETHOD_H
+#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 "abstractinputmethod.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class OpenWnnInputMethodPrivate;
@@ -58,8 +70,12 @@ public:
void reset();
void update();
+
+private:
+ QScopedPointer<OpenWnnInputMethodPrivate> d_ptr;
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/plugins/openwnn/plugin/openwnnplugin.cpp b/src/plugins/openwnn/plugin/openwnnplugin.cpp
new file mode 100644
index 00000000..4b33fddf
--- /dev/null
+++ b/src/plugins/openwnn/plugin/openwnnplugin.cpp
@@ -0,0 +1,44 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "openwnnplugin.h"
+#include "openwnninputmethod_p.h"
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void OpenWnnPlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<OpenWnnInputMethod>(uri, 1, 3, "JapaneseInputMethod");
+ qmlRegisterType<OpenWnnInputMethod>(uri, 2, 0, "JapaneseInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/openwnn/plugin/openwnnplugin.h b/src/plugins/openwnn/plugin/openwnnplugin.h
new file mode 100644
index 00000000..d2818192
--- /dev/null
+++ b/src/plugins/openwnn/plugin/openwnnplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef OPENWNNPLUGIN_H
+#define OPENWNNPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class OpenWnnPlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "openwnn.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/plugins/openwnn/plugin/plugin.pro b/src/plugins/openwnn/plugin/plugin.pro
new file mode 100644
index 00000000..b7dc6ee1
--- /dev/null
+++ b/src/plugins/openwnn/plugin/plugin.pro
@@ -0,0 +1,33 @@
+TARGET = qtvirtualkeyboard_openwnn
+QT += qml virtualkeyboard
+
+HEADERS += \
+ openwnnplugin.h \
+ openwnninputmethod_p.h
+SOURCES += \
+ openwnnplugin.cpp \
+ openwnninputmethod.cpp
+OTHER_FILES += \
+ openwnn.json
+
+include(../../../config.pri)
+
+LAYOUT_FILES += \
+ $$LAYOUTS_BASE/content/layouts/ja_JP/main.qml \
+ $$LAYOUTS_BASE/content/layouts/ja_JP/symbols.qml
+
+layouts.files = $$LAYOUT_FILES
+layouts.base = $$LAYOUTS_BASE
+layouts.prefix = $$LAYOUTS_PREFIX
+RESOURCES += layouts
+
+QMAKE_USE += openwnn
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard OpenWNN (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = OpenWnnPlugin
+load(qt_plugin)
diff --git a/src/virtualkeyboard/3rdparty/pinyin/NOTICE b/src/plugins/pinyin/3rdparty/pinyin/NOTICE
index 64aaa8db..64aaa8db 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/NOTICE
+++ b/src/plugins/pinyin/3rdparty/pinyin/NOTICE
diff --git a/src/virtualkeyboard/3rdparty/pinyin/command/Makefile b/src/plugins/pinyin/3rdparty/pinyin/command/Makefile
index 8ef2315c..8ef2315c 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/command/Makefile
+++ b/src/plugins/pinyin/3rdparty/pinyin/command/Makefile
diff --git a/src/virtualkeyboard/3rdparty/pinyin/command/pinyinime_dictbuilder.cpp b/src/plugins/pinyin/3rdparty/pinyin/command/pinyinime_dictbuilder.cpp
index 41ea648d..41ea648d 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/command/pinyinime_dictbuilder.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/command/pinyinime_dictbuilder.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/data/dict_pinyin.dat b/src/plugins/pinyin/3rdparty/pinyin/data/dict_pinyin.dat
index 1be3f9c7..1be3f9c7 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/data/dict_pinyin.dat
+++ b/src/plugins/pinyin/3rdparty/pinyin/data/dict_pinyin.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/pinyin/data/rawdict_utf16_65105_freq.txt b/src/plugins/pinyin/3rdparty/pinyin/data/rawdict_utf16_65105_freq.txt
index 28805ba6..28805ba6 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/data/rawdict_utf16_65105_freq.txt
+++ b/src/plugins/pinyin/3rdparty/pinyin/data/rawdict_utf16_65105_freq.txt
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/pinyin/data/valid_utf16.txt b/src/plugins/pinyin/3rdparty/pinyin/data/valid_utf16.txt
index fecc67eb..fecc67eb 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/data/valid_utf16.txt
+++ b/src/plugins/pinyin/3rdparty/pinyin/data/valid_utf16.txt
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/atomdictbase.h b/src/plugins/pinyin/3rdparty/pinyin/include/atomdictbase.h
index 0a70a510..0a70a510 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/atomdictbase.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/atomdictbase.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/dictbuilder.h b/src/plugins/pinyin/3rdparty/pinyin/include/dictbuilder.h
index da0d6cd3..da0d6cd3 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/dictbuilder.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/dictbuilder.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/dictdef.h b/src/plugins/pinyin/3rdparty/pinyin/include/dictdef.h
index 5e1d7818..5e1d7818 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/dictdef.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/dictdef.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/dictlist.h b/src/plugins/pinyin/3rdparty/pinyin/include/dictlist.h
index 1c1daef4..1c1daef4 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/dictlist.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/dictlist.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/dicttrie.h b/src/plugins/pinyin/3rdparty/pinyin/include/dicttrie.h
index 86a8ee25..86a8ee25 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/dicttrie.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/dicttrie.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/lpicache.h b/src/plugins/pinyin/3rdparty/pinyin/include/lpicache.h
index 60735971..60735971 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/lpicache.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/lpicache.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/matrixsearch.h b/src/plugins/pinyin/3rdparty/pinyin/include/matrixsearch.h
index 61e78aa6..61e78aa6 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/matrixsearch.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/matrixsearch.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/mystdlib.h b/src/plugins/pinyin/3rdparty/pinyin/include/mystdlib.h
index dfcf980b..dfcf980b 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/mystdlib.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/mystdlib.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/ngram.h b/src/plugins/pinyin/3rdparty/pinyin/include/ngram.h
index 1d3a86e6..1d3a86e6 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/ngram.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/ngram.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/pinyinime.h b/src/plugins/pinyin/3rdparty/pinyin/include/pinyinime.h
index e376c20c..e376c20c 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/pinyinime.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/pinyinime.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/searchutility.h b/src/plugins/pinyin/3rdparty/pinyin/include/searchutility.h
index f1357107..f1357107 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/searchutility.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/searchutility.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/spellingtable.h b/src/plugins/pinyin/3rdparty/pinyin/include/spellingtable.h
index fd79c6ef..fd79c6ef 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/spellingtable.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/spellingtable.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/spellingtrie.h b/src/plugins/pinyin/3rdparty/pinyin/include/spellingtrie.h
index f943a24d..f943a24d 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/spellingtrie.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/spellingtrie.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/splparser.h b/src/plugins/pinyin/3rdparty/pinyin/include/splparser.h
index d783bd73..d783bd73 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/splparser.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/splparser.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/sync.h b/src/plugins/pinyin/3rdparty/pinyin/include/sync.h
index bf42d1f1..bf42d1f1 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/sync.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/sync.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/userdict.h b/src/plugins/pinyin/3rdparty/pinyin/include/userdict.h
index db010912..db010912 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/userdict.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/userdict.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/utf16char.h b/src/plugins/pinyin/3rdparty/pinyin/include/utf16char.h
index 7e957db5..7e957db5 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/utf16char.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/utf16char.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/utf16reader.h b/src/plugins/pinyin/3rdparty/pinyin/include/utf16reader.h
index b6d6719e..b6d6719e 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/include/utf16reader.h
+++ b/src/plugins/pinyin/3rdparty/pinyin/include/utf16reader.h
diff --git a/src/virtualkeyboard/3rdparty/pinyin/patches/0001-Make-the-keyboard-layout-changeable-in-password-url-.patch b/src/plugins/pinyin/3rdparty/pinyin/patches/0001-Make-the-keyboard-layout-changeable-in-password-url-.patch
index 9f5ea99b..9f5ea99b 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/patches/0001-Make-the-keyboard-layout-changeable-in-password-url-.patch
+++ b/src/plugins/pinyin/3rdparty/pinyin/patches/0001-Make-the-keyboard-layout-changeable-in-password-url-.patch
diff --git a/src/virtualkeyboard/3rdparty/pinyin/patches/0002-Prepare-Pinyin-library-for-WIN32.patch b/src/plugins/pinyin/3rdparty/pinyin/patches/0002-Prepare-Pinyin-library-for-WIN32.patch
index fff5130b..fff5130b 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/patches/0002-Prepare-Pinyin-library-for-WIN32.patch
+++ b/src/plugins/pinyin/3rdparty/pinyin/patches/0002-Prepare-Pinyin-library-for-WIN32.patch
diff --git a/src/virtualkeyboard/3rdparty/pinyin/patches/0003-Fix-crash-in-pinyin-ime-if-the-user-dictionary-canno.patch b/src/plugins/pinyin/3rdparty/pinyin/patches/0003-Fix-crash-in-pinyin-ime-if-the-user-dictionary-canno.patch
index 25452c7f..25452c7f 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/patches/0003-Fix-crash-in-pinyin-ime-if-the-user-dictionary-canno.patch
+++ b/src/plugins/pinyin/3rdparty/pinyin/patches/0003-Fix-crash-in-pinyin-ime-if-the-user-dictionary-canno.patch
diff --git a/src/virtualkeyboard/3rdparty/pinyin/patches/0004-Bundle-pinyin-dictionary-in-the-plugin.patch b/src/plugins/pinyin/3rdparty/pinyin/patches/0004-Bundle-pinyin-dictionary-in-the-plugin.patch
index 68857d45..68857d45 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/patches/0004-Bundle-pinyin-dictionary-in-the-plugin.patch
+++ b/src/plugins/pinyin/3rdparty/pinyin/patches/0004-Bundle-pinyin-dictionary-in-the-plugin.patch
diff --git a/src/virtualkeyboard/3rdparty/pinyin/pinyin.pro b/src/plugins/pinyin/3rdparty/pinyin/pinyin.pro
index 6b528867..0aedbb31 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/pinyin.pro
+++ b/src/plugins/pinyin/3rdparty/pinyin/pinyin.pro
@@ -5,6 +5,7 @@ CONFIG += static
CONFIG += warn_off
MODULE_INCLUDEPATH = $$PWD/include
+MODULE_DEFINES += HAVE_PINYIN
SOURCES += \
share/dictbuilder.cpp \
diff --git a/src/virtualkeyboard/3rdparty/pinyin/qt_attribution.json b/src/plugins/pinyin/3rdparty/pinyin/qt_attribution.json
index c739749f..c739749f 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/qt_attribution.json
+++ b/src/plugins/pinyin/3rdparty/pinyin/qt_attribution.json
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/dictbuilder.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/dictbuilder.cpp
index 6f0bd4f7..6f0bd4f7 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/dictbuilder.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/dictbuilder.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/dictlist.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/dictlist.cpp
index a5238aeb..a5238aeb 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/dictlist.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/dictlist.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/dicttrie.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/dicttrie.cpp
index e7d194f6..e7d194f6 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/dicttrie.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/dicttrie.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/lpicache.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/lpicache.cpp
index 4bb4ca26..4bb4ca26 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/lpicache.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/lpicache.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/matrixsearch.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/matrixsearch.cpp
index 41e11433..41e11433 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/matrixsearch.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/matrixsearch.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/mystdlib.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/mystdlib.cpp
index 93bbcc9f..93bbcc9f 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/mystdlib.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/mystdlib.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/ngram.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/ngram.cpp
index 39155bfb..39155bfb 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/ngram.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/ngram.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/pinyinime.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/pinyinime.cpp
index 4d206a76..4d206a76 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/pinyinime.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/pinyinime.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/searchutility.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/searchutility.cpp
index 281da388..281da388 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/searchutility.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/searchutility.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/spellingtable.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/spellingtable.cpp
index 6005e20d..6005e20d 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/spellingtable.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/spellingtable.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/spellingtrie.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/spellingtrie.cpp
index 355c56be..355c56be 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/spellingtrie.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/spellingtrie.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/splparser.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/splparser.cpp
index d75aec6a..d75aec6a 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/splparser.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/splparser.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/sync.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/sync.cpp
index 91e27b88..91e27b88 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/sync.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/sync.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/userdict.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/userdict.cpp
index 4687da2d..4687da2d 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/userdict.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/userdict.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/utf16char.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/utf16char.cpp
index fadb6cf2..fadb6cf2 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/utf16char.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/utf16char.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/share/utf16reader.cpp b/src/plugins/pinyin/3rdparty/pinyin/share/utf16reader.cpp
index d8e5de59..d8e5de59 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/share/utf16reader.cpp
+++ b/src/plugins/pinyin/3rdparty/pinyin/share/utf16reader.cpp
diff --git a/src/virtualkeyboard/3rdparty/pinyin/update-patches.sh b/src/plugins/pinyin/3rdparty/pinyin/update-patches.sh
index 98d7af6e..98d7af6e 100644
--- a/src/virtualkeyboard/3rdparty/pinyin/update-patches.sh
+++ b/src/plugins/pinyin/3rdparty/pinyin/update-patches.sh
diff --git a/src/plugins/pinyin/pinyin.pro b/src/plugins/pinyin/pinyin.pro
new file mode 100644
index 00000000..fda9a573
--- /dev/null
+++ b/src/plugins/pinyin/pinyin.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+
+SUBDIRS += \
+ 3rdparty/pinyin \
+ plugin
+
+plugin.depends += 3rdparty/pinyin
diff --git a/src/plugins/pinyin/plugin/pinyin.json b/src/plugins/pinyin/plugin/pinyin.json
new file mode 100644
index 00000000..6bb19d11
--- /dev/null
+++ b/src/plugins/pinyin/plugin/pinyin.json
@@ -0,0 +1,6 @@
+{
+ "Name": "pinyin",
+ "Provider": "Qt Pinyin Extension",
+ "InputMethod": "PinyinInputMethod",
+ "Version": 100
+}
diff --git a/src/virtualkeyboard/pinyindecoderservice.cpp b/src/plugins/pinyin/plugin/pinyindecoderservice.cpp
index 377ac024..ef836dcb 100644
--- a/src/virtualkeyboard/pinyindecoderservice.cpp
+++ b/src/plugins/pinyin/plugin/pinyindecoderservice.cpp
@@ -27,17 +27,20 @@
**
****************************************************************************/
-#include "pinyindecoderservice.h"
+#include "pinyindecoderservice_p.h"
#include "pinyinime.h"
#include "dictdef.h"
#include <QStandardPaths>
#include <QFileInfo>
#include <QDir>
#include <QtCore/QLibraryInfo>
-#include "virtualkeyboarddebug.h"
+#include <QLoggingCategory>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_DECLARE_LOGGING_CATEGORY(lcPinyin)
+
using namespace ime_pinyin;
QScopedPointer<PinyinDecoderService> PinyinDecoderService::_instance;
@@ -85,13 +88,13 @@ bool PinyinDecoderService::init()
QString usrDictPath = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
QFileInfo usrDictInfo(usrDictPath + "/qtvirtualkeyboard/pinyin/usr_dict.dat");
if (!usrDictInfo.exists()) {
- VIRTUALKEYBOARD_DEBUG() << "PinyinDecoderService::init(): creating directory for user dictionary" << usrDictInfo.absolutePath();
+ qCWarning(lcPinyin) << "PinyinDecoderService::init(): creating directory for user dictionary" << usrDictInfo.absolutePath();
QDir().mkpath(usrDictInfo.absolutePath());
}
initDone = im_open_decoder(sysDict.toUtf8().constData(), usrDictInfo.absoluteFilePath().toUtf8().constData());
if (!initDone)
- VIRTUALKEYBOARD_DEBUG() << "Could not initialize pinyin engine. sys_dict:" << sysDict << "usr_dict:" << usrDictInfo.absoluteFilePath();
+ qCWarning(lcPinyin) << "Could not initialize pinyin engine. sys_dict:" << sysDict << "usr_dict:" << usrDictInfo.absoluteFilePath();
return initDone;
}
@@ -230,3 +233,4 @@ QList<QString> PinyinDecoderService::predictionList(const QString &history)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/pinyindecoderservice.h b/src/plugins/pinyin/plugin/pinyindecoderservice_p.h
index 1db1d503..5034c4c6 100644
--- a/src/virtualkeyboard/pinyindecoderservice.h
+++ b/src/plugins/pinyin/plugin/pinyindecoderservice_p.h
@@ -27,11 +27,23 @@
**
****************************************************************************/
-#ifndef PINYINDECODERSERVICE_H
-#define PINYINDECODERSERVICE_H
+#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
@@ -69,5 +81,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // PINYINDECODERSERVICE_H
+#endif // PINYINDECODERSERVICE_P_H
diff --git a/src/virtualkeyboard/pinyininputmethod.cpp b/src/plugins/pinyin/plugin/pinyininputmethod.cpp
index 3181b438..601d5e56 100644
--- a/src/virtualkeyboard/pinyininputmethod.cpp
+++ b/src/plugins/pinyin/plugin/pinyininputmethod.cpp
@@ -27,14 +27,17 @@
**
****************************************************************************/
-#include "pinyininputmethod.h"
-#include "pinyindecoderservice.h"
-#include "inputcontext.h"
-#include "virtualkeyboarddebug.h"
+#include "pinyininputmethod_p.h"
+#include "pinyindecoderservice_p.h"
+#include <QtVirtualKeyboard/inputcontext.h>
+#include <QLoggingCategory>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class PinyinInputMethodPrivate : public AbstractInputMethodPrivate
+Q_LOGGING_CATEGORY(lcPinyin, "qt.virtualkeyboard.pinyin")
+
+class PinyinInputMethodPrivate
{
Q_DECLARE_PUBLIC(PinyinInputMethod)
@@ -362,7 +365,8 @@ private:
*/
PinyinInputMethod::PinyinInputMethod(QObject *parent) :
- AbstractInputMethod(*new PinyinInputMethodPrivate(this), parent)
+ AbstractInputMethod(parent),
+ d_ptr(new PinyinInputMethodPrivate(this))
{
}
@@ -494,3 +498,4 @@ void PinyinInputMethod::update()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/pinyininputmethod.h b/src/plugins/pinyin/plugin/pinyininputmethod_p.h
index 08837f2f..f766c68e 100644
--- a/src/virtualkeyboard/pinyininputmethod.h
+++ b/src/plugins/pinyin/plugin/pinyininputmethod_p.h
@@ -27,11 +27,23 @@
**
****************************************************************************/
-#ifndef PINYININPUTMETHOD_H
-#define PINYININPUTMETHOD_H
+#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 "abstractinputmethod.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class PinyinInputMethodPrivate;
@@ -58,8 +70,12 @@ public:
void reset();
void update();
+
+private:
+ QScopedPointer<PinyinInputMethodPrivate> d_ptr;
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // PINYININPUTMETHOD_H
+#endif // PINYININPUTMETHOD_P_H
diff --git a/src/plugins/pinyin/plugin/pinyinplugin.cpp b/src/plugins/pinyin/plugin/pinyinplugin.cpp
new file mode 100644
index 00000000..dd71b7f8
--- /dev/null
+++ b/src/plugins/pinyin/plugin/pinyinplugin.cpp
@@ -0,0 +1,44 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "pinyinplugin.h"
+#include "pinyininputmethod_p.h"
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void PinyinPlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<PinyinInputMethod>(uri, 1, 1, "PinyinInputMethod");
+ qmlRegisterType<PinyinInputMethod>(uri, 2, 0, "PinyinInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/pinyin/plugin/pinyinplugin.h b/src/plugins/pinyin/plugin/pinyinplugin.h
new file mode 100644
index 00000000..8d691fba
--- /dev/null
+++ b/src/plugins/pinyin/plugin/pinyinplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef PINYINPLUGIN_H
+#define PINYINPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class PinyinPlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "pinyin.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/plugins/pinyin/plugin/plugin.pro b/src/plugins/pinyin/plugin/plugin.pro
new file mode 100644
index 00000000..09315759
--- /dev/null
+++ b/src/plugins/pinyin/plugin/plugin.pro
@@ -0,0 +1,47 @@
+TARGET = qtvirtualkeyboard_pinyin
+QT += qml virtualkeyboard
+
+HEADERS += \
+ pinyindecoderservice_p.h \
+ pinyininputmethod_p.h \
+ pinyinplugin.h
+SOURCES += \
+ pinyindecoderservice.cpp \
+ pinyininputmethod.cpp \
+ pinyinplugin.cpp
+OTHER_FILES += \
+ pinyin.json
+
+include(../../../config.pri)
+
+LAYOUT_FILES += \
+ $$LAYOUTS_BASE/content/layouts/zh_CN/main.qml \
+ $$LAYOUTS_BASE/content/layouts/zh_CN/symbols.qml
+
+layouts.files = $$LAYOUT_FILES
+layouts.base = $$LAYOUTS_BASE
+layouts.prefix = $$LAYOUTS_PREFIX
+RESOURCES += layouts
+
+QMAKE_USE += pinyin
+!no-bundle-pinyin {
+ PINYIN_FILES += ../3rdparty/pinyin/data/dict_pinyin.dat
+ pinyin.files = $$PINYIN_FILES
+ pinyin.base = $$PWD/..
+ pinyin.prefix = /QtQuick/VirtualKeyboard
+ RESOURCES += pinyin
+} else {
+ pinyin_data.files = $$PWD/../3rdparty/pinyin/data/dict_pinyin.dat
+ pinyin_data.path = $$DATAPATH/pinyin
+ INSTALLS += pinyin_data
+ !prefix_build: COPIES += pinyin_data
+}
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard Pinyin (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = PinyinPlugin
+load(qt_plugin)
diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro
new file mode 100644
index 00000000..858dda3f
--- /dev/null
+++ b/src/plugins/plugins.pro
@@ -0,0 +1,14 @@
+TEMPLATE = subdirs
+
+include(../config.pri)
+
+hangul: SUBDIRS += hangul
+hunspell: SUBDIRS += hunspell
+lipi-toolkit: {
+ SUBDIRS += lipi-toolkit
+ !disable-hunspell: lipi-toolkit.depends += hunspell
+}
+openwnn: SUBDIRS += openwnn
+pinyin: SUBDIRS += pinyin
+t9write: SUBDIRS += t9write
+tcime: SUBDIRS += tcime
diff --git a/src/virtualkeyboard/3rdparty/t9write/t9write-build.pri b/src/plugins/t9write/3rdparty/t9write/t9write-build.pri
index f810badf..f810badf 100644
--- a/src/virtualkeyboard/3rdparty/t9write/t9write-build.pri
+++ b/src/plugins/t9write/3rdparty/t9write/t9write-build.pri
diff --git a/src/virtualkeyboard/3rdparty/t9write/t9write.pro b/src/plugins/t9write/3rdparty/t9write/t9write.pro
index 3594a97e..b86319ea 100644
--- a/src/virtualkeyboard/3rdparty/t9write/t9write.pro
+++ b/src/plugins/t9write/3rdparty/t9write/t9write.pro
@@ -1,7 +1,8 @@
TARGET = qtt9write_db
-
CONFIG += static
+HEADERS += $$files(api/*)
+
T9WRITE_RESOURCE_FILES = \
$$files(data/arabic/*.bin) \
$$files(data/hebrew/*.bin) \
diff --git a/src/virtualkeyboard/3rdparty/t9write/unpack.py b/src/plugins/t9write/3rdparty/t9write/unpack.py
index d3a67923..d3a67923 100644
--- a/src/virtualkeyboard/3rdparty/t9write/unpack.py
+++ b/src/plugins/t9write/3rdparty/t9write/unpack.py
diff --git a/src/plugins/t9write/plugin/plugin.pro b/src/plugins/t9write/plugin/plugin.pro
new file mode 100644
index 00000000..6b0b754a
--- /dev/null
+++ b/src/plugins/t9write/plugin/plugin.pro
@@ -0,0 +1,95 @@
+TARGET = qtvirtualkeyboard_t9write
+QT += qml virtualkeyboard-private
+
+HEADERS += \
+ t9write_p.h \
+ t9writedictionary_p.h \
+ t9writeinputmethod_p.h \
+ t9writeplugin.h \
+ t9writeworker_p.h
+SOURCES += \
+ t9writedictionary.cpp \
+ t9writeinputmethod.cpp \
+ t9writeplugin.cpp \
+ t9writeworker.cpp
+OTHER_FILES += \
+ t9write.json
+
+include(../../../config.pri)
+include(../3rdparty/t9write/t9write-build.pri)
+
+equals(T9WRITE_FOUND, 0): \
+ error("T9Write SDK could not be found. For more information, see" \
+ "the documentation in Building Qt Virtual Keyboard")
+
+t9write-alphabetic {
+ contains(CONFIG, lang-en.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/en_GB/handwriting.qml
+ contains(CONFIG, lang-ar.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/ar_AR/handwriting.qml
+ contains(CONFIG, lang-bg.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/bg_BG/handwriting.qml
+ contains(CONFIG, lang-cs.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/cs_CZ/handwriting.qml
+ contains(CONFIG, lang-da.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/da_DK/handwriting.qml
+ contains(CONFIG, lang-de.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/de_DE/handwriting.qml
+ contains(CONFIG, lang-el.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/el_GR/handwriting.qml
+ contains(CONFIG, lang-es.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/es_ES/handwriting.qml
+ contains(CONFIG, lang-et.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/et_EE/handwriting.qml
+ contains(CONFIG, lang-fa.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/fa_FA/handwriting.qml
+ contains(CONFIG, lang-fi.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/fi_FI/handwriting.qml
+ contains(CONFIG, lang-fr.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/fr_FR/handwriting.qml
+ contains(CONFIG, lang-he.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/he_IL/handwriting.qml
+ contains(CONFIG, lang-hr.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/hr_HR/handwriting.qml
+ contains(CONFIG, lang-hu.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/hu_HU/handwriting.qml
+ contains(CONFIG, lang-it.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/it_IT/handwriting.qml
+ contains(CONFIG, lang-nb.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/nb_NO/handwriting.qml
+ contains(CONFIG, lang-nl.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/nl_NL/handwriting.qml
+ contains(CONFIG, lang-pl.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/pl_PL/handwriting.qml
+ contains(CONFIG, lang-pt.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/pt_PT/handwriting.qml
+ contains(CONFIG, lang-ro.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/ro_RO/handwriting.qml
+ contains(CONFIG, lang-ru.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/ru_RU/handwriting.qml
+ contains(CONFIG, lang-sr.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/sr_SP/handwriting.qml
+ contains(CONFIG, lang-sv.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/sv_SE/handwriting.qml
+ contains(CONFIG, lang-vi.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/vi_VN/handwriting.qml
+}
+t9write-cjk {
+ contains(CONFIG, lang-ja.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/ja_JP/handwriting.qml
+ contains(CONFIG, lang-ko.*): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/ko_KR/handwriting.qml
+ contains(CONFIG, lang-zh(_CN)?): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/zh_CN/handwriting.qml
+ contains(CONFIG, lang-zh(_TW)?): LAYOUT_FILES += $$LAYOUTS_BASE/content/layouts/zh_TW/handwriting.qml
+}
+
+layouts.files = $$LAYOUT_FILES
+layouts.base = $$LAYOUTS_BASE
+layouts.prefix = $$LAYOUTS_PREFIX
+RESOURCES += layouts
+
+DEFINES += HAVE_T9WRITE
+QMAKE_USE += t9write_db
+INCLUDEPATH += $$T9WRITE_INCLUDE_DIRS
+t9write-alphabetic {
+ LIBS += $$T9WRITE_ALPHABETIC_LIBS
+ DEFINES += HAVE_T9WRITE_ALPHABETIC
+ !isEmpty(T9WRITE_ALPHABETIC_BINS) {
+ t9write_alphabetic_bins.files = $$T9WRITE_ALPHABETIC_BINS
+ t9write_alphabetic_bins.path = $$[QT_INSTALL_BINS]
+ INSTALLS += t9write_alphabetic_bins
+ !prefix_build: COPIES += t9write_alphabetic_bins
+ }
+}
+t9write-cjk {
+ LIBS += $$T9WRITE_CJK_LIBS
+ DEFINES += HAVE_T9WRITE_CJK
+ !isEmpty(T9WRITE_CJK_BINS) {
+ t9write_cjk_bins.files = $$T9WRITE_CJK_BINS
+ t9write_cjk_bins.path = $$[QT_INSTALL_BINS]
+ INSTALLS += t9write_cjk_bins
+ !prefix_build: COPIES += t9write_cjk_bins
+ }
+}
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard T9 Write (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = T9WritePlugin
+load(qt_plugin)
diff --git a/src/plugins/t9write/plugin/t9write.json b/src/plugins/t9write/plugin/t9write.json
new file mode 100644
index 00000000..ac71f7cc
--- /dev/null
+++ b/src/plugins/t9write/plugin/t9write.json
@@ -0,0 +1,6 @@
+{
+ "Name": "handwriting",
+ "Provider": "Qt T9 Write Extension",
+ "InputMethod": "HandwritingInputMethod",
+ "Version": 200
+}
diff --git a/src/virtualkeyboard/t9write.h b/src/plugins/t9write/plugin/t9write_p.h
index beebbaa2..c052b4c7 100644
--- a/src/virtualkeyboard/t9write.h
+++ b/src/plugins/t9write/plugin/t9write_p.h
@@ -27,8 +27,19 @@
**
****************************************************************************/
-#ifndef T9WRITE_H
-#define T9WRITE_H
+#ifndef T9WRITE_P_H
+#define T9WRITE_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 "t9write_api_version.h"
#ifdef HAVE_T9WRITE_ALPHABETIC
@@ -47,4 +58,4 @@
#define DECUMA_API(FUNC_NAME) (decuma ## FUNC_NAME)
#endif
-#endif // T9WRITE_H
+#endif // T9WRITE_P_H
diff --git a/src/virtualkeyboard/t9writedictionary.cpp b/src/plugins/t9write/plugin/t9writedictionary.cpp
index d15b16e3..4d3f3419 100644
--- a/src/virtualkeyboard/t9writedictionary.cpp
+++ b/src/plugins/t9write/plugin/t9writedictionary.cpp
@@ -27,11 +27,14 @@
**
****************************************************************************/
-#include "t9writedictionary.h"
-#include "virtualkeyboarddebug.h"
+#include "t9writedictionary_p.h"
+#include <QLoggingCategory>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_DECLARE_LOGGING_CATEGORY(lcT9Write)
+
T9WriteDictionary::T9WriteDictionary(DECUMA_SESSION *decumaSession,
const DECUMA_MEM_FUNCTIONS &memFuncs,
bool cjk) :
@@ -65,11 +68,11 @@ bool T9WriteDictionary::load(const QString &fileName)
sourceData = file.map(0, sourceSize, QFile::NoOptions);
if (!sourceData) {
sourceSize = 0;
- qWarning() << "Could not read dictionary file" << fileName;
+ qCWarning(lcT9Write) << "Could not read dictionary file" << fileName;
}
file.close();
} else {
- qWarning() << "Could not open dictionary file" << fileName;
+ qCWarning(lcT9Write) << "Could not open dictionary file" << fileName;
}
return sourceData != 0;
@@ -85,7 +88,7 @@ bool T9WriteDictionary::convert(const DECUMA_SRC_DICTIONARY_INFO &dictionaryInfo
&dictionaryInfo, &convertedSize, &memFuncs);
if (status != decumaNoError) {
- qWarning() << "Could not convert dictionary" << file.fileName();
+ qCWarning(lcT9Write) << "Could not convert dictionary" << file.fileName();
file.unmap((uchar *)sourceData);
sourceSize = 0;
sourceData = 0;
@@ -115,3 +118,4 @@ bool T9WriteDictionary::isConverted() const
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/t9writedictionary.h b/src/plugins/t9write/plugin/t9writedictionary_p.h
index dc2d9475..d728a583 100644
--- a/src/virtualkeyboard/t9writedictionary.h
+++ b/src/plugins/t9write/plugin/t9writedictionary_p.h
@@ -27,13 +27,25 @@
**
****************************************************************************/
-#ifndef T9WRITEDICTIONARY_H
-#define T9WRITEDICTIONARY_H
+#ifndef T9WRITEDICTIONARY_P_H
+#define T9WRITEDICTIONARY_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 <QtGlobal>
#include <QFile>
-#include "t9write.h"
+#include "t9write_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class T9WriteDictionary
@@ -62,6 +74,7 @@ private:
DECUMA_UINT32 convertedSize;
};
-}
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // T9WRITEDICTIONARY_H
+#endif // T9WRITEDICTIONARY_P_H
diff --git a/src/virtualkeyboard/t9writeinputmethod.cpp b/src/plugins/t9write/plugin/t9writeinputmethod.cpp
index 884dceca..6bafca55 100644
--- a/src/virtualkeyboard/t9writeinputmethod.cpp
+++ b/src/plugins/t9write/plugin/t9writeinputmethod.cpp
@@ -27,18 +27,16 @@
**
****************************************************************************/
-#include "t9writeinputmethod.h"
-#include "inputengine.h"
-#include "inputcontext.h"
-#include "trace.h"
-#include "t9writeworker.h"
-#include "virtualkeyboarddebug.h"
+#include "t9writeinputmethod_p.h"
+#include <QtVirtualKeyboard/inputengine.h>
+#include <QtVirtualKeyboard/inputcontext.h>
+#include <QtVirtualKeyboard/trace.h>
+#include "t9writeworker_p.h"
+#include <QLoggingCategory>
#include <QDirIterator>
#include <QCryptographicHash>
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
#include <QTime>
-#endif
-#include "handwritinggesturerecognizer.h"
+#include <QtVirtualKeyboard/private/handwritinggesturerecognizer_p.h>
#ifdef QT_VIRTUALKEYBOARD_RECORD_TRACE_INPUT
#include "unipentrace.h"
#include <QStandardPaths>
@@ -57,8 +55,11 @@
*/
#define QT_VIRTUALKEYBOARD_T9WRITE_LOG 0
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_LOGGING_CATEGORY(lcT9Write, "qt.virtualkeyboard.t9write")
+
class T9WriteCaseFormatter
{
public:
@@ -102,7 +103,7 @@ private:
QList<InputEngine::TextCase> textCaseList;
};
-class T9WriteInputMethodPrivate : public AbstractInputMethodPrivate
+class T9WriteInputMethodPrivate
{
Q_DECLARE_PUBLIC(T9WriteInputMethod)
public:
@@ -120,7 +121,6 @@ public:
};
T9WriteInputMethodPrivate(T9WriteInputMethod *q_ptr) :
- AbstractInputMethodPrivate(),
q_ptr(q_ptr),
cjk(false),
engineMode(EngineUninitialized),
@@ -184,7 +184,7 @@ public:
if (engineMode == newEngineMode)
return engineMode != EngineUninitialized;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::initEngine()" << newEngineMode;
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::initEngine()" << newEngineMode;
if (decumaSession)
exitEngine();
@@ -264,7 +264,7 @@ public:
void exitEngine()
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::exitEngine()";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::exitEngine()";
if (processResultConnection)
QObject::disconnect(processResultConnection);
@@ -393,7 +393,7 @@ public:
QMutexLocker dictionaryGuard(&dictionaryLock);
Q_ASSERT(decumaSession != 0);
Q_ASSERT(dictionary != 0);
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::attachDictionary():" << dictionary->fileName();
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::attachDictionary():" << dictionary->fileName();
#if T9WRITEAPIMAJORVERNUM >= 20
DECUMA_STATUS status = DECUMA_API(AttachDictionary)(decumaSession, dictionary->data(), dictionary->size());
#else
@@ -408,7 +408,7 @@ public:
if (!dictionary)
return;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::detachDictionary():" << dictionary->fileName();
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::detachDictionary():" << dictionary->fileName();
Q_ASSERT(decumaSession != 0);
DECUMA_STATUS status = DECUMA_API(DetachDictionary)(decumaSession, dictionary->data());
@@ -419,7 +419,7 @@ public:
bool setInputMode(const QLocale &locale, InputEngine::InputMode inputMode)
{
Q_Q(T9WriteInputMethod);
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::setInputMode():" << locale << inputMode;
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::setInputMode():" << locale << inputMode;
finishRecognition();
@@ -464,9 +464,9 @@ public:
sessionSettings.nMaxThreads = qMax(QThread::idealThreadCount(), 0);
#endif
- VIRTUALKEYBOARD_DEBUG() << " -> language categories:" << languageCategories;
- VIRTUALKEYBOARD_DEBUG() << " -> symbol categories:" << symbolCategories;
- VIRTUALKEYBOARD_DEBUG() << " -> recognition mode:" << sessionSettings.recognitionMode;
+ qCDebug(lcT9Write) << " -> language categories:" << languageCategories;
+ qCDebug(lcT9Write) << " -> symbol categories:" << symbolCategories;
+ qCDebug(lcT9Write) << " -> recognition mode:" << sessionSettings.recognitionMode;
// Change session settings
sessionSettings.charSet.pSymbolCategories = symbolCategories.data();
@@ -956,7 +956,7 @@ public:
}
if (!dictionaryFileName.isEmpty()) {
if (dictionaryTask.isNull() || dictionaryTask->dictionaryFileName != dictionaryFileName) {
- VIRTUALKEYBOARD_DEBUG() << " -> load dictionary:" << dictionaryFileName;
+ qCDebug(lcT9Write) << " -> load dictionary:" << dictionaryFileName;
bool convertDictionary = true;
#if defined(HAVE_T9WRITE_CJK) && T9WRITEAPIMAJORVERNUM >= 20
@@ -1010,7 +1010,7 @@ public:
return;
currentContext = context;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::setContext():" << QString(context.toHex());
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::setContext():" << QString(context.toHex());
// Finish recognition, but preserve current input
Q_Q(T9WriteInputMethod);
@@ -1153,7 +1153,7 @@ public:
if (wordCandidatesHwrResultIndex.isEmpty())
return;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::noteSelected():" << index;
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::noteSelected():" << index;
Q_ASSERT(index >= 0 && index < wordCandidatesHwrResultIndex.length());
int resultIndex = wordCandidatesHwrResultIndex[index];
DECUMA_STATUS status = DECUMA_API(NoteSelectedCandidate)(decumaSession, resultIndex);
@@ -1163,7 +1163,7 @@ public:
void restartRecognition()
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::restartRecognition()";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::restartRecognition()";
Q_Q(T9WriteInputMethod);
@@ -1199,14 +1199,14 @@ public:
if (!worker)
return;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::waitForRecognitionResults()";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::waitForRecognitionResults()";
worker->waitForAllTasks();
processResult();
}
bool finishRecognition(bool emitSelectionListChanged = true)
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::finishRecognition()";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::finishRecognition()";
if (!worker)
return false;
@@ -1268,7 +1268,7 @@ public:
return false;
}
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::select():" << index;
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::select():" << index;
Q_Q(T9WriteInputMethod);
if (sessionSettings.recognitionMode != scrMode) {
@@ -1311,7 +1311,7 @@ public:
void resetResultTimer(int interval = 500)
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::resetResultTimer():" << interval;
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::resetResultTimer():" << interval;
Q_Q(T9WriteInputMethod);
stopResultTimer();
resultTimer = q->startTimer(interval);
@@ -1320,7 +1320,7 @@ public:
void stopResultTimer()
{
if (resultTimer) {
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::stopResultTimer()";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::stopResultTimer()";
Q_Q(T9WriteInputMethod);
q->killTimer(resultTimer);
resultTimer = 0;
@@ -1329,7 +1329,7 @@ public:
void processResult()
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::processResult()";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::processResult()";
Q_Q(T9WriteInputMethod);
InputContext *ic = q->inputContext();
if (!ic)
@@ -1346,7 +1346,7 @@ public:
return;
if (resultList.first().toMap()["resultId"] != resultId) {
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::processResult(): resultId mismatch" << resultList.first().toMap()["resultId"] << "(" << resultId << ")";
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::processResult(): resultId mismatch" << resultList.first().toMap()["resultId"] << "(" << resultId << ")";
resultList.clear();
return;
}
@@ -1431,7 +1431,7 @@ public:
// Enforce hard limit for number of traces
if (traceList.count() >= traceListHardLimit) {
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::processResult(): Clearing traces (hard limit):" << traceList.count();
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::processResult(): Clearing traces (hard limit):" << traceList.count();
clearTraces();
}
}
@@ -1520,7 +1520,7 @@ public:
if (gesture.isEmpty())
return false;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethodPrivate::handleGesture():" << gesture;
+ qCDebug(lcT9Write) << "T9WriteInputMethodPrivate::handleGesture():" << gesture;
if (gesture[QLatin1String("type")].toString() == QLatin1String("swipe")) {
@@ -1675,7 +1675,8 @@ const DECUMA_MEM_FUNCTIONS T9WriteInputMethodPrivate::memFuncs = {
*/
T9WriteInputMethod::T9WriteInputMethod(QObject *parent) :
- AbstractInputMethod(*new T9WriteInputMethodPrivate(this), parent)
+ AbstractInputMethod(parent),
+ d_ptr(new T9WriteInputMethodPrivate(this))
{
}
@@ -2025,13 +2026,13 @@ void T9WriteInputMethod::timerEvent(QTimerEvent *timerEvent)
{
Q_D(T9WriteInputMethod);
int timerId = timerEvent->timerId();
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethod::timerEvent():" << timerId;
+ qCDebug(lcT9Write) << "T9WriteInputMethod::timerEvent():" << timerId;
if (timerId == d->resultTimer) {
d->stopResultTimer();
// Ignore if the result is not yet available
if (d->resultId != d->lastResultId) {
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethod::timerEvent(): Result not yet available";
+ qCDebug(lcT9Write) << "T9WriteInputMethod::timerEvent(): Result not yet available";
return;
}
@@ -2068,7 +2069,7 @@ void T9WriteInputMethod::dictionaryLoadCompleted(QSharedPointer<T9WriteDictionar
if (!dictionary)
return;
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethod::dictionaryLoadCompleted():"
+ qCDebug(lcT9Write) << "T9WriteInputMethod::dictionaryLoadCompleted():"
<< dictionary->fileName() << dictionary->data() << dictionary->size();
InputContext *ic = inputContext();
@@ -2085,9 +2086,8 @@ void T9WriteInputMethod::dictionaryLoadCompleted(QSharedPointer<T9WriteDictionar
void T9WriteInputMethod::resultsAvailable(const QVariantList &resultList)
{
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- {
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethod::resultsAvailable():";
+ if (lcT9Write().isDebugEnabled()) {
+ qCDebug(lcT9Write) << "T9WriteInputMethod::resultsAvailable():";
for (int i = 0; i < resultList.size(); i++) {
QVariantMap result = resultList.at(i).toMap();
QString resultPrint = QString("%1: ").arg(i + 1);
@@ -2100,10 +2100,9 @@ void T9WriteInputMethod::resultsAvailable(const QVariantList &resultList)
resultPrint.append("gesture = 0x");
resultPrint.append(result["gesture"].toString().toUtf8().toHex());
}
- VIRTUALKEYBOARD_DEBUG() << resultPrint.toUtf8().constData();
+ qCDebug(lcT9Write) << resultPrint.toUtf8().constData();
}
}
-#endif
Q_D(T9WriteInputMethod);
QMutexLocker resultListGuard(&d->resultListLock);
d->resultList = resultList;
@@ -2125,8 +2124,9 @@ void T9WriteInputMethod::processResult()
void T9WriteInputMethod::recognitionError(int status)
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteInputMethod::recognitionError():" << status;
+ qCDebug(lcT9Write) << "T9WriteInputMethod::recognitionError():" << status;
reset();
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/t9writeinputmethod.h b/src/plugins/t9write/plugin/t9writeinputmethod_p.h
index 9d922537..45e62c47 100644
--- a/src/virtualkeyboard/t9writeinputmethod.h
+++ b/src/plugins/t9write/plugin/t9writeinputmethod_p.h
@@ -27,12 +27,24 @@
**
****************************************************************************/
-#ifndef T9WRITEINPUTMETHOD_H
-#define T9WRITEINPUTMETHOD_H
+#ifndef T9WRITEINPUTMETHOD_P_H
+#define T9WRITEINPUTMETHOD_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 "abstractinputmethod.h"
#include <QSharedPointer>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class T9WriteInputMethodPrivate;
@@ -79,8 +91,12 @@ protected slots:
void resultsAvailable(const QVariantList &resultList);
void processResult();
void recognitionError(int status);
+
+private:
+ QScopedPointer<T9WriteInputMethodPrivate> d_ptr;
};
-}
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/plugins/t9write/plugin/t9writeplugin.cpp b/src/plugins/t9write/plugin/t9writeplugin.cpp
new file mode 100644
index 00000000..474f52cd
--- /dev/null
+++ b/src/plugins/t9write/plugin/t9writeplugin.cpp
@@ -0,0 +1,43 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "t9writeplugin.h"
+#include "t9writeinputmethod_p.h"
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void T9WritePlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<T9WriteInputMethod>(uri, 2, 0, "HandwritingInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/t9write/plugin/t9writeplugin.h b/src/plugins/t9write/plugin/t9writeplugin.h
new file mode 100644
index 00000000..7c221a43
--- /dev/null
+++ b/src/plugins/t9write/plugin/t9writeplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef T9WRITEPLUGIN_H
+#define T9WRITEPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class T9WritePlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "t9write.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/virtualkeyboard/t9writeworker.cpp b/src/plugins/t9write/plugin/t9writeworker.cpp
index cc4564dd..08719496 100644
--- a/src/virtualkeyboard/t9writeworker.cpp
+++ b/src/plugins/t9write/plugin/t9writeworker.cpp
@@ -27,14 +27,17 @@
**
****************************************************************************/
-#include "t9writeworker.h"
-#include "virtualkeyboarddebug.h"
+#include "t9writeworker_p.h"
+#include <QLoggingCategory>
#include <QFile>
#include <QTime>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_DECLARE_LOGGING_CATEGORY(lcT9Write)
+
/*!
\class QtVirtualKeyboard::T9WriteTask
\internal
@@ -71,12 +74,10 @@ T9WriteDictionaryTask::T9WriteDictionaryTask(QSharedPointer<T9WriteDictionary> d
void T9WriteDictionaryTask::run()
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteDictionaryTask::run()";
+ qCDebug(lcT9Write) << "T9WriteDictionaryTask::run()";
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
bool result = false;
if (dictionary) {
@@ -85,9 +86,7 @@ void T9WriteDictionaryTask::run()
result = dictionary->convert(dictionaryInfo);
}
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "T9WriteDictionaryTask::run(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcT9Write) << "T9WriteDictionaryTask::run(): time:" << perf.elapsed() << "ms";
if (result)
emit completed(dictionary);
@@ -100,15 +99,13 @@ T9WriteAddArcTask::T9WriteAddArcTask(Trace *trace) :
void T9WriteAddArcTask::run()
{
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
DECUMA_UINT32 arcID = (DECUMA_UINT32)trace->traceId();
DECUMA_STATUS status = DECUMA_API(StartNewArc)(decumaSession, arcID);
Q_ASSERT(status == decumaNoError);
if (status != decumaNoError) {
- qWarning() << "T9WriteAddArcTask::run(): Failed to start new arc, status:" << status;
+ qCWarning(lcT9Write) << "T9WriteAddArcTask::run(): Failed to start new arc, status:" << status;
return;
}
@@ -119,7 +116,7 @@ void T9WriteAddArcTask::run()
const QPoint pt(p.toPointF().toPoint());
status = DECUMA_API(AddPoint)(decumaSession, (DECUMA_COORD)pt.x(),(DECUMA_COORD)pt.y(), arcID);
if (status != decumaNoError) {
- qWarning() << "T9WriteAddArcTask::run(): Failed to add point, status:" << status;
+ qCWarning(lcT9Write) << "T9WriteAddArcTask::run(): Failed to add point, status:" << status;
DECUMA_API(CancelArc)(decumaSession, arcID);
return;
}
@@ -127,11 +124,9 @@ void T9WriteAddArcTask::run()
status = DECUMA_API(CommitArc)(decumaSession, arcID);
if (status != decumaNoError)
- qWarning() << "T9WriteAddArcTask::run(): Failed to commit arc, status:" << status;
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
+ qCWarning(lcT9Write) << "T9WriteAddArcTask::run(): Failed to commit arc, status:" << status;
else
- VIRTUALKEYBOARD_DEBUG() << "T9WriteAddArcTask::run(): time:" << perf.elapsed() << "ms";
-#endif
+ qCDebug(lcT9Write) << "T9WriteAddArcTask::run(): time:" << perf.elapsed() << "ms";
}
/*!
@@ -178,7 +173,7 @@ T9WriteRecognitionTask::T9WriteRecognitionTask(QSharedPointer<T9WriteRecognition
stringStart(stringStart),
stateCancelled(false)
{
- VIRTUALKEYBOARD_DEBUG() << "T9WriteRecognitionTask():" << "boostLevel:" << boostLevel << "stringStart:" << stringStart;
+ qCDebug(lcT9Write) << "T9WriteRecognitionTask():" << "boostLevel:" << boostLevel << "stringStart:" << stringStart;
}
void T9WriteRecognitionTask::run()
@@ -201,10 +196,8 @@ void T9WriteRecognitionTask::run()
if (!stringStart.isEmpty())
recSettings.pStringStart = (DECUMA_UNICODE *)stringStart.utf16();
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
QTime perf;
perf.start();
-#endif
#if SUPPORTS_ABORTRECOGNITION
DECUMA_INTERRUPT_FUNCTIONS interruptFunctions;
@@ -216,20 +209,16 @@ void T9WriteRecognitionTask::run()
#endif
result->status = DECUMA_API(Recognize)(decumaSession, result->results.data(), result->results.size(), &result->numResults, result->maxCharsPerWord, &recSettings, pInterruptFunctions);
if (result->status != decumaNoError)
- qWarning() << "T9WriteRecognitionTask::run(): Recognition failed, status:" << result->status;
+ qCWarning(lcT9Write) << "T9WriteRecognitionTask::run(): Recognition failed, status:" << result->status;
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
int perfElapsed = perf.elapsed();
-#endif
{
QMutexLocker stateGuard(&stateLock);
Q_UNUSED(stateGuard)
if (stateCancelled)
result.reset();
-#ifdef QT_VIRTUALKEYBOARD_DEBUG
- VIRTUALKEYBOARD_DEBUG() << "T9WriteRecognitionTask::run(): time:" << perfElapsed << "ms" << (stateCancelled ? "(cancelled)" : "");
-#endif
+ qCDebug(lcT9Write) << "T9WriteRecognitionTask::run(): time:" << perfElapsed << "ms" << (stateCancelled ? "(cancelled)" : "");
}
}
@@ -412,3 +401,4 @@ void T9WriteWorker::run()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/t9writeworker.h b/src/plugins/t9write/plugin/t9writeworker_p.h
index f34eef67..76807764 100644
--- a/src/virtualkeyboard/t9writeworker.h
+++ b/src/plugins/t9write/plugin/t9writeworker_p.h
@@ -30,7 +30,18 @@
#ifndef T9WRITEWORKER_H
#define T9WRITEWORKER_H
-#include "trace.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/trace.h>
#include <QThread>
#include <QSemaphore>
@@ -41,9 +52,10 @@
#include <QMap>
#include <QVector>
-#include "t9write.h"
-#include "t9writedictionary.h"
+#include "t9write_p.h"
+#include "t9writedictionary_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class T9WriteTask : public QObject
@@ -204,5 +216,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif // T9WRITEWORKER_H
diff --git a/src/plugins/t9write/t9write.pro b/src/plugins/t9write/t9write.pro
new file mode 100644
index 00000000..5b59353a
--- /dev/null
+++ b/src/plugins/t9write/t9write.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+
+SUBDIRS += \
+ 3rdparty/t9write \
+ plugin
+
+plugin.depends += 3rdparty/t9write
diff --git a/src/virtualkeyboard/3rdparty/tcime/COPYING b/src/plugins/tcime/3rdparty/tcime/COPYING
index 72844840..72844840 100644
--- a/src/virtualkeyboard/3rdparty/tcime/COPYING
+++ b/src/plugins/tcime/3rdparty/tcime/COPYING
diff --git a/src/virtualkeyboard/3rdparty/tcime/cangjiedictionary.cpp b/src/plugins/tcime/3rdparty/tcime/cangjiedictionary.cpp
index 1a50d371..1a50d371 100644
--- a/src/virtualkeyboard/3rdparty/tcime/cangjiedictionary.cpp
+++ b/src/plugins/tcime/3rdparty/tcime/cangjiedictionary.cpp
diff --git a/src/virtualkeyboard/3rdparty/tcime/cangjiedictionary.h b/src/plugins/tcime/3rdparty/tcime/cangjiedictionary.h
index b87013a9..b87013a9 100644
--- a/src/virtualkeyboard/3rdparty/tcime/cangjiedictionary.h
+++ b/src/plugins/tcime/3rdparty/tcime/cangjiedictionary.h
diff --git a/src/virtualkeyboard/3rdparty/tcime/cangjietable.cpp b/src/plugins/tcime/3rdparty/tcime/cangjietable.cpp
index ee8ae4f8..ee8ae4f8 100644
--- a/src/virtualkeyboard/3rdparty/tcime/cangjietable.cpp
+++ b/src/plugins/tcime/3rdparty/tcime/cangjietable.cpp
diff --git a/src/virtualkeyboard/3rdparty/tcime/cangjietable.h b/src/plugins/tcime/3rdparty/tcime/cangjietable.h
index 54adced3..54adced3 100644
--- a/src/virtualkeyboard/3rdparty/tcime/cangjietable.h
+++ b/src/plugins/tcime/3rdparty/tcime/cangjietable.h
diff --git a/src/virtualkeyboard/3rdparty/tcime/data/java/dict_cangjie.dat b/src/plugins/tcime/3rdparty/tcime/data/java/dict_cangjie.dat
index 1c692c48..1c692c48 100644
--- a/src/virtualkeyboard/3rdparty/tcime/data/java/dict_cangjie.dat
+++ b/src/plugins/tcime/3rdparty/tcime/data/java/dict_cangjie.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/data/java/dict_phrases.dat b/src/plugins/tcime/3rdparty/tcime/data/java/dict_phrases.dat
index 0b34ee1f..0b34ee1f 100644
--- a/src/virtualkeyboard/3rdparty/tcime/data/java/dict_phrases.dat
+++ b/src/plugins/tcime/3rdparty/tcime/data/java/dict_phrases.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/data/java/dict_zhuyin.dat b/src/plugins/tcime/3rdparty/tcime/data/java/dict_zhuyin.dat
index 3587635e..3587635e 100644
--- a/src/virtualkeyboard/3rdparty/tcime/data/java/dict_zhuyin.dat
+++ b/src/plugins/tcime/3rdparty/tcime/data/java/dict_zhuyin.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/data/qt/dict_cangjie.dat b/src/plugins/tcime/3rdparty/tcime/data/qt/dict_cangjie.dat
index f99ed965..f99ed965 100644
--- a/src/virtualkeyboard/3rdparty/tcime/data/qt/dict_cangjie.dat
+++ b/src/plugins/tcime/3rdparty/tcime/data/qt/dict_cangjie.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/data/qt/dict_phrases.dat b/src/plugins/tcime/3rdparty/tcime/data/qt/dict_phrases.dat
index 463301f9..463301f9 100644
--- a/src/virtualkeyboard/3rdparty/tcime/data/qt/dict_phrases.dat
+++ b/src/plugins/tcime/3rdparty/tcime/data/qt/dict_phrases.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/data/qt/dict_zhuyin.dat b/src/plugins/tcime/3rdparty/tcime/data/qt/dict_zhuyin.dat
index 6aee7de5..6aee7de5 100644
--- a/src/virtualkeyboard/3rdparty/tcime/data/qt/dict_zhuyin.dat
+++ b/src/plugins/tcime/3rdparty/tcime/data/qt/dict_zhuyin.dat
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/phrasedictionary.cpp b/src/plugins/tcime/3rdparty/tcime/phrasedictionary.cpp
index cdeaecdd..cdeaecdd 100644
--- a/src/virtualkeyboard/3rdparty/tcime/phrasedictionary.cpp
+++ b/src/plugins/tcime/3rdparty/tcime/phrasedictionary.cpp
diff --git a/src/virtualkeyboard/3rdparty/tcime/phrasedictionary.h b/src/plugins/tcime/3rdparty/tcime/phrasedictionary.h
index 06fe9578..06fe9578 100644
--- a/src/virtualkeyboard/3rdparty/tcime/phrasedictionary.h
+++ b/src/plugins/tcime/3rdparty/tcime/phrasedictionary.h
diff --git a/src/virtualkeyboard/3rdparty/tcime/qt_attribution.json b/src/plugins/tcime/3rdparty/tcime/qt_attribution.json
index 717f87ac..717f87ac 100644
--- a/src/virtualkeyboard/3rdparty/tcime/qt_attribution.json
+++ b/src/plugins/tcime/3rdparty/tcime/qt_attribution.json
diff --git a/src/virtualkeyboard/3rdparty/tcime/tcime.pro b/src/plugins/tcime/3rdparty/tcime/tcime.pro
index d593beef..55ce8f81 100644
--- a/src/virtualkeyboard/3rdparty/tcime/tcime.pro
+++ b/src/plugins/tcime/3rdparty/tcime/tcime.pro
@@ -23,6 +23,7 @@ OTHER_FILES += \
data/dict_phrases.dat
MODULE_INCLUDEPATH = $$PWD
+MODULE_DEFINES = HAVE_TCIME
load(qt_helper_lib)
diff --git a/src/virtualkeyboard/3rdparty/tcime/tools/dict2qt.class b/src/plugins/tcime/3rdparty/tcime/tools/dict2qt.class
index d1e70d8e..d1e70d8e 100644
--- a/src/virtualkeyboard/3rdparty/tcime/tools/dict2qt.class
+++ b/src/plugins/tcime/3rdparty/tcime/tools/dict2qt.class
Binary files differ
diff --git a/src/virtualkeyboard/3rdparty/tcime/tools/dict2qt.java b/src/plugins/tcime/3rdparty/tcime/tools/dict2qt.java
index 6dd81212..6dd81212 100644
--- a/src/virtualkeyboard/3rdparty/tcime/tools/dict2qt.java
+++ b/src/plugins/tcime/3rdparty/tcime/tools/dict2qt.java
diff --git a/src/virtualkeyboard/3rdparty/tcime/worddictionary.cpp b/src/plugins/tcime/3rdparty/tcime/worddictionary.cpp
index 6bc0a9e2..6bc0a9e2 100644
--- a/src/virtualkeyboard/3rdparty/tcime/worddictionary.cpp
+++ b/src/plugins/tcime/3rdparty/tcime/worddictionary.cpp
diff --git a/src/virtualkeyboard/3rdparty/tcime/worddictionary.h b/src/plugins/tcime/3rdparty/tcime/worddictionary.h
index 3f1ea43e..3f1ea43e 100644
--- a/src/virtualkeyboard/3rdparty/tcime/worddictionary.h
+++ b/src/plugins/tcime/3rdparty/tcime/worddictionary.h
diff --git a/src/virtualkeyboard/3rdparty/tcime/zhuyindictionary.cpp b/src/plugins/tcime/3rdparty/tcime/zhuyindictionary.cpp
index 1cf303c1..1cf303c1 100644
--- a/src/virtualkeyboard/3rdparty/tcime/zhuyindictionary.cpp
+++ b/src/plugins/tcime/3rdparty/tcime/zhuyindictionary.cpp
diff --git a/src/virtualkeyboard/3rdparty/tcime/zhuyindictionary.h b/src/plugins/tcime/3rdparty/tcime/zhuyindictionary.h
index c9469b72..c9469b72 100644
--- a/src/virtualkeyboard/3rdparty/tcime/zhuyindictionary.h
+++ b/src/plugins/tcime/3rdparty/tcime/zhuyindictionary.h
diff --git a/src/virtualkeyboard/3rdparty/tcime/zhuyintable.cpp b/src/plugins/tcime/3rdparty/tcime/zhuyintable.cpp
index c405b1e3..c405b1e3 100644
--- a/src/virtualkeyboard/3rdparty/tcime/zhuyintable.cpp
+++ b/src/plugins/tcime/3rdparty/tcime/zhuyintable.cpp
diff --git a/src/virtualkeyboard/3rdparty/tcime/zhuyintable.h b/src/plugins/tcime/3rdparty/tcime/zhuyintable.h
index 8512574e..8512574e 100644
--- a/src/virtualkeyboard/3rdparty/tcime/zhuyintable.h
+++ b/src/plugins/tcime/3rdparty/tcime/zhuyintable.h
diff --git a/src/plugins/tcime/plugin/plugin.pro b/src/plugins/tcime/plugin/plugin.pro
new file mode 100644
index 00000000..524dfaad
--- /dev/null
+++ b/src/plugins/tcime/plugin/plugin.pro
@@ -0,0 +1,56 @@
+TARGET = qtvirtualkeyboard_tcime
+QT += qml virtualkeyboard
+
+HEADERS += \
+ tcinputmethod_p.h \
+ tcimeplugin.h
+SOURCES += \
+ tcinputmethod.cpp \
+ tcimeplugin.cpp
+OTHER_FILES += \
+ tcime.json
+
+include(../../../config.pri)
+
+LAYOUT_FILES += \
+ $$LAYOUTS_BASE/content/layouts/zh_TW/main.qml \
+ $$LAYOUTS_BASE/content/layouts/zh_TW/symbols.qml
+
+layouts.files = $$LAYOUT_FILES
+layouts.base = $$LAYOUTS_BASE
+layouts.prefix = $$LAYOUTS_PREFIX
+RESOURCES += layouts
+
+cangjie: DEFINES += HAVE_TCIME_CANGJIE
+zhuyin: DEFINES += HAVE_TCIME_ZHUYIN
+QMAKE_USE += tcime
+!no-bundle-tcime {
+ TCIME_FILES += ../3rdparty/tcime/data/qt/dict_phrases.dat
+ cangjie: TCIME_FILES += \
+ ../3rdparty/tcime/data/qt/dict_cangjie.dat
+ zhuyin: TCIME_FILES += \
+ ../3rdparty/tcime/data/qt/dict_zhuyin.dat
+ tcime.files = $$TCIME_FILES
+ tcime.base = $$PWD/..
+ tcime.prefix = /QtQuick/VirtualKeyboard
+ RESOURCES += tcime
+} else {
+ tcime_data.files = \
+ $$PWD/../3rdparty/tcime/data/qt/dict_phrases.dat
+ cangjie: tcime_data.files += \
+ $$PWD/../3rdparty/tcime/data/qt/dict_cangjie.dat
+ zhuyin: tcime_data.files += \
+ $$PWD/../3rdparty/tcime/data/qt/dict_zhuyin.dat
+ tcime_data.path = $$VIRTUALKEYBOARD_INSTALL_DATA/tcime
+ INSTALLS += tcime_data
+ !prefix_build: COPIES += tcime_data
+}
+
+win32 {
+ QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard TCIME (Qt $$QT_VERSION)"
+ QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard Extension for Qt."
+}
+
+PLUGIN_TYPE = virtualkeyboard
+PLUGIN_CLASS_NAME = TCImePlugin
+load(qt_plugin)
diff --git a/src/plugins/tcime/plugin/tcime.json b/src/plugins/tcime/plugin/tcime.json
new file mode 100644
index 00000000..421ae0cc
--- /dev/null
+++ b/src/plugins/tcime/plugin/tcime.json
@@ -0,0 +1,6 @@
+{
+ "Name": "traditional_chinese",
+ "Provider": "Qt TCIME Extension",
+ "InputMethod": "TCInputMethod",
+ "Version": 100
+}
diff --git a/src/plugins/tcime/plugin/tcimeplugin.cpp b/src/plugins/tcime/plugin/tcimeplugin.cpp
new file mode 100644
index 00000000..a0b98908
--- /dev/null
+++ b/src/plugins/tcime/plugin/tcimeplugin.cpp
@@ -0,0 +1,43 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "tcimeplugin.h"
+#include "tcinputmethod_p.h"
+#include <QtQml>
+
+QT_BEGIN_NAMESPACE
+
+using namespace QtVirtualKeyboard;
+
+void TCImePlugin::registerTypes(const char *uri) const
+{
+ qmlRegisterType<TCInputMethod>(uri, 2, 0, "TCInputMethod");
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/tcime/plugin/tcimeplugin.h b/src/plugins/tcime/plugin/tcimeplugin.h
new file mode 100644
index 00000000..c75d59bf
--- /dev/null
+++ b/src/plugins/tcime/plugin/tcimeplugin.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef TCIMEPLUGIN_H
+#define TCIMEPLUGIN_H
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+class TCImePlugin : public QVirtualKeyboardExtensionPlugin
+{
+ Q_OBJECT
+ Q_INTERFACES(QVirtualKeyboardExtensionPlugin)
+ Q_PLUGIN_METADATA(IID QVirtualKeyboardExtensionPluginFactoryInterface_iid
+ FILE "tcime.json")
+public:
+ void registerTypes(const char *uri) const;
+};
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/virtualkeyboard/tcinputmethod.cpp b/src/plugins/tcime/plugin/tcinputmethod.cpp
index e6e13e8c..10c89228 100644
--- a/src/virtualkeyboard/tcinputmethod.cpp
+++ b/src/plugins/tcime/plugin/tcinputmethod.cpp
@@ -27,9 +27,9 @@
**
****************************************************************************/
-#include "tcinputmethod.h"
-#include "inputengine.h"
-#include "inputcontext.h"
+#include "tcinputmethod_p.h"
+#include <QtVirtualKeyboard/inputengine.h>
+#include <QtVirtualKeyboard/inputcontext.h>
#if defined(HAVE_TCIME_CANGJIE)
#include "cangjiedictionary.h"
#include "cangjietable.h"
@@ -39,22 +39,24 @@
#include "zhuyintable.h"
#endif
#include "phrasedictionary.h"
-#include "virtualkeyboarddebug.h"
+#include <QLoggingCategory>
#include <QLibraryInfo>
#include <QFileInfo>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_LOGGING_CATEGORY(lcTCIme, "qt.virtualkeyboard.tcime")
+
using namespace tcime;
-class TCInputMethodPrivate : public AbstractInputMethodPrivate
+class TCInputMethodPrivate
{
Q_DECLARE_PUBLIC(TCInputMethod)
public:
TCInputMethodPrivate(TCInputMethod *q_ptr) :
- AbstractInputMethodPrivate(),
q_ptr(q_ptr),
inputMode(InputEngine::Latin),
wordDictionary(0),
@@ -309,7 +311,8 @@ public:
*/
TCInputMethod::TCInputMethod(QObject *parent) :
- AbstractInputMethod(*new TCInputMethodPrivate(this), parent)
+ AbstractInputMethod(parent),
+ d_ptr(new TCInputMethodPrivate(this))
{
}
@@ -329,7 +332,7 @@ bool TCInputMethod::simplified() const
void TCInputMethod::setSimplified(bool simplified)
{
- VIRTUALKEYBOARD_DEBUG() << "TCInputMethod::setSimplified(): " << simplified;
+ qCDebug(lcTCIme) << "TCInputMethod::setSimplified(): " << simplified;
#if defined(HAVE_TCIME_CANGJIE)
Q_D(TCInputMethod);
if (d->cangjieDictionary.simplified() != simplified) {
@@ -548,3 +551,4 @@ void TCInputMethod::update()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/tcinputmethod.h b/src/plugins/tcime/plugin/tcinputmethod_p.h
index 94f0a045..887bc4e0 100644
--- a/src/virtualkeyboard/tcinputmethod.h
+++ b/src/plugins/tcime/plugin/tcinputmethod_p.h
@@ -27,11 +27,23 @@
**
****************************************************************************/
-#ifndef TCINPUTMETHOD_H
-#define TCINPUTMETHOD_H
+#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 "abstractinputmethod.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class TCInputMethodPrivate;
@@ -65,8 +77,12 @@ public:
signals:
void simplifiedChanged();
+
+private:
+ QScopedPointer<TCInputMethodPrivate> d_ptr;
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/plugins/tcime/tcime.pro b/src/plugins/tcime/tcime.pro
new file mode 100644
index 00000000..558d431a
--- /dev/null
+++ b/src/plugins/tcime/tcime.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+
+SUBDIRS += \
+ 3rdparty/tcime \
+ plugin
+
+plugin.depends += 3rdparty/tcime
diff --git a/src/virtualkeyboard/settings/plugins.qmltypes b/src/settings/plugins.qmltypes
index 6e29d9fc..6e29d9fc 100644
--- a/src/virtualkeyboard/settings/plugins.qmltypes
+++ b/src/settings/plugins.qmltypes
diff --git a/src/virtualkeyboard/settings/qmldir b/src/settings/qmldir
index 619e9d70..619e9d70 100644
--- a/src/virtualkeyboard/settings/qmldir
+++ b/src/settings/qmldir
diff --git a/src/virtualkeyboard/settings/settings.pro b/src/settings/settings.pro
index f33503d8..f33503d8 100644
--- a/src/virtualkeyboard/settings/settings.pro
+++ b/src/settings/settings.pro
diff --git a/src/src.pro b/src/src.pro
index fafeb6ec..db6d4ac3 100644
--- a/src/src.pro
+++ b/src/src.pro
@@ -2,38 +2,13 @@ TEMPLATE = subdirs
include(config.pri)
-!disable-hunspell:exists(virtualkeyboard/3rdparty/hunspell/src/hunspell/hunspell.h) {
- SUBDIRS += virtualkeyboard/3rdparty/hunspell
- virtualkeyboard.depends += virtualkeyboard/3rdparty/hunspell
-}
-
-openwnn {
- SUBDIRS += virtualkeyboard/3rdparty/openwnn
- virtualkeyboard.depends += virtualkeyboard/3rdparty/openwnn
-}
-
-pinyin {
- SUBDIRS += virtualkeyboard/3rdparty/pinyin
- virtualkeyboard.depends += virtualkeyboard/3rdparty/pinyin
-}
-
-tcime {
- SUBDIRS += virtualkeyboard/3rdparty/tcime
- virtualkeyboard.depends += virtualkeyboard/3rdparty/tcime
-}
-
-lipi-toolkit {
- SUBDIRS += virtualkeyboard/3rdparty/lipi-toolkit
- virtualkeyboard.depends += virtualkeyboard/3rdparty/lipi-toolkit
-}
-
-t9write {
- SUBDIRS += virtualkeyboard/3rdparty/t9write
- virtualkeyboard.depends += virtualkeyboard/3rdparty/t9write
-}
-
SUBDIRS += \
virtualkeyboard \
- virtualkeyboard/import \
- virtualkeyboard/settings \
- virtualkeyboard/styles
+ import \
+ settings \
+ styles \
+ plugin \
+ plugins
+
+plugin.depends += virtualkeyboard
+plugins.depends += virtualkeyboard
diff --git a/src/virtualkeyboard/styles/KeyIcon.qml b/src/styles/KeyIcon.qml
index 645fe11e..645fe11e 100644
--- a/src/virtualkeyboard/styles/KeyIcon.qml
+++ b/src/styles/KeyIcon.qml
diff --git a/src/virtualkeyboard/styles/KeyPanel.qml b/src/styles/KeyPanel.qml
index 4e12b9a8..4e12b9a8 100644
--- a/src/virtualkeyboard/styles/KeyPanel.qml
+++ b/src/styles/KeyPanel.qml
diff --git a/src/virtualkeyboard/styles/KeyboardStyle.qml b/src/styles/KeyboardStyle.qml
index 1d1c8222..1d1c8222 100644
--- a/src/virtualkeyboard/styles/KeyboardStyle.qml
+++ b/src/styles/KeyboardStyle.qml
diff --git a/src/virtualkeyboard/styles/SelectionListItem.qml b/src/styles/SelectionListItem.qml
index f3c9fdc9..f3c9fdc9 100644
--- a/src/virtualkeyboard/styles/SelectionListItem.qml
+++ b/src/styles/SelectionListItem.qml
diff --git a/src/virtualkeyboard/styles/TraceCanvas.qml b/src/styles/TraceCanvas.qml
index ffee8538..ffee8538 100644
--- a/src/virtualkeyboard/styles/TraceCanvas.qml
+++ b/src/styles/TraceCanvas.qml
diff --git a/src/virtualkeyboard/styles/TraceInputKeyPanel.qml b/src/styles/TraceInputKeyPanel.qml
index d128a12b..d128a12b 100644
--- a/src/virtualkeyboard/styles/TraceInputKeyPanel.qml
+++ b/src/styles/TraceInputKeyPanel.qml
diff --git a/src/virtualkeyboard/styles/TraceUtils.js b/src/styles/TraceUtils.js
index f2dd9bbb..f2dd9bbb 100644
--- a/src/virtualkeyboard/styles/TraceUtils.js
+++ b/src/styles/TraceUtils.js
diff --git a/src/virtualkeyboard/styles/plugins.qmltypes b/src/styles/plugins.qmltypes
index 3ef80efb..3ef80efb 100644
--- a/src/virtualkeyboard/styles/plugins.qmltypes
+++ b/src/styles/plugins.qmltypes
diff --git a/src/virtualkeyboard/styles/qmldir b/src/styles/qmldir
index 26544a54..26544a54 100644
--- a/src/virtualkeyboard/styles/qmldir
+++ b/src/styles/qmldir
diff --git a/src/virtualkeyboard/styles/styles.pro b/src/styles/styles.pro
index f5ce051f..f5ce051f 100644
--- a/src/virtualkeyboard/styles/styles.pro
+++ b/src/styles/styles.pro
diff --git a/src/virtualkeyboard/styles/styles.qrc b/src/styles/styles.qrc
index 819d4771..819d4771 100644
--- a/src/virtualkeyboard/styles/styles.qrc
+++ b/src/styles/styles.qrc
diff --git a/src/virtualkeyboard/styles/styles_plugin.cpp b/src/styles/styles_plugin.cpp
index f65ae42d..f65ae42d 100644
--- a/src/virtualkeyboard/styles/styles_plugin.cpp
+++ b/src/styles/styles_plugin.cpp
diff --git a/src/virtualkeyboard/styles/styles_plugin.h b/src/styles/styles_plugin.h
index 0eca2e9b..0eca2e9b 100644
--- a/src/virtualkeyboard/styles/styles_plugin.h
+++ b/src/styles/styles_plugin.h
diff --git a/src/virtualkeyboard/styles/svgimageprovider.cpp b/src/styles/svgimageprovider.cpp
index 1dd2930f..1dd2930f 100644
--- a/src/virtualkeyboard/styles/svgimageprovider.cpp
+++ b/src/styles/svgimageprovider.cpp
diff --git a/src/virtualkeyboard/styles/svgimageprovider.h b/src/styles/svgimageprovider.h
index 476689bf..476689bf 100644
--- a/src/virtualkeyboard/styles/svgimageprovider.h
+++ b/src/styles/svgimageprovider.h
diff --git a/src/virtualkeyboard/abstractinputmethod.cpp b/src/virtualkeyboard/abstractinputmethod.cpp
index dece2c7f..dd376058 100644
--- a/src/virtualkeyboard/abstractinputmethod.cpp
+++ b/src/virtualkeyboard/abstractinputmethod.cpp
@@ -28,16 +28,25 @@
****************************************************************************/
#include "abstractinputmethod.h"
+#include <QtCore/private/qobject_p.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+class AbstractInputMethodPrivate : public QObjectPrivate
+{
+public:
+ AbstractInputMethodPrivate();
+
+ InputEngine *inputEngine;
+};
+
/*!
\class QtVirtualKeyboard::AbstractInputMethodPrivate
\internal
*/
AbstractInputMethodPrivate::AbstractInputMethodPrivate() :
- QObjectPrivate(),
inputEngine(0)
{
}
@@ -55,15 +64,6 @@ AbstractInputMethodPrivate::AbstractInputMethodPrivate() :
*/
/*!
- Constructs an input method with \a dd as the private data
- from the derived class and \a parent as the parent.
-*/
-AbstractInputMethod::AbstractInputMethod(AbstractInputMethodPrivate &dd, QObject *parent) :
- QObject(dd, parent)
-{
-}
-
-/*!
Constructs an input method with \a parent.
*/
AbstractInputMethod::AbstractInputMethod(QObject *parent) :
@@ -329,3 +329,4 @@ bool AbstractInputMethod::reselect(int cursorPosition, const InputEngine::Resele
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/abstractinputmethod.h b/src/virtualkeyboard/abstractinputmethod.h
index f3157145..bcac3251 100644
--- a/src/virtualkeyboard/abstractinputmethod.h
+++ b/src/virtualkeyboard/abstractinputmethod.h
@@ -30,27 +30,19 @@
#ifndef ABSTRACTINPUTMETHOD_H
#define ABSTRACTINPUTMETHOD_H
-#include "inputengine.h"
-#include "selectionlistmodel.h"
-#include <QtCore/private/qobject_p.h>
+#include <QtVirtualKeyboard/inputengine.h>
+#include <QtVirtualKeyboard/selectionlistmodel.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class AbstractInputMethodPrivate : public QObjectPrivate
-{
-public:
- AbstractInputMethodPrivate();
-
- InputEngine *inputEngine;
-};
+class AbstractInputMethodPrivate;
-class AbstractInputMethod : public QObject
+class QVIRTUALKEYBOARD_EXPORT AbstractInputMethod : public QObject
{
Q_OBJECT
Q_DECLARE_PRIVATE(AbstractInputMethod)
-protected:
- AbstractInputMethod(AbstractInputMethodPrivate &dd, QObject *parent = 0);
public:
explicit AbstractInputMethod(QObject *parent = 0);
~AbstractInputMethod();
@@ -76,12 +68,12 @@ public:
virtual bool reselect(int cursorPosition, const InputEngine::ReselectFlags &reselectFlags);
-signals:
+Q_SIGNALS:
void selectionListChanged(int type);
void selectionListActiveItemChanged(int type, int index);
void selectionListsChanged();
-public slots:
+public Q_SLOTS:
virtual void reset();
virtual void update();
@@ -92,5 +84,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/virtualkeyboard/abstractinputpanel.cpp b/src/virtualkeyboard/abstractinputpanel.cpp
index 41c72d58..cfcff964 100644
--- a/src/virtualkeyboard/abstractinputpanel.cpp
+++ b/src/virtualkeyboard/abstractinputpanel.cpp
@@ -27,9 +27,10 @@
**
****************************************************************************/
-#include "abstractinputpanel.h"
+#include "abstractinputpanel_p.h"
#include <QtCore/QRect>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -121,3 +122,4 @@ void AbstractInputPanel::destroyView()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/abstractinputpanel.h b/src/virtualkeyboard/abstractinputpanel_p.h
index efce0234..46bb1738 100644
--- a/src/virtualkeyboard/abstractinputpanel.h
+++ b/src/virtualkeyboard/abstractinputpanel_p.h
@@ -27,14 +27,27 @@
**
****************************************************************************/
-#ifndef ABSTRACTINPUTPANEL_H
-#define ABSTRACTINPUTPANEL_H
+#ifndef ABSTRACTINPUTPANEL_P_H
+#define ABSTRACTINPUTPANEL_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>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class AbstractInputPanel : public QObject
+class QVIRTUALKEYBOARD_EXPORT AbstractInputPanel : public QObject
{
Q_OBJECT
protected:
@@ -55,5 +68,6 @@ public slots:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // ABSTRACTINPUTPANEL_H
+#endif // ABSTRACTINPUTPANEL_P_H
diff --git a/src/virtualkeyboard/appinputpanel.cpp b/src/virtualkeyboard/appinputpanel.cpp
index 94834cd1..226cc4a6 100644
--- a/src/virtualkeyboard/appinputpanel.cpp
+++ b/src/virtualkeyboard/appinputpanel.cpp
@@ -27,8 +27,10 @@
**
****************************************************************************/
-#include "appinputpanel.h"
+#include "appinputpanel_p.h"
+#include "appinputpanel_p_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
AppInputPanel::AppInputPanel(AppInputPanelPrivate &dd, QObject *parent) :
@@ -68,3 +70,4 @@ bool AppInputPanel::isVisible() const
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/appinputpanel.h b/src/virtualkeyboard/appinputpanel_p.h
index 5df05008..8363e80a 100644
--- a/src/virtualkeyboard/appinputpanel.h
+++ b/src/virtualkeyboard/appinputpanel_p.h
@@ -27,37 +27,33 @@
**
****************************************************************************/
-#ifndef APPINPUTPANEL_H
-#define APPINPUTPANEL_H
+#ifndef APPINPUTPANEL_P_H
+#define APPINPUTPANEL_P_H
-#include "abstractinputpanel.h"
-#include <QtCore/private/qobject_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.
+//
-namespace QtVirtualKeyboard {
-
-/*!
- \class QtVirtualKeyboard::AppInputPanelPrivate
- \internal
-*/
+#include <QtVirtualKeyboard/private/abstractinputpanel_p.h>
-class AppInputPanelPrivate : public QObjectPrivate
-{
-public:
- AppInputPanelPrivate() :
- QObjectPrivate(),
- visible(false)
- {
- }
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
- bool visible;
-};
+class AppInputPanelPrivate;
/*!
\class QtVirtualKeyboard::AppInputPanel
\internal
*/
-class AppInputPanel : public AbstractInputPanel
+class QVIRTUALKEYBOARD_EXPORT AppInputPanel : public AbstractInputPanel
{
Q_OBJECT
Q_DECLARE_PRIVATE(AppInputPanel)
@@ -75,5 +71,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // APPINPUTPANEL_H
+#endif // APPINPUTPANEL_P_H
diff --git a/src/virtualkeyboard/appinputpanel_p_p.h b/src/virtualkeyboard/appinputpanel_p_p.h
new file mode 100644
index 00000000..f41c9b72
--- /dev/null
+++ b/src/virtualkeyboard/appinputpanel_p_p.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef APPINPUTPANEL_P_P_H
+#define APPINPUTPANEL_P_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/qvirtualkeyboard_global.h>
+#include <QtCore/private/qobject_p.h>
+
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
+/*!
+ \class QtVirtualKeyboard::AppInputPanelPrivate
+ \internal
+*/
+
+class QVIRTUALKEYBOARD_EXPORT AppInputPanelPrivate : public QObjectPrivate
+{
+public:
+ AppInputPanelPrivate() :
+ QObjectPrivate(),
+ visible(false)
+ {
+ }
+
+ bool visible;
+};
+
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
+
+#endif // APPINPUTPANEL_P_P_H
diff --git a/src/virtualkeyboard/content/components/Keyboard.qml b/src/virtualkeyboard/content/components/Keyboard.qml
index 012ec48a..8485d3c2 100644
--- a/src/virtualkeyboard/content/components/Keyboard.qml
+++ b/src/virtualkeyboard/content/components/Keyboard.qml
@@ -82,7 +82,7 @@ Item {
function initDefaultInputMethod() {
try {
- return Qt.createQmlObject('import QtQuick 2.0; import QtQuick.VirtualKeyboard 2.1; HunspellInputMethod {}', keyboard, "defaultInputMethod")
+ return Qt.createQmlObject('import QtQuick 2.0; import QtQuick.VirtualKeyboard 2.3; DefaultInputMethod {}', keyboard, "defaultInputMethod")
} catch (e) { }
return plainInputMethod
}
diff --git a/src/virtualkeyboard/desktopinputpanel.cpp b/src/virtualkeyboard/desktopinputpanel.cpp
index e9a8836a..1a0c4128 100644
--- a/src/virtualkeyboard/desktopinputpanel.cpp
+++ b/src/virtualkeyboard/desktopinputpanel.cpp
@@ -27,14 +27,15 @@
**
****************************************************************************/
-#include "desktopinputpanel.h"
-#include "inputview.h"
-#include "platforminputcontext.h"
+#include "desktopinputpanel_p.h"
+#include "appinputpanel_p_p.h"
+#include "inputview_p.h"
+#include "platforminputcontext_p.h"
#include "inputcontext.h"
#include <QGuiApplication>
#include <QQmlEngine>
#include <QScreen>
-#include "virtualkeyboarddebug.h"
+#include "virtualkeyboarddebug_p.h"
#if defined(QT_VIRTUALKEYBOARD_HAVE_XCB)
#include <xcb/xcb.h>
#include <xcb/xfixes.h>
@@ -43,6 +44,7 @@
#include <QtCore/private/qobject_p.h>
#include <QtCore/QLibraryInfo>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class DesktopInputPanelPrivate : public AppInputPanelPrivate
@@ -277,3 +279,4 @@ void DesktopInputPanel::updateInputRegion()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/desktopinputpanel.h b/src/virtualkeyboard/desktopinputpanel_p.h
index 0828bb64..eea026ce 100644
--- a/src/virtualkeyboard/desktopinputpanel.h
+++ b/src/virtualkeyboard/desktopinputpanel_p.h
@@ -27,20 +27,31 @@
**
****************************************************************************/
-#ifndef DESKTOPINPUTPANEL_H
-#define DESKTOPINPUTPANEL_H
+#ifndef DESKTOPINPUTPANEL_P_H
+#define DESKTOPINPUTPANEL_P_H
-#include "appinputpanel.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/appinputpanel_p.h>
QT_BEGIN_NAMESPACE
+
class QWindow;
-QT_END_NAMESPACE
namespace QtVirtualKeyboard {
class DesktopInputPanelPrivate;
-class DesktopInputPanel : public AppInputPanel
+class QVIRTUALKEYBOARD_EXPORT DesktopInputPanel : public AppInputPanel
{
Q_OBJECT
Q_DECLARE_PRIVATE(DesktopInputPanel)
@@ -70,5 +81,6 @@ protected:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // DESKTOPINPUTPANEL_H
+#endif // DESKTOPINPUTPANEL_P_H
diff --git a/src/virtualkeyboard/desktopinputselectioncontrol.cpp b/src/virtualkeyboard/desktopinputselectioncontrol.cpp
index bb2925b5..9612d724 100644
--- a/src/virtualkeyboard/desktopinputselectioncontrol.cpp
+++ b/src/virtualkeyboard/desktopinputselectioncontrol.cpp
@@ -27,17 +27,18 @@
**
****************************************************************************/
-#include "desktopinputselectioncontrol.h"
+#include "desktopinputselectioncontrol_p.h"
#include "inputcontext.h"
-#include "inputselectionhandle.h"
-#include "settings.h"
-#include "platforminputcontext.h"
+#include "inputselectionhandle_p.h"
+#include "settings_p.h"
+#include "platforminputcontext_p.h"
#include <QtCore/qpropertyanimation.h>
#include <QtGui/qguiapplication.h>
#include <QtGui/qstylehints.h>
#include <QtGui/qimagereader.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
DesktopInputSelectionControl::DesktopInputSelectionControl(QObject *parent, InputContext *inputContext)
@@ -323,4 +324,6 @@ bool DesktopInputSelectionControl::eventFilter(QObject *object, QEvent *event)
}
return false;
}
-} // namespace QtVirtualKeyboard
+
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/desktopinputselectioncontrol.h b/src/virtualkeyboard/desktopinputselectioncontrol_p.h
index 9a5ec468..4c498de9 100644
--- a/src/virtualkeyboard/desktopinputselectioncontrol.h
+++ b/src/virtualkeyboard/desktopinputselectioncontrol_p.h
@@ -27,22 +27,34 @@
**
****************************************************************************/
-#ifndef DESKTOPINPUTSELECTIONCONTROL_H
-#define DESKTOPINPUTSELECTIONCONTROL_H
+#ifndef DESKTOPINPUTSELECTIONCONTROL_P_H
+#define DESKTOPINPUTSELECTIONCONTROL_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 <QtCore/qpointer.h>
#include <QtCore/qobject.h>
#include <QtGui/qimage.h>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
QT_BEGIN_NAMESPACE
class QMouseEvent;
-QT_END_NAMESPACE
namespace QtVirtualKeyboard {
+
class InputContext;
class InputSelectionHandle;
-class DesktopInputSelectionControl : public QObject
+class QVIRTUALKEYBOARD_EXPORT DesktopInputSelectionControl : public QObject
{
Q_OBJECT
@@ -97,5 +109,6 @@ private:
QSize m_handleWindowSize;
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // DESKTOPINPUTSELECTIONCONTROL_H
+#endif // DESKTOPINPUTSELECTIONCONTROL_P_H
diff --git a/src/virtualkeyboard/doc/src/deployment-guide.qdoc b/src/virtualkeyboard/doc/src/deployment-guide.qdoc
index 97db72b3..9cbd6e6e 100644
--- a/src/virtualkeyboard/doc/src/deployment-guide.qdoc
+++ b/src/virtualkeyboard/doc/src/deployment-guide.qdoc
@@ -52,6 +52,10 @@ locations:
\li \c $$[QT_INSTALL_PLUGINS]/platforminputcontexts
\li \c /system/plugins/platforminputcontexts
\row
+ \li qtvirtualkeyboardextensionplugin
+ \li \c $$[QT_INSTALL_PLUGINS]/virtualkeyboard
+ \li \c /system/plugins/virtualkeyboard
+\row
\li qtvirtualkeyboardplugin QML files
\li \c $$[QT_INSTALL_QML]/QtQuick/VirtualKeyboard
\li \c /system/qml/QtQuick/VirtualKeyboard
diff --git a/src/virtualkeyboard/doc/src/technical-guide.qdoc b/src/virtualkeyboard/doc/src/technical-guide.qdoc
index e8ae300a..37c0f790 100644
--- a/src/virtualkeyboard/doc/src/technical-guide.qdoc
+++ b/src/virtualkeyboard/doc/src/technical-guide.qdoc
@@ -299,7 +299,7 @@ of the user interface.
\section2 Data Model for the Handwriting Input
-The data collected from the input source is stored in an object named QtVirtualKeyboard::Trace (C++) or \l Trace (QML).
+The data collected from the input source is stored in an object named Trace (C++) or \l Trace (QML).
By definition, \e trace is a set of data collected in one touch. In addition to
the basic coordinate data, it can also include other types of data, such as
@@ -312,9 +312,9 @@ The trace API consists of the following virtual methods, which the input method
must implement in order to receive and process touch input data.
\list
- \li \l { QtVirtualKeyboard::AbstractInputMethod::patternRecognitionModes } { patternRecognitionModes }
- \li \l { QtVirtualKeyboard::AbstractInputMethod::traceBegin } { traceBegin }
- \li \l { QtVirtualKeyboard::AbstractInputMethod::traceEnd } { traceEnd }
+ \li \l { AbstractInputMethod::patternRecognitionModes } { patternRecognitionModes }
+ \li \l { AbstractInputMethod::traceBegin } { traceBegin }
+ \li \l { AbstractInputMethod::traceEnd } { traceEnd }
\endlist
By implementing these methods, the input method can receive and process data
@@ -322,7 +322,7 @@ from a variety of input sources.
The patternRecognitionModes method returns a list of pattern recognition modes,
which are supported by the input method. A pattern recognition mode, such as
-\l { QtVirtualKeyboard::InputEngine::HandwritingRecoginition } { HandwritingRecoginition },
+\l { InputEngine::HandwritingRecoginition } { HandwritingRecoginition },
defines the method by which the input method processes the data.
The trace interaction is started when an input source detects a new contact point, and
diff --git a/src/virtualkeyboard/enterkeyaction.cpp b/src/virtualkeyboard/enterkeyaction.cpp
index 13b6246b..debe56ee 100644
--- a/src/virtualkeyboard/enterkeyaction.cpp
+++ b/src/virtualkeyboard/enterkeyaction.cpp
@@ -27,9 +27,10 @@
**
****************************************************************************/
-#include "enterkeyaction.h"
-#include "enterkeyactionattachedtype.h"
+#include "enterkeyaction_p.h"
+#include "enterkeyactionattachedtype_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -105,3 +106,4 @@ EnterKeyActionAttachedType *EnterKeyAction::qmlAttachedProperties(QObject *objec
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/enterkeyaction.h b/src/virtualkeyboard/enterkeyaction_p.h
index b78e09ec..2de309ad 100644
--- a/src/virtualkeyboard/enterkeyaction.h
+++ b/src/virtualkeyboard/enterkeyaction_p.h
@@ -27,16 +27,29 @@
**
****************************************************************************/
-#ifndef ENTERKEYACTION_H
-#define ENTERKEYACTION_H
+#ifndef ENTERKEYACTION_P_H
+#define ENTERKEYACTION_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 <qqml.h>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class EnterKeyActionAttachedType;
-class EnterKeyAction : public QObject
+class QVIRTUALKEYBOARD_EXPORT EnterKeyAction : public QObject
{
Q_OBJECT
@@ -57,8 +70,9 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-Q_DECLARE_METATYPE(QtVirtualKeyboard::EnterKeyAction::Id)
-QML_DECLARE_TYPEINFO(QtVirtualKeyboard::EnterKeyAction, QML_HAS_ATTACHED_PROPERTIES)
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::EnterKeyAction::Id)
+QML_DECLARE_TYPEINFO(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::EnterKeyAction, QML_HAS_ATTACHED_PROPERTIES)
#endif
diff --git a/src/virtualkeyboard/enterkeyactionattachedtype.cpp b/src/virtualkeyboard/enterkeyactionattachedtype.cpp
index ce946f95..0df21719 100644
--- a/src/virtualkeyboard/enterkeyactionattachedtype.cpp
+++ b/src/virtualkeyboard/enterkeyactionattachedtype.cpp
@@ -27,8 +27,9 @@
**
****************************************************************************/
-#include "enterkeyactionattachedtype.h"
+#include "enterkeyactionattachedtype_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -84,3 +85,4 @@ void EnterKeyActionAttachedType::setEnabled(bool enabled)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/enterkeyactionattachedtype.h b/src/virtualkeyboard/enterkeyactionattachedtype_p.h
index 95fd8900..eca4782f 100644
--- a/src/virtualkeyboard/enterkeyactionattachedtype.h
+++ b/src/virtualkeyboard/enterkeyactionattachedtype_p.h
@@ -27,15 +27,28 @@
**
****************************************************************************/
-#ifndef ENTERKEYACTIONATTACHEDTYPE_H
-#define ENTERKEYACTIONATTACHEDTYPE_H
+#ifndef ENTERKEYACTIONATTACHEDTYPE_P_H
+#define ENTERKEYACTIONATTACHEDTYPE_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>
-#include "enterkeyaction.h"
+#include "enterkeyaction_p.h"
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class EnterKeyActionAttachedType : public QObject
+class QVIRTUALKEYBOARD_EXPORT EnterKeyActionAttachedType : public QObject
{
Q_OBJECT
Q_PROPERTY(int actionId READ actionId WRITE setActionId NOTIFY actionIdChanged)
@@ -64,5 +77,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/virtualkeyboard/defaultinputmethod.cpp b/src/virtualkeyboard/fallbackinputmethod.cpp
index 4d1aa280..b75a9817 100644
--- a/src/virtualkeyboard/defaultinputmethod.cpp
+++ b/src/virtualkeyboard/fallbackinputmethod.cpp
@@ -27,9 +27,10 @@
**
****************************************************************************/
-#include "defaultinputmethod.h"
+#include "fallbackinputmethod_p.h"
#include "inputcontext.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -37,43 +38,44 @@ namespace QtVirtualKeyboard {
\internal
*/
-DefaultInputMethod::DefaultInputMethod(QObject *parent) :
+FallbackInputMethod::FallbackInputMethod(QObject *parent) :
AbstractInputMethod(parent)
{
}
-QList<InputEngine::InputMode> DefaultInputMethod::inputModes(const QString &locale)
+QList<InputEngine::InputMode> FallbackInputMethod::inputModes(const QString &locale)
{
Q_UNUSED(locale)
return QList<InputEngine::InputMode>();
}
-bool DefaultInputMethod::setInputMode(const QString &locale, InputEngine::InputMode inputMode)
+bool FallbackInputMethod::setInputMode(const QString &locale, InputEngine::InputMode inputMode)
{
Q_UNUSED(locale)
Q_UNUSED(inputMode)
return true;
}
-bool DefaultInputMethod::setTextCase(InputEngine::TextCase textCase)
+bool FallbackInputMethod::setTextCase(InputEngine::TextCase textCase)
{
Q_UNUSED(textCase)
return true;
}
-bool DefaultInputMethod::keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
+bool FallbackInputMethod::keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
{
const Qt::KeyboardModifiers mods = (key == Qt::Key_Return) ? Qt::NoModifier : modifiers;
inputContext()->sendKeyClick(key, text, mods);
return true;
}
-void DefaultInputMethod::reset()
+void FallbackInputMethod::reset()
{
}
-void DefaultInputMethod::update()
+void FallbackInputMethod::update()
{
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/defaultinputmethod.h b/src/virtualkeyboard/fallbackinputmethod_p.h
index 5a26bd4e..d8da7d80 100644
--- a/src/virtualkeyboard/defaultinputmethod.h
+++ b/src/virtualkeyboard/fallbackinputmethod_p.h
@@ -27,19 +27,31 @@
**
****************************************************************************/
-#ifndef DEFAULTINPUTMETHOD_H
-#define DEFAULTINPUTMETHOD_H
+#ifndef FALLBACKINPUTMETHOD_P_H
+#define FALLBACKINPUTMETHOD_P_H
-#include "abstractinputmethod.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/abstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class DefaultInputMethod : public AbstractInputMethod
+class QVIRTUALKEYBOARD_EXPORT FallbackInputMethod : public AbstractInputMethod
{
Q_OBJECT
public:
- explicit DefaultInputMethod(QObject *parent = 0);
+ explicit FallbackInputMethod(QObject *parent = 0);
QList<InputEngine::InputMode> inputModes(const QString &locale);
bool setInputMode(const QString &locale, InputEngine::InputMode inputMode);
@@ -52,5 +64,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // DEFAULTINPUTMETHOD_H
+#endif // FALLBACKINPUTMETHOD_P_H
diff --git a/src/virtualkeyboard/gesturerecognizer.cpp b/src/virtualkeyboard/gesturerecognizer.cpp
index 09db68a5..4745b46f 100644
--- a/src/virtualkeyboard/gesturerecognizer.cpp
+++ b/src/virtualkeyboard/gesturerecognizer.cpp
@@ -27,8 +27,9 @@
**
****************************************************************************/
-#include "gesturerecognizer.h"
+#include "gesturerecognizer_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
GestureRecognizer::GestureRecognizer(QObject *parent) :
@@ -36,4 +37,5 @@ GestureRecognizer::GestureRecognizer(QObject *parent) :
{
}
-}
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/gesturerecognizer.h b/src/virtualkeyboard/gesturerecognizer_p.h
index f1636609..a4b95827 100644
--- a/src/virtualkeyboard/gesturerecognizer.h
+++ b/src/virtualkeyboard/gesturerecognizer_p.h
@@ -27,16 +27,29 @@
**
****************************************************************************/
-#ifndef GESTURERECOGNIZER_H
-#define GESTURERECOGNIZER_H
+#ifndef GESTURERECOGNIZER_P_H
+#define GESTURERECOGNIZER_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>
#include <QVariantMap>
-#include "trace.h"
+#include <QtVirtualKeyboard/trace.h>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class GestureRecognizer : public QObject
+class QVIRTUALKEYBOARD_EXPORT GestureRecognizer : public QObject
{
Q_OBJECT
public:
@@ -46,5 +59,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // GESTURERECOGNIZER_H
+#endif // GESTURERECOGNIZER_P_H
diff --git a/src/virtualkeyboard/handwritinggesturerecognizer.cpp b/src/virtualkeyboard/handwritinggesturerecognizer.cpp
index 23ac63e9..bfe41b79 100644
--- a/src/virtualkeyboard/handwritinggesturerecognizer.cpp
+++ b/src/virtualkeyboard/handwritinggesturerecognizer.cpp
@@ -27,11 +27,12 @@
**
****************************************************************************/
-#include "handwritinggesturerecognizer.h"
+#include "handwritinggesturerecognizer_p.h"
#include <QtCore/qmath.h>
#include <QVector2D>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
HandwritingGestureRecognizer::HandwritingGestureRecognizer(QObject *parent) :
@@ -201,4 +202,5 @@ QVariantMap HandwritingGestureRecognizer::recognize(const QList<Trace *> traceLi
return QVariantMap();
}
-}
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/handwritinggesturerecognizer.h b/src/virtualkeyboard/handwritinggesturerecognizer_p.h
index 5ef2ba14..c1393803 100644
--- a/src/virtualkeyboard/handwritinggesturerecognizer.h
+++ b/src/virtualkeyboard/handwritinggesturerecognizer_p.h
@@ -27,14 +27,26 @@
**
****************************************************************************/
-#ifndef HANDWRITINGGESTURERECOGNIZER_H
-#define HANDWRITINGGESTURERECOGNIZER_H
+#ifndef HANDWRITINGGESTURERECOGNIZER_P_H
+#define HANDWRITINGGESTURERECOGNIZER_P_H
-#include "gesturerecognizer.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/gesturerecognizer_p.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class HandwritingGestureRecognizer : public GestureRecognizer
+class QVIRTUALKEYBOARD_EXPORT HandwritingGestureRecognizer : public GestureRecognizer
{
Q_OBJECT
public:
@@ -50,5 +62,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // HANDWRITINGGESTURERECOGNIZER_H
+#endif // HANDWRITINGGESTURERECOGNIZER_P_H
diff --git a/src/virtualkeyboard/inputcontext.cpp b/src/virtualkeyboard/inputcontext.cpp
index 21369f7c..9febf669 100644
--- a/src/virtualkeyboard/inputcontext.cpp
+++ b/src/virtualkeyboard/inputcontext.cpp
@@ -29,18 +29,19 @@
#include "inputcontext.h"
#include "inputengine.h"
-#include "shifthandler.h"
-#include "platforminputcontext.h"
-#include "shadowinputcontext.h"
-#include "virtualkeyboarddebug.h"
-#include "enterkeyaction.h"
-#include "settings.h"
+#include "shifthandler_p.h"
+#include "platforminputcontext_p.h"
+#include "shadowinputcontext_p.h"
+#include "virtualkeyboarddebug_p.h"
+#include "enterkeyaction_p.h"
+#include "settings_p.h"
#include <QTextFormat>
#include <QGuiApplication>
#include <QtCore/private/qobject_p.h>
QT_BEGIN_NAMESPACE
+
bool operator==(const QInputMethodEvent::Attribute &attribute1, const QInputMethodEvent::Attribute &attribute2)
{
return attribute1.start == attribute2.start &&
@@ -48,7 +49,6 @@ bool operator==(const QInputMethodEvent::Attribute &attribute1, const QInputMeth
attribute1.type == attribute2.type &&
attribute1.value == attribute2.value;
}
-QT_END_NAMESPACE
/*!
\namespace QtVirtualKeyboard
@@ -1202,3 +1202,4 @@ bool InputContext::testAttribute(const QList<QInputMethodEvent::Attribute> &attr
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/inputcontext.h b/src/virtualkeyboard/inputcontext.h
index 3b0727e2..bfb349c6 100644
--- a/src/virtualkeyboard/inputcontext.h
+++ b/src/virtualkeyboard/inputcontext.h
@@ -35,7 +35,9 @@
#include <QLocale>
#include <QInputMethodEvent>
#include <QInputMethod>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class PlatformInputContext;
@@ -44,7 +46,7 @@ class InputEngine;
class ShiftHandler;
class InputContextPrivate;
-class InputContext : public QObject
+class QVIRTUALKEYBOARD_EXPORT InputContext : public QObject
{
Q_OBJECT
Q_DISABLE_COPY(InputContext)
@@ -67,8 +69,8 @@ class InputContext : public QObject
Q_PROPERTY(bool animating READ animating WRITE setAnimating NOTIFY animatingChanged)
Q_PROPERTY(QString locale READ locale WRITE setLocale NOTIFY localeChanged)
Q_PROPERTY(QObject *inputItem READ inputItem NOTIFY inputItemChanged)
- Q_PROPERTY(QtVirtualKeyboard::ShiftHandler *shiftHandler READ shiftHandler CONSTANT)
- Q_PROPERTY(QtVirtualKeyboard::InputEngine *inputEngine READ inputEngine CONSTANT)
+ Q_PROPERTY(ShiftHandler *shiftHandler READ shiftHandler CONSTANT)
+ Q_PROPERTY(InputEngine *inputEngine READ inputEngine CONSTANT)
Q_PROPERTY(bool selectionControlVisible READ selectionControlVisible NOTIFY selectionControlVisibleChanged)
Q_PROPERTY(bool anchorRectIntersectsClipRect READ anchorRectIntersectsClipRect NOTIFY anchorRectIntersectsClipRectChanged)
Q_PROPERTY(bool cursorRectIntersectsClipRect READ cursorRectIntersectsClipRect NOTIFY cursorRectIntersectsClipRectChanged)
@@ -129,7 +131,7 @@ public:
// For shadow input
Q_INVOKABLE void forceCursorPosition(int anchorPosition, int cursorPosition);
-signals:
+Q_SIGNALS:
void focusChanged();
void focusEditorChanged();
void preeditTextChanged();
@@ -155,7 +157,7 @@ signals:
void anchorRectIntersectsClipRectChanged();
void cursorRectIntersectsClipRectChanged();
-private slots:
+private Q_SLOTS:
void onInputItemChanged();
private:
@@ -174,5 +176,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/virtualkeyboard/inputengine.cpp b/src/virtualkeyboard/inputengine.cpp
index e825f05b..d6190337 100644
--- a/src/virtualkeyboard/inputengine.cpp
+++ b/src/virtualkeyboard/inputengine.cpp
@@ -29,13 +29,14 @@
#include "inputengine.h"
#include "inputcontext.h"
-#include "defaultinputmethod.h"
+#include "fallbackinputmethod_p.h"
#include "trace.h"
-#include "virtualkeyboarddebug.h"
+#include "virtualkeyboarddebug_p.h"
#include <QTimerEvent>
#include <QtCore/private/qobject_p.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class InputEnginePrivate : public QObjectPrivate
@@ -47,7 +48,7 @@ public:
QObjectPrivate(),
q_ptr(q_ptr),
inputContext(0),
- defaultInputMethod(0),
+ fallbackInputMethod(0),
textCase(InputEngine::Lower),
inputMode(InputEngine::Latin),
activeKey(Qt::Key_unknown),
@@ -70,7 +71,7 @@ public:
if (inputMethod) {
accept = inputMethod->keyEvent(key, text, modifiers);
if (!accept) {
- accept = defaultInputMethod->keyEvent(key, text, modifiers);
+ accept = fallbackInputMethod->keyEvent(key, text, modifiers);
}
emit q->virtualKeyClicked(key, text, modifiers, isAutoRepeat);
} else {
@@ -82,7 +83,7 @@ public:
InputEngine* q_ptr;
InputContext *inputContext;
QPointer<AbstractInputMethod> inputMethod;
- AbstractInputMethod *defaultInputMethod;
+ AbstractInputMethod *fallbackInputMethod;
InputEngine::TextCase textCase;
InputEngine::InputMode inputMode;
QList<int> inputModes;
@@ -162,9 +163,9 @@ InputEngine::InputEngine(InputContext *parent) :
QObject::connect(d->inputContext, &InputContext::localeChanged, this, &InputEngine::updateInputModes);
QObject::connect(this, &InputEngine::inputMethodChanged, this, &InputEngine::updateInputModes);
}
- d->defaultInputMethod = new DefaultInputMethod(this);
- if (d->defaultInputMethod)
- d->defaultInputMethod->setInputEngine(this);
+ d->fallbackInputMethod = new FallbackInputMethod(this);
+ if (d->fallbackInputMethod)
+ d->fallbackInputMethod->setInputEngine(this);
d->selectionListModels[SelectionListModel::WordCandidateList] = new SelectionListModel(this);
}
@@ -499,8 +500,9 @@ QList<int> InputEngine::patternRecognitionModes() const
The trace interaction is ended by calling the traceEnd() method.
*/
-QtVirtualKeyboard::Trace *InputEngine::traceBegin(int traceId, QtVirtualKeyboard::InputEngine::PatternRecognitionMode patternRecognitionMode,
- const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)
+Trace *InputEngine::traceBegin(
+ int traceId, PatternRecognitionMode patternRecognitionMode,
+ const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)
{
Q_D(InputEngine);
VIRTUALKEYBOARD_DEBUG() << "InputEngine::traceBegin():"
@@ -538,7 +540,7 @@ QtVirtualKeyboard::Trace *InputEngine::traceBegin(int traceId, QtVirtualKeyboard
The function returns true if the trace interaction was accepted (i.e. the touch
events should not be used for anything else).
*/
-bool InputEngine::traceEnd(QtVirtualKeyboard::Trace *trace)
+bool InputEngine::traceEnd(Trace *trace)
{
Q_D(InputEngine);
VIRTUALKEYBOARD_DEBUG() << "InputEngine::traceEnd():" << trace;
@@ -1028,3 +1030,4 @@ void InputEngine::timerEvent(QTimerEvent *timerEvent)
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/inputengine.h b/src/virtualkeyboard/inputengine.h
index 66eb2c3d..aa968252 100644
--- a/src/virtualkeyboard/inputengine.h
+++ b/src/virtualkeyboard/inputengine.h
@@ -32,7 +32,9 @@
#include <QObject>
#include <QPointer>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class InputContext;
@@ -41,7 +43,7 @@ class AbstractInputMethod;
class InputEnginePrivate;
class Trace;
-class InputEngine : public QObject
+class QVIRTUALKEYBOARD_EXPORT InputEngine : public QObject
{
Q_OBJECT
Q_DISABLE_COPY(InputEngine)
@@ -49,11 +51,11 @@ class InputEngine : public QObject
Q_FLAGS(ReselectFlags)
Q_PROPERTY(Qt::Key activeKey READ activeKey NOTIFY activeKeyChanged)
Q_PROPERTY(Qt::Key previousKey READ previousKey NOTIFY previousKeyChanged)
- Q_PROPERTY(QtVirtualKeyboard::AbstractInputMethod *inputMethod READ inputMethod WRITE setInputMethod NOTIFY inputMethodChanged)
+ Q_PROPERTY(AbstractInputMethod *inputMethod READ inputMethod WRITE setInputMethod NOTIFY inputMethodChanged)
Q_PROPERTY(QList<int> inputModes READ inputModes NOTIFY inputModesChanged)
Q_PROPERTY(InputMode inputMode READ inputMode WRITE setInputMode NOTIFY inputModeChanged)
Q_PROPERTY(QList<int> patternRecognitionModes READ patternRecognitionModes NOTIFY patternRecognitionModesChanged)
- Q_PROPERTY(QtVirtualKeyboard::SelectionListModel *wordCandidateListModel READ wordCandidateListModel NOTIFY wordCandidateListModelChanged)
+ Q_PROPERTY(SelectionListModel *wordCandidateListModel READ wordCandidateListModel NOTIFY wordCandidateListModelChanged)
Q_PROPERTY(bool wordCandidateListVisibleHint READ wordCandidateListVisibleHint NOTIFY wordCandidateListVisibleHintChanged)
explicit InputEngine(InputContext *parent = 0);
@@ -121,13 +123,13 @@ public:
bool wordCandidateListVisibleHint() const;
QList<int> patternRecognitionModes() const;
- Q_INVOKABLE QtVirtualKeyboard::Trace *traceBegin(int traceId, QtVirtualKeyboard::InputEngine::PatternRecognitionMode patternRecognitionMode,
- const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo);
- Q_INVOKABLE bool traceEnd(QtVirtualKeyboard::Trace *trace);
+ Q_INVOKABLE Trace *traceBegin(int traceId, PatternRecognitionMode patternRecognitionMode,
+ const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo);
+ Q_INVOKABLE bool traceEnd(Trace *trace);
Q_INVOKABLE bool reselect(int cursorPosition, const ReselectFlags &reselectFlags);
-signals:
+Q_SIGNALS:
void virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat);
void activeKeyChanged(Qt::Key key);
void previousKeyChanged(Qt::Key key);
@@ -140,7 +142,7 @@ signals:
void wordCandidateListModelChanged();
void wordCandidateListVisibleHintChanged();
-private slots:
+private Q_SLOTS:
void reset();
void update();
void shiftChanged();
@@ -155,9 +157,10 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-Q_DECLARE_METATYPE(QtVirtualKeyboard::InputEngine::TextCase)
-Q_DECLARE_METATYPE(QtVirtualKeyboard::InputEngine::InputMode)
-Q_DECLARE_OPERATORS_FOR_FLAGS(QtVirtualKeyboard::InputEngine::ReselectFlags)
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::InputEngine::TextCase)
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::InputEngine::InputMode)
+Q_DECLARE_OPERATORS_FOR_FLAGS(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::InputEngine::ReselectFlags)
#endif
diff --git a/src/virtualkeyboard/inputmethod.cpp b/src/virtualkeyboard/inputmethod.cpp
index 91e9152b..2e6e3bbc 100644
--- a/src/virtualkeyboard/inputmethod.cpp
+++ b/src/virtualkeyboard/inputmethod.cpp
@@ -27,10 +27,11 @@
**
****************************************************************************/
-#include "inputmethod.h"
-#include "trace.h"
+#include "inputmethod_p.h"
+#include <QtVirtualKeyboard/trace.h>
#include <QVariant>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -386,3 +387,4 @@ void InputMethod::update()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/inputmethod.h b/src/virtualkeyboard/inputmethod_p.h
index 05159b88..0e84221c 100644
--- a/src/virtualkeyboard/inputmethod.h
+++ b/src/virtualkeyboard/inputmethod_p.h
@@ -27,18 +27,30 @@
**
****************************************************************************/
-#ifndef INPUTMETHOD_H
-#define INPUTMETHOD_H
+#ifndef INPUTMETHOD_P_H
+#define INPUTMETHOD_P_H
-#include "abstractinputmethod.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/abstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class InputMethod : public AbstractInputMethod
+class QVIRTUALKEYBOARD_EXPORT InputMethod : public AbstractInputMethod
{
Q_OBJECT
- Q_PROPERTY(QtVirtualKeyboard::InputContext *inputContext READ inputContext CONSTANT)
- Q_PROPERTY(QtVirtualKeyboard::InputEngine *inputEngine READ inputEngine CONSTANT)
+ Q_PROPERTY(InputContext *inputContext READ inputContext CONSTANT)
+ Q_PROPERTY(InputEngine *inputEngine READ inputEngine CONSTANT)
public:
explicit InputMethod(QObject *parent = 0);
@@ -67,5 +79,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // INPUTMETHOD_H
+#endif // INPUTMETHOD_P_H
diff --git a/src/virtualkeyboard/inputselectionhandle.cpp b/src/virtualkeyboard/inputselectionhandle.cpp
index 58131a0f..6a1cbffc 100644
--- a/src/virtualkeyboard/inputselectionhandle.cpp
+++ b/src/virtualkeyboard/inputselectionhandle.cpp
@@ -27,12 +27,13 @@
**
****************************************************************************/
-#include "inputselectionhandle.h"
-#include "desktopinputselectioncontrol.h"
+#include "inputselectionhandle_p.h"
+#include "desktopinputselectioncontrol_p.h"
#include <QtCore/qcoreapplication.h>
#include <QtGui/QPainter>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
InputSelectionHandle::InputSelectionHandle(DesktopInputSelectionControl *control, QWindow *eventWindow)
: QRasterWindow()
@@ -82,3 +83,4 @@ bool InputSelectionHandle::event(QEvent *e)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/inputselectionhandle.h b/src/virtualkeyboard/inputselectionhandle_p.h
index 5d70df2b..d62e4147 100644
--- a/src/virtualkeyboard/inputselectionhandle.h
+++ b/src/virtualkeyboard/inputselectionhandle_p.h
@@ -27,20 +27,32 @@
**
****************************************************************************/
-#ifndef INPUTSELECTIONHANDLE_H
-#define INPUTSELECTIONHANDLE_H
+#ifndef INPUTSELECTIONHANDLE_P_H
+#define INPUTSELECTIONHANDLE_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 <QtGui/QRasterWindow>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
QT_BEGIN_NAMESPACE
+
class QWindow;
-QT_END_NAMESPACE
namespace QtVirtualKeyboard {
+
class DesktopInputSelectionControl;
-class InputSelectionHandle : public QRasterWindow
+class QVIRTUALKEYBOARD_EXPORT InputSelectionHandle : public QRasterWindow
{
Q_OBJECT
@@ -58,5 +70,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // INPUTSELECTIONHANDLE_H
+#endif // INPUTSELECTIONHANDLE_P_H
diff --git a/src/virtualkeyboard/inputview.cpp b/src/virtualkeyboard/inputview.cpp
index 07f0f4ec..c04339a7 100644
--- a/src/virtualkeyboard/inputview.cpp
+++ b/src/virtualkeyboard/inputview.cpp
@@ -27,8 +27,9 @@
**
****************************************************************************/
-#include "inputview.h"
+#include "inputview_p.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -48,3 +49,4 @@ void InputView::resizeEvent(QResizeEvent *event)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/inputview_p.h b/src/virtualkeyboard/inputview_p.h
new file mode 100644
index 00000000..256d0ae6
--- /dev/null
+++ b/src/virtualkeyboard/inputview_p.h
@@ -0,0 +1,66 @@
+/****************************************************************************
+**
+** Copyright (C) 2016 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef INPUTVIEW_P_H
+#define INPUTVIEW_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 <QQuickView>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
+class QVIRTUALKEYBOARD_EXPORT InputView : public QQuickView
+{
+ Q_OBJECT
+public:
+ explicit InputView(QWindow *parent = 0);
+
+signals:
+ void sizeChanged();
+
+protected:
+ void resizeEvent(QResizeEvent *event);
+};
+
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
+
+#endif // INPUTVIEW_P_H
diff --git a/src/virtualkeyboard/plaininputmethod.cpp b/src/virtualkeyboard/plaininputmethod.cpp
index 2ca10cb4..b69f0bf3 100644
--- a/src/virtualkeyboard/plaininputmethod.cpp
+++ b/src/virtualkeyboard/plaininputmethod.cpp
@@ -27,10 +27,11 @@
**
****************************************************************************/
-#include "plaininputmethod.h"
-#include "inputengine.h"
+#include "plaininputmethod_p.h"
+#include <QtVirtualKeyboard/inputengine.h>
#include "inputcontext.h"
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
/*!
@@ -102,3 +103,4 @@ void PlainInputMethod::update()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/plaininputmethod.h b/src/virtualkeyboard/plaininputmethod_p.h
index cc1f9a50..d1f7e01c 100644
--- a/src/virtualkeyboard/plaininputmethod.h
+++ b/src/virtualkeyboard/plaininputmethod_p.h
@@ -27,14 +27,26 @@
**
****************************************************************************/
-#ifndef PLAININPUTMETHOD_H
-#define PLAININPUTMETHOD_H
+#ifndef PLAININPUTMETHOD_P_H
+#define PLAININPUTMETHOD_P_H
-#include "abstractinputmethod.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/abstractinputmethod.h>
+
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class PlainInputMethod : public AbstractInputMethod
+class QVIRTUALKEYBOARD_EXPORT PlainInputMethod : public AbstractInputMethod
{
Q_OBJECT
@@ -53,5 +65,6 @@ public:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/virtualkeyboard/platforminputcontext.cpp b/src/virtualkeyboard/platforminputcontext.cpp
index 6d555160..030381c2 100644
--- a/src/virtualkeyboard/platforminputcontext.cpp
+++ b/src/virtualkeyboard/platforminputcontext.cpp
@@ -27,21 +27,24 @@
**
****************************************************************************/
-#include "platforminputcontext.h"
+#include "platforminputcontext_p.h"
#include "inputcontext.h"
-#include "shadowinputcontext.h"
-#include "abstractinputpanel.h"
+#include "shadowinputcontext_p.h"
+#include "abstractinputpanel_p.h"
#ifdef QT_VIRTUALKEYBOARD_DESKTOP
-#include "desktopinputpanel.h"
+#include "desktopinputpanel_p.h"
#endif
-#include "appinputpanel.h"
-#include "virtualkeyboarddebug.h"
+#include "appinputpanel_p.h"
+#include "virtualkeyboarddebug_p.h"
#include <QWindow>
#include <QGuiApplication>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
+Q_LOGGING_CATEGORY(qlcVirtualKeyboard, "qt.virtualkeyboard")
+
/*!
\class QtVirtualKeyboard::PlatformInputContext
\internal
@@ -272,3 +275,4 @@ void PlatformInputContext::updateInputPanelVisible()
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/platforminputcontext.h b/src/virtualkeyboard/platforminputcontext_p.h
index 5c5c2909..30f30bd3 100644
--- a/src/virtualkeyboard/platforminputcontext.h
+++ b/src/virtualkeyboard/platforminputcontext_p.h
@@ -27,21 +27,33 @@
**
****************************************************************************/
-#ifndef PLATFORMINPUTCONTEXT_H
-#define PLATFORMINPUTCONTEXT_H
+#ifndef PLATFORMINPUTCONTEXT_P_H
+#define PLATFORMINPUTCONTEXT_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 <qevent.h>
#include <qpa/qplatforminputcontext.h>
#include <QPointer>
#include <QLocale>
-#include "inputselectionhandle.h"
-#include "desktopinputselectioncontrol.h"
+#include <QtVirtualKeyboard/private/inputselectionhandle_p.h>
+#include <QtVirtualKeyboard/private/desktopinputselectioncontrol_p.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class InputContext;
class AbstractInputPanel;
-class PlatformInputContext : public QPlatformInputContext
+class QVIRTUALKEYBOARD_EXPORT PlatformInputContext : public QPlatformInputContext
{
Q_OBJECT
public:
@@ -100,5 +112,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif
diff --git a/src/virtualkeyboard/inputview.h b/src/virtualkeyboard/qvirtualkeyboard_global.h
index b1e93fd8..2e81867b 100644
--- a/src/virtualkeyboard/inputview.h
+++ b/src/virtualkeyboard/qvirtualkeyboard_global.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
@@ -27,26 +27,25 @@
**
****************************************************************************/
-#ifndef INPUTVIEW_H
-#define INPUTVIEW_H
+#ifndef QVIRTUALKEYBOARD_GLOBAL_H
+#define QVIRTUALKEYBOARD_GLOBAL_H
-#include <QQuickView>
+#include <QtCore/qglobal.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
-class InputView : public QQuickView
-{
- Q_OBJECT
-public:
- explicit InputView(QWindow *parent = 0);
-
-signals:
- void sizeChanged();
-
-protected:
- void resizeEvent(QResizeEvent *event);
-};
+#ifndef QT_STATIC
+# if defined(QVIRTUALKEYBOARD_LIBRARY)
+# define QVIRTUALKEYBOARD_EXPORT Q_DECL_EXPORT
+# else
+# define QVIRTUALKEYBOARD_EXPORT Q_DECL_IMPORT
+# endif
+#else
+# define QVIRTUALKEYBOARD_EXPORT
+#endif
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // INPUTVIEW_H
+#endif
diff --git a/src/virtualkeyboard/qvirtualkeyboardextensionplugin.cpp b/src/virtualkeyboard/qvirtualkeyboardextensionplugin.cpp
new file mode 100644
index 00000000..929c86ab
--- /dev/null
+++ b/src/virtualkeyboard/qvirtualkeyboardextensionplugin.cpp
@@ -0,0 +1,43 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QVirtualKeyboardExtensionPlugin>
+
+QT_BEGIN_NAMESPACE
+
+QVirtualKeyboardExtensionPlugin::~QVirtualKeyboardExtensionPlugin()
+{
+}
+
+void QVirtualKeyboardExtensionPlugin::registerTypes(const char *uri) const
+{
+ Q_UNUSED(uri)
+}
+
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/qvirtualkeyboardextensionplugin.h b/src/virtualkeyboard/qvirtualkeyboardextensionplugin.h
new file mode 100644
index 00000000..40e2192f
--- /dev/null
+++ b/src/virtualkeyboard/qvirtualkeyboardextensionplugin.h
@@ -0,0 +1,54 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QVIRTUALKEYBOARDEXTENSIONPLUGIN_H
+#define QVIRTUALKEYBOARDEXTENSIONPLUGIN_H
+
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+#include <QtCore/QtPlugin>
+
+QT_BEGIN_NAMESPACE
+
+#define QVirtualKeyboardExtensionPluginFactoryInterface_iid "org.qt-project.qt.virtualkeyboard.plugin/5.12"
+
+class QVIRTUALKEYBOARD_EXPORT QVirtualKeyboardExtensionPlugin : public QObject
+{
+ Q_OBJECT
+public:
+ virtual ~QVirtualKeyboardExtensionPlugin();
+
+ virtual void registerTypes(const char *uri) const;
+};
+
+Q_DECLARE_INTERFACE(QVirtualKeyboardExtensionPlugin,
+ QVirtualKeyboardExtensionPluginFactoryInterface_iid)
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/virtualkeyboard/selectionlistmodel.cpp b/src/virtualkeyboard/selectionlistmodel.cpp
index 78316465..97a2c50b 100644
--- a/src/virtualkeyboard/selectionlistmodel.cpp
+++ b/src/virtualkeyboard/selectionlistmodel.cpp
@@ -29,10 +29,11 @@
#include "selectionlistmodel.h"
#include "abstractinputmethod.h"
-#include "settings.h"
+#include "settings_p.h"
#include <QtCore/private/qabstractitemmodel_p.h>
#include <QtCore/qpointer.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class SelectionListModelPrivate : public QAbstractItemModelPrivate
@@ -311,3 +312,4 @@ void SelectionListModel::selectionListActiveItemChanged(int type, int index)
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/selectionlistmodel.h b/src/virtualkeyboard/selectionlistmodel.h
index f129637b..274e3e67 100644
--- a/src/virtualkeyboard/selectionlistmodel.h
+++ b/src/virtualkeyboard/selectionlistmodel.h
@@ -31,14 +31,16 @@
#define SELECTIONLISTMODEL_H
#include <QAbstractListModel>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class AbstractInputMethod;
class InputEngine;
class SelectionListModelPrivate;
-class SelectionListModel : public QAbstractListModel
+class QVIRTUALKEYBOARD_EXPORT SelectionListModel : public QAbstractListModel
{
Q_OBJECT
Q_DECLARE_PRIVATE(SelectionListModel)
@@ -72,12 +74,12 @@ public:
Q_INVOKABLE void selectItem(int index);
Q_INVOKABLE QVariant dataAt(int index, int role = Qt::DisplayRole) const;
-signals:
+Q_SIGNALS:
void countChanged();
void activeItemChanged(int index);
void itemSelected(int index);
-protected slots:
+protected Q_SLOTS:
void selectionListChanged(int type);
void selectionListActiveItemChanged(int type, int index);
@@ -86,8 +88,9 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-Q_DECLARE_METATYPE(QtVirtualKeyboard::SelectionListModel::Type)
-Q_DECLARE_METATYPE(QtVirtualKeyboard::SelectionListModel::Role)
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::SelectionListModel::Type)
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QtVirtualKeyboard)::SelectionListModel::Role)
#endif // SELECTIONLISTMODEL_H
diff --git a/src/virtualkeyboard/settings.cpp b/src/virtualkeyboard/settings.cpp
index 259516aa..f7008c09 100644
--- a/src/virtualkeyboard/settings.cpp
+++ b/src/virtualkeyboard/settings.cpp
@@ -27,9 +27,10 @@
**
****************************************************************************/
-#include "settings.h"
+#include "settings_p.h"
#include <QtCore/private/qobject_p.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class SettingsPrivate : public QObjectPrivate
@@ -231,3 +232,4 @@ void Settings::setFullScreenMode(bool fullScreenMode)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/settings.h b/src/virtualkeyboard/settings_p.h
index 9d4684fa..d3e48b98 100644
--- a/src/virtualkeyboard/settings.h
+++ b/src/virtualkeyboard/settings_p.h
@@ -27,17 +27,30 @@
**
****************************************************************************/
-#ifndef SETTINGS_H
-#define SETTINGS_H
+#ifndef SETTINGS_P_H
+#define SETTINGS_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>
#include <QUrl>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class SettingsPrivate;
-class Settings : public QObject
+class QVIRTUALKEYBOARD_EXPORT Settings : public QObject
{
Q_OBJECT
Q_DISABLE_COPY(Settings)
@@ -92,5 +105,6 @@ signals:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // SETTINGS_H
+#endif // SETTINGS_P_H
diff --git a/src/virtualkeyboard/shadowinputcontext.cpp b/src/virtualkeyboard/shadowinputcontext.cpp
index b350e249..eea08f89 100644
--- a/src/virtualkeyboard/shadowinputcontext.cpp
+++ b/src/virtualkeyboard/shadowinputcontext.cpp
@@ -27,9 +27,9 @@
**
****************************************************************************/
-#include "shadowinputcontext.h"
+#include "shadowinputcontext_p.h"
#include "inputcontext.h"
-#include "virtualkeyboarddebug.h"
+#include "virtualkeyboarddebug_p.h"
#include <QtCore/private/qobject_p.h>
#include <QGuiApplication>
@@ -37,7 +37,6 @@
QT_BEGIN_NAMESPACE
bool operator==(const QInputMethodEvent::Attribute &attribute1, const QInputMethodEvent::Attribute &attribute2);
-QT_END_NAMESPACE
namespace QtVirtualKeyboard {
@@ -251,3 +250,4 @@ QVariant ShadowInputContext::queryFocusObject(Qt::InputMethodQuery query, QVaria
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/shadowinputcontext.h b/src/virtualkeyboard/shadowinputcontext_p.h
index 1a2e0577..17de9dc0 100644
--- a/src/virtualkeyboard/shadowinputcontext.h
+++ b/src/virtualkeyboard/shadowinputcontext_p.h
@@ -27,20 +27,33 @@
**
****************************************************************************/
-#ifndef SHADOWINPUTCONTEXT_H
-#define SHADOWINPUTCONTEXT_H
+#ifndef SHADOWINPUTCONTEXT_P_H
+#define SHADOWINPUTCONTEXT_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>
#include <QPointer>
#include <QMetaType>
#include <QRectF>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class InputContext;
class ShadowInputContextPrivate;
-class ShadowInputContext : public QObject
+class QVIRTUALKEYBOARD_EXPORT ShadowInputContext : public QObject
{
Q_OBJECT
Q_DISABLE_COPY(ShadowInputContext)
@@ -86,5 +99,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // SHADOWINPUTCONTEXT_H
+#endif // SHADOWINPUTCONTEXT_P_H
diff --git a/src/virtualkeyboard/shifthandler.cpp b/src/virtualkeyboard/shifthandler.cpp
index 8f42a762..96b73ba4 100644
--- a/src/virtualkeyboard/shifthandler.cpp
+++ b/src/virtualkeyboard/shifthandler.cpp
@@ -27,15 +27,16 @@
**
****************************************************************************/
-#include "shifthandler.h"
+#include "shifthandler_p.h"
#include "inputcontext.h"
-#include "inputengine.h"
+#include <QtVirtualKeyboard/inputengine.h>
#include <QtCore/private/qobject_p.h>
#include <QSet>
#include <QGuiApplication>
#include <QTime>
#include <QStyleHints>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class ShiftHandlerPrivate : public QObjectPrivate
@@ -378,3 +379,4 @@ void ShiftHandler::setToggleShiftEnabled(bool enabled)
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/shifthandler.h b/src/virtualkeyboard/shifthandler_p.h
index 93ba3e34..8c08f363 100644
--- a/src/virtualkeyboard/shifthandler.h
+++ b/src/virtualkeyboard/shifthandler_p.h
@@ -27,17 +27,30 @@
**
****************************************************************************/
-#ifndef SHIFTHANDLER_H
-#define SHIFTHANDLER_H
+#ifndef SHIFTHANDLER_P_H
+#define SHIFTHANDLER_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>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class InputContext;
class ShiftHandlerPrivate;
-class ShiftHandler : public QObject
+class QVIRTUALKEYBOARD_EXPORT ShiftHandler : public QObject
{
Q_OBJECT
Q_DISABLE_COPY(ShiftHandler)
@@ -81,5 +94,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
-#endif // SHIFTHANDLER_H
+#endif // SHIFTHANDLER_P_H
diff --git a/src/virtualkeyboard/trace.cpp b/src/virtualkeyboard/trace.cpp
index e74793e1..47cc06ce 100644
--- a/src/virtualkeyboard/trace.cpp
+++ b/src/virtualkeyboard/trace.cpp
@@ -30,6 +30,7 @@
#include "trace.h"
#include <QtCore/private/qobject_p.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class TracePrivate : public QObjectPrivate
@@ -426,3 +427,4 @@ void Trace::setCanceled(bool canceled)
*/
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/trace.h b/src/virtualkeyboard/trace.h
index ca98e71d..53709ef4 100644
--- a/src/virtualkeyboard/trace.h
+++ b/src/virtualkeyboard/trace.h
@@ -33,12 +33,14 @@
#include <QObject>
#include <QVariant>
#include <QPointF>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class TracePrivate;
-class Trace : public QObject
+class QVIRTUALKEYBOARD_EXPORT Trace : public QObject
{
Q_OBJECT
Q_DECLARE_PRIVATE(Trace)
@@ -71,7 +73,7 @@ public:
bool isCanceled() const;
void setCanceled(bool canceled);
-signals:
+Q_SIGNALS:
void traceIdChanged(int traceId);
void channelsChanged();
void lengthChanged(int length);
@@ -80,5 +82,6 @@ signals:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif // TRACE_H
diff --git a/src/virtualkeyboard/unipentrace.cpp b/src/virtualkeyboard/unipentrace.cpp
index 74c1b23e..c931a50f 100644
--- a/src/virtualkeyboard/unipentrace.cpp
+++ b/src/virtualkeyboard/unipentrace.cpp
@@ -27,12 +27,13 @@
**
****************************************************************************/
-#include "unipentrace.h"
+#include "unipentrace_p.h"
#include <QRectF>
#include <QDir>
#include <QFile>
#include <QDebug>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
UnipenTrace::UnipenTrace(const QVariantMap &traceCaptureDeviceInfo,
diff --git a/src/virtualkeyboard/unipentrace.h b/src/virtualkeyboard/unipentrace_p.h
index f7e182dd..f61ff50b 100644
--- a/src/virtualkeyboard/unipentrace.h
+++ b/src/virtualkeyboard/unipentrace_p.h
@@ -30,9 +30,21 @@
#ifndef UNIPENTRACE_H
#define UNIPENTRACE_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>
-#include "trace.h"
+#include <QtVirtualKeyboard/trace.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class UnipenTrace : public QObject
@@ -53,5 +65,6 @@ private:
};
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif // UNIPENTRACE_H
diff --git a/src/virtualkeyboard/virtualkeyboard.pro b/src/virtualkeyboard/virtualkeyboard.pro
index 4990c44c..91497ee2 100644
--- a/src/virtualkeyboard/virtualkeyboard.pro
+++ b/src/virtualkeyboard/virtualkeyboard.pro
@@ -1,5 +1,6 @@
-TARGET = qtvirtualkeyboardplugin
-DATAPATH = $$[QT_INSTALL_DATA]/qtvirtualkeyboard
+TARGET = QtVirtualKeyboard
+MODULE = virtualkeyboard
+MODULE_PLUGIN_TYPES = virtualkeyboard
QMAKE_DOCS = $$PWD/doc/qtvirtualkeyboard.qdocconf
include(doc/doc.pri)
@@ -7,28 +8,23 @@ include(doc/doc.pri)
QT += qml quick gui gui-private core-private
CONFIG += qtquickcompiler
-win32 {
- CONFIG += no-pkg-config
- QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard (Qt $$QT_VERSION)"
- QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard for Qt."
-}
-
-!no-pkg-config: CONFIG += link_pkgconfig
+DEFINES += QVIRTUALKEYBOARD_LIBRARY
include(../config.pri)
-SOURCES += platforminputcontext.cpp \
+SOURCES += \
+ platforminputcontext.cpp \
inputcontext.cpp \
abstractinputmethod.cpp \
plaininputmethod.cpp \
inputengine.cpp \
shifthandler.cpp \
- plugin.cpp \
inputmethod.cpp \
inputselectionhandle.cpp \
selectionlistmodel.cpp \
- defaultinputmethod.cpp \
+ fallbackinputmethod.cpp \
abstractinputpanel.cpp \
+ appinputpanel.cpp \
enterkeyaction.cpp \
enterkeyactionattachedtype.cpp \
settings.cpp \
@@ -37,30 +33,35 @@ SOURCES += platforminputcontext.cpp \
desktopinputselectioncontrol.cpp \
shadowinputcontext.cpp \
gesturerecognizer.cpp \
- handwritinggesturerecognizer.cpp
+ handwritinggesturerecognizer.cpp \
+ qvirtualkeyboardextensionplugin.cpp
-HEADERS += platforminputcontext.h \
+HEADERS += \
+ platforminputcontext_p.h \
inputcontext.h \
abstractinputmethod.h \
- plaininputmethod.h \
+ plaininputmethod_p.h \
inputengine.h \
- shifthandler.h \
- inputmethod.h \
- inputselectionhandle.h \
+ shifthandler_p.h \
+ inputmethod_p.h \
+ inputselectionhandle_p.h \
selectionlistmodel.h \
- defaultinputmethod.h \
- abstractinputpanel.h \
- virtualkeyboarddebug.h \
- enterkeyaction.h \
- enterkeyactionattachedtype.h \
- settings.h \
- virtualkeyboardsettings.h \
- plugin.h \
+ fallbackinputmethod_p.h \
+ abstractinputpanel_p.h \
+ appinputpanel_p.h \
+ appinputpanel_p_p.h \
+ virtualkeyboarddebug_p.h \
+ enterkeyaction_p.h \
+ enterkeyactionattachedtype_p.h \
+ settings_p.h \
+ virtualkeyboardsettings_p.h \
trace.h \
- desktopinputselectioncontrol.h \
- shadowinputcontext.h \
- gesturerecognizer.h \
- handwritinggesturerecognizer.h
+ desktopinputselectioncontrol_p.h \
+ shadowinputcontext_p.h \
+ gesturerecognizer_p.h \
+ handwritinggesturerecognizer_p.h \
+ qvirtualkeyboard_global.h \
+ qvirtualkeyboardextensionplugin.h
!no-builtin-style: RESOURCES += \
content/styles/default/default_style.qrc \
@@ -78,8 +79,6 @@ contains(CONFIG, lang-en.*) {
LAYOUT_FILES += \
content/layouts/en_GB/main.qml \
content/layouts/en_GB/symbols.qml
-t9write-alphabetic|lipi-toolkit: LAYOUT_FILES += \
- content/layouts/en_GB/handwriting.qml
}
contains(CONFIG, lang-ar.*) {
LAYOUT_FILES += \
@@ -87,57 +86,41 @@ contains(CONFIG, lang-ar.*) {
content/layouts/ar_AR/main.qml \
content/layouts/ar_AR/numbers.qml \
content/layouts/ar_AR/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/ar_AR/handwriting.qml
}
contains(CONFIG, lang-bg.*) {
LAYOUT_FILES += \
content/layouts/bg_BG/main.qml \
content/layouts/bg_BG/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/bg_BG/handwriting.qml
}
contains(CONFIG, lang-cs.*) {
LAYOUT_FILES += \
content/layouts/cs_CZ/main.qml \
content/layouts/cs_CZ/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/cs_CZ/handwriting.qml
}
contains(CONFIG, lang-da.*) {
LAYOUT_FILES += \
content/layouts/da_DK/main.qml \
content/layouts/da_DK/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/da_DK/handwriting.qml
}
contains(CONFIG, lang-de.*) {
LAYOUT_FILES += \
content/layouts/de_DE/main.qml \
content/layouts/de_DE/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/de_DE/handwriting.qml
}
contains(CONFIG, lang-el.*) {
LAYOUT_FILES += \
content/layouts/el_GR/main.qml \
content/layouts/el_GR/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/el_GR/handwriting.qml
}
contains(CONFIG, lang-es.*) {
LAYOUT_FILES += \
content/layouts/es_ES/main.qml \
content/layouts/es_ES/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/es_ES/handwriting.qml
}
contains(CONFIG, lang-et.*) {
LAYOUT_FILES += \
content/layouts/et_EE/main.qml \
content/layouts/et_EE/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/et_EE/handwriting.qml
}
contains(CONFIG, lang-fa.*) {
LAYOUT_FILES += \
@@ -145,29 +128,21 @@ contains(CONFIG, lang-fa.*) {
content/layouts/fa_FA/main.qml \
content/layouts/fa_FA/numbers.qml \
content/layouts/fa_FA/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/fa_FA/handwriting.qml
}
contains(CONFIG, lang-fi.*) {
LAYOUT_FILES += \
content/layouts/fi_FI/main.qml \
content/layouts/fi_FI/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/fi_FI/handwriting.qml
}
contains(CONFIG, lang-fr.*) {
LAYOUT_FILES += \
content/layouts/fr_FR/main.qml \
content/layouts/fr_FR/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/fr_FR/handwriting.qml
}
contains(CONFIG, lang-he.*) {
LAYOUT_FILES += \
content/layouts/he_IL/main.qml \
content/layouts/he_IL/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/he_IL/handwriting.qml
}
contains(CONFIG, lang-hi.*) {
LAYOUT_FILES += \
@@ -178,113 +153,61 @@ contains(CONFIG, lang-hr.*) {
LAYOUT_FILES += \
content/layouts/hr_HR/main.qml \
content/layouts/hr_HR/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/hr_HR/handwriting.qml
}
contains(CONFIG, lang-hu.*) {
LAYOUT_FILES += \
content/layouts/hu_HU/main.qml \
content/layouts/hu_HU/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/hu_HU/handwriting.qml
}
contains(CONFIG, lang-it.*) {
LAYOUT_FILES += \
content/layouts/it_IT/main.qml \
content/layouts/it_IT/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/it_IT/handwriting.qml
-}
-contains(CONFIG, lang-ja.*) {
- LAYOUT_FILES += \
- content/layouts/ja_JP/main.qml \
- content/layouts/ja_JP/symbols.qml
-t9write-cjk: LAYOUT_FILES += \
- content/layouts/ja_JP/handwriting.qml
-}
-contains(CONFIG, lang-ko.*) {
- LAYOUT_FILES += \
- content/layouts/ko_KR/main.qml \
- content/layouts/ko_KR/symbols.qml
-t9write-cjk: LAYOUT_FILES += \
- content/layouts/ko_KR/handwriting.qml
}
contains(CONFIG, lang-nb.*) {
LAYOUT_FILES += \
content/layouts/nb_NO/main.qml \
content/layouts/nb_NO/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/nb_NO/handwriting.qml
}
contains(CONFIG, lang-nl.*) {
LAYOUT_FILES += \
content/layouts/nl_NL/main.qml \
content/layouts/nl_NL/symbols.qml
-t9write-alphabetic|lipi-toolkit: LAYOUT_FILES += \
- content/layouts/nl_NL/handwriting.qml
}
contains(CONFIG, lang-pl.*) {
LAYOUT_FILES += \
content/layouts/pl_PL/main.qml \
content/layouts/pl_PL/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/pl_PL/handwriting.qml
}
contains(CONFIG, lang-pt.*) {
LAYOUT_FILES += \
content/layouts/pt_PT/main.qml \
content/layouts/pt_PT/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/pt_PT/handwriting.qml
}
contains(CONFIG, lang-ro.*) {
LAYOUT_FILES += \
content/layouts/ro_RO/main.qml \
content/layouts/ro_RO/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/ro_RO/handwriting.qml
}
contains(CONFIG, lang-ru.*) {
LAYOUT_FILES += \
content/layouts/ru_RU/main.qml \
content/layouts/ru_RU/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/ru_RU/handwriting.qml
}
contains(CONFIG, lang-sr.*) {
LAYOUT_FILES += \
content/layouts/sr_SP/main.qml \
content/layouts/sr_SP/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/sr_SP/handwriting.qml
}
contains(CONFIG, lang-sv.*) {
LAYOUT_FILES += \
content/layouts/sv_SE/main.qml \
content/layouts/sv_SE/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/sv_SE/handwriting.qml
}
contains(CONFIG, lang-vi.*) {
LAYOUT_FILES += \
content/layouts/vi_VN/main.qml \
content/layouts/vi_VN/symbols.qml
-t9write-alphabetic: LAYOUT_FILES += \
- content/layouts/vi_VN/handwriting.qml
-}
-contains(CONFIG, lang-zh(_CN)?) {
- LAYOUT_FILES += \
- content/layouts/zh_CN/main.qml \
- content/layouts/zh_CN/symbols.qml
-t9write-cjk: LAYOUT_FILES += \
- content/layouts/zh_CN/handwriting.qml
-}
-contains(CONFIG, lang-zh(_TW)?) {
- LAYOUT_FILES += \
- content/layouts/zh_TW/main.qml \
- content/layouts/zh_TW/symbols.qml
-t9write-cjk: LAYOUT_FILES += \
- content/layouts/zh_TW/handwriting.qml
}
no-builtin-style {
@@ -306,184 +229,17 @@ OTHER_FILES += \
!disable-desktop:isEmpty(CROSS_COMPILE):!android-embedded:!qnx {
SOURCES += desktopinputpanel.cpp inputview.cpp
- HEADERS += desktopinputpanel.h inputview.h
+ HEADERS += desktopinputpanel_p.h inputview_p.h
DEFINES += QT_VIRTUALKEYBOARD_DESKTOP
!no-pkg-config:packagesExist(xcb) {
PKGCONFIG += xcb xcb-xfixes
DEFINES += QT_VIRTUALKEYBOARD_HAVE_XCB
}
}
-SOURCES += appinputpanel.cpp
-HEADERS += appinputpanel.h
-
-!disable-hunspell {
- exists(3rdparty/hunspell/src/hunspell/hunspell.h) {
- SOURCES += hunspellinputmethod.cpp hunspellinputmethod_p.cpp hunspellworker.cpp
- HEADERS += hunspellinputmethod.h hunspellinputmethod_p.h hunspellworker.h
- DEFINES += HAVE_HUNSPELL
- QMAKE_USE += hunspell
- exists(3rdparty/hunspell/data) {
- hunspell_data.files = 3rdparty/hunspell/data/*.dic 3rdparty/hunspell/data/*.aff
- hunspell_data.path = $$DATAPATH/hunspell
- INSTALLS += hunspell_data
- !prefix_build: COPIES += hunspell_data
- } else {
- error("Hunspell dictionaries are missing! Please copy .dic and .aff" \
- "files to src/virtualkeyboard/3rdparty/hunspell/data directory.")
- }
- } else:!no-pkg-config:packagesExist(hunspell) {
- SOURCES += hunspellinputmethod.cpp hunspellinputmethod_p.cpp hunspellworker.cpp
- HEADERS += hunspellinputmethod.h hunspellinputmethod_p.h hunspellworker.h
- DEFINES += HAVE_HUNSPELL
- PKGCONFIG += hunspell
- } else {
- message("Hunspell not found! Spell correction will not be available.")
- }
-}
-
-pinyin {
- SOURCES += \
- pinyininputmethod.cpp \
- pinyindecoderservice.cpp
- HEADERS += \
- pinyininputmethod.h \
- pinyindecoderservice.h
- DEFINES += HAVE_PINYIN
- QMAKE_USE += pinyin
- !no-bundle-pinyin {
- PINYIN_FILES += 3rdparty/pinyin/data/dict_pinyin.dat
- pinyin.files = $$PINYIN_FILES
- pinyin.prefix = /QtQuick/VirtualKeyboard
- RESOURCES += pinyin
- } else {
- pinyin_data.files = $$PWD/3rdparty/pinyin/data/dict_pinyin.dat
- pinyin_data.path = $$DATAPATH/pinyin
- INSTALLS += pinyin_data
- !prefix_build: COPIES += pinyin_data
- }
-}
-
-tcime {
- SOURCES += \
- tcinputmethod.cpp
- HEADERS += \
- tcinputmethod.h
- DEFINES += HAVE_TCIME
- cangjie: DEFINES += HAVE_TCIME_CANGJIE
- zhuyin: DEFINES += HAVE_TCIME_ZHUYIN
- QMAKE_USE += tcime
- !no-bundle-tcime {
- TCIME_FILES += 3rdparty/tcime/data/qt/dict_phrases.dat
- cangjie: TCIME_FILES += \
- 3rdparty/tcime/data/qt/dict_cangjie.dat
- zhuyin: TCIME_FILES += \
- 3rdparty/tcime/data/qt/dict_zhuyin.dat
- tcime.files = $$TCIME_FILES
- tcime.prefix = /QtQuick/VirtualKeyboard
- RESOURCES += tcime
- } else {
- tcime_data.files = \
- $$PWD/3rdparty/tcime/data/qt/dict_phrases.dat
- cangjie: tcime_data.files += \
- $$PWD/3rdparty/tcime/data/qt/dict_cangjie.dat
- zhuyin: tcime_data.files += \
- $$PWD/3rdparty/tcime/data/qt/dict_zhuyin.dat
- tcime_data.path = $$DATAPATH/tcime
- INSTALLS += tcime_data
- !prefix_build: COPIES += tcime_data
- }
-}
-
-hangul {
- SOURCES += \
- hangulinputmethod.cpp \
- hangul.cpp
- HEADERS += \
- hangulinputmethod.h \
- hangul.h
- DEFINES += HAVE_HANGUL
-}
-
-openwnn {
- SOURCES += openwnninputmethod.cpp
- HEADERS += openwnninputmethod.h
- DEFINES += HAVE_OPENWNN
- QMAKE_USE += openwnn
-}
-
-lipi-toolkit:t9write: \
- error("Conflicting configuration flags: lipi-toolkit and t9write." \
- "Please use either one, but not both at the same time.")
-
-lipi-toolkit {
- CONFIG += exceptions
- SOURCES += \
- lipiinputmethod.cpp \
- lipisharedrecognizer.cpp \
- lipiworker.cpp
- HEADERS += \
- lipiinputmethod.h \
- lipisharedrecognizer.h \
- lipiworker.h
- DEFINES += HAVE_LIPI_TOOLKIT
- INCLUDEPATH += \
- 3rdparty/lipi-toolkit/src/include \
- 3rdparty/lipi-toolkit/src/util/lib
- LIBS += -L$$OUT_PWD/../../lib \
- -lshaperecommon$$qtPlatformTargetSuffix() \
- -lltkcommon$$qtPlatformTargetSuffix() \
- -lltkutil$$qtPlatformTargetSuffix()
- win32: LIBS += Advapi32.lib
- else: QMAKE_USE += libdl
- ltk_projects.files = $$PWD/3rdparty/lipi-toolkit/projects
- ltk_projects.path = $$[QT_INSTALL_DATA]/qtvirtualkeyboard/lipi_toolkit
- INSTALLS += ltk_projects
- !prefix_build: COPIES += ltk_projects
-}
-
-t9write {
- include(3rdparty/t9write/t9write-build.pri)
- equals(T9WRITE_FOUND, 0): \
- error("T9Write SDK could not be found. For more information, see" \
- "the documentation in Building Qt Virtual Keyboard")
- SOURCES += \
- t9writeinputmethod.cpp \
- t9writeworker.cpp \
- t9writedictionary.cpp
- HEADERS += \
- t9writeinputmethod.h \
- t9writeworker.h \
- t9writedictionary.h \
- t9write.h
- DEFINES += HAVE_T9WRITE
- QMAKE_USE += t9write_db
- INCLUDEPATH += $$T9WRITE_INCLUDE_DIRS
- t9write-alphabetic {
- LIBS += $$T9WRITE_ALPHABETIC_LIBS
- DEFINES += HAVE_T9WRITE_ALPHABETIC
- !isEmpty(T9WRITE_ALPHABETIC_BINS) {
- t9write_alphabetic_bins.files = $$T9WRITE_ALPHABETIC_BINS
- t9write_alphabetic_bins.path = $$[QT_INSTALL_BINS]
- INSTALLS += t9write_alphabetic_bins
- !prefix_build: COPIES += t9write_alphabetic_bins
- }
- }
- t9write-cjk {
- LIBS += $$T9WRITE_CJK_LIBS
- DEFINES += HAVE_T9WRITE_CJK
- !isEmpty(T9WRITE_CJK_BINS) {
- t9write_cjk_bins.files = $$T9WRITE_CJK_BINS
- t9write_cjk_bins.path = $$[QT_INSTALL_BINS]
- INSTALLS += t9write_cjk_bins
- !prefix_build: COPIES += t9write_cjk_bins
- }
- }
- DEFINES += QT_VIRTUALKEYBOARD_DEBUG
-}
record-trace-input {
SOURCES += unipentrace.cpp
- HEADERS += unipentrace.h
+ HEADERS += unipentrace_p.h
DEFINES += QT_VIRTUALKEYBOARD_RECORD_TRACE_INPUT
}
@@ -491,12 +247,9 @@ arrow-key-navigation: DEFINES += QT_VIRTUALKEYBOARD_ARROW_KEY_NAVIGATION
!disable-layouts {
layouts.files = $$LAYOUT_FILES
- layouts.prefix = /QtQuick/VirtualKeyboard
+ layouts.prefix = $$LAYOUTS_PREFIX
RESOURCES += layouts
DEFINES += HAVE_LAYOUTS
}
-PLUGIN_TYPE = platforminputcontexts
-PLUGIN_EXTENDS = -
-PLUGIN_CLASS_NAME = QVirtualKeyboardPlugin
-load(qt_plugin)
+load(qt_module)
diff --git a/src/virtualkeyboard/virtualkeyboarddebug.h b/src/virtualkeyboard/virtualkeyboarddebug_p.h
index 17e53bdf..fe679b4c 100644
--- a/src/virtualkeyboard/virtualkeyboarddebug.h
+++ b/src/virtualkeyboard/virtualkeyboarddebug_p.h
@@ -30,11 +30,28 @@
#ifndef VIRTUALKEYBOARDDEBUG_H
#define VIRTUALKEYBOARDDEBUG_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 <QDebug>
#include <QLoggingCategory>
+QT_BEGIN_NAMESPACE
+namespace QtVirtualKeyboard {
+
Q_DECLARE_LOGGING_CATEGORY(qlcVirtualKeyboard)
#define VIRTUALKEYBOARD_DEBUG() qCDebug(qlcVirtualKeyboard)
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
+
#endif // VIRTUALKEYBOARDDEBUG_H
diff --git a/src/virtualkeyboard/virtualkeyboardsettings.cpp b/src/virtualkeyboard/virtualkeyboardsettings.cpp
index e20596b6..d32e6e8b 100644
--- a/src/virtualkeyboard/virtualkeyboardsettings.cpp
+++ b/src/virtualkeyboard/virtualkeyboardsettings.cpp
@@ -27,15 +27,16 @@
**
****************************************************************************/
-#include "virtualkeyboardsettings.h"
-#include "settings.h"
-#include "virtualkeyboarddebug.h"
+#include "virtualkeyboardsettings_p.h"
+#include "settings_p.h"
+#include "virtualkeyboarddebug_p.h"
#include <QQmlEngine>
#include <QFileInfo>
#include <QDir>
#include <QRegularExpression>
#include <QtCore/private/qobject_p.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class VirtualKeyboardSettingsPrivate : public QObjectPrivate
@@ -467,3 +468,4 @@ void WordCandidateListSettings::setAutoCommitWord(bool autoCommitWord)
}
} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
diff --git a/src/virtualkeyboard/virtualkeyboardsettings.h b/src/virtualkeyboard/virtualkeyboardsettings_p.h
index ca61db2a..adcfd7a6 100644
--- a/src/virtualkeyboard/virtualkeyboardsettings.h
+++ b/src/virtualkeyboard/virtualkeyboardsettings_p.h
@@ -30,14 +30,27 @@
#ifndef VIRTUALKEYBOARDSETTINGS_H
#define VIRTUALKEYBOARDSETTINGS_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 <qqml.h>
+#include <QtVirtualKeyboard/qvirtualkeyboard_global.h>
+QT_BEGIN_NAMESPACE
namespace QtVirtualKeyboard {
class WordCandidateListSettings;
class VirtualKeyboardSettingsPrivate;
-class VirtualKeyboardSettings : public QObject
+class QVIRTUALKEYBOARD_EXPORT VirtualKeyboardSettings : public QObject
{
Q_OBJECT
Q_DECLARE_PRIVATE(VirtualKeyboardSettings)
@@ -90,7 +103,7 @@ private:
void resetLayoutPath();
};
-class WordCandidateListSettings : public QObject
+class QVIRTUALKEYBOARD_EXPORT WordCandidateListSettings : public QObject
{
Q_OBJECT
Q_PROPERTY(int autoHideDelay READ autoHideDelay WRITE setAutoHideDelay NOTIFY autoHideDelayChanged)
@@ -116,6 +129,7 @@ signals:
void autoCommitWordChanged();
};
-}
+} // namespace QtVirtualKeyboard
+QT_END_NAMESPACE
#endif // VIRTUALKEYBOARDSETTINGS_H
diff --git a/sync.profile b/sync.profile
index dfc1d5d6..476934c8 100644
--- a/sync.profile
+++ b/sync.profile
@@ -1,4 +1,6 @@
%modules = ( # path to module name map
+ "QtVirtualKeyboard" => "$basedir/src/virtualkeyboard",
+ "QtHunspellInputMethod" => "$basedir/src/plugins/hunspell/hunspellinputmethod",
);
%moduleheaders = ( # restrict the module headers to those found in relative path
);
diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro
index 6b71c159..15685d5f 100644
--- a/tests/auto/auto.pro
+++ b/tests/auto/auto.pro
@@ -5,4 +5,4 @@ SUBDIRS += \
styles \
layoutfilesystem \
layoutresources \
-
+ cmake \
diff --git a/tests/auto/cmake/CMakeLists.txt b/tests/auto/cmake/CMakeLists.txt
new file mode 100644
index 00000000..3d77b9e5
--- /dev/null
+++ b/tests/auto/cmake/CMakeLists.txt
@@ -0,0 +1,12 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(qmake_cmake_files)
+
+enable_testing()
+
+find_package(Qt5Core REQUIRED)
+
+include("${_Qt5CTestMacros}")
+
+test_module_includes(
+)
diff --git a/tests/auto/cmake/cmake.pro b/tests/auto/cmake/cmake.pro
new file mode 100644
index 00000000..f8635657
--- /dev/null
+++ b/tests/auto/cmake/cmake.pro
@@ -0,0 +1,6 @@
+# Cause make to do nothing.
+TEMPLATE = subdirs
+
+CMAKE_QT_MODULES_UNDER_TEST = virtualkeyboard
+
+CONFIG += ctest_testcase