| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Task-number: QTBUG-88742
Change-Id: Ide456bc0f6d1c5613e83d500717acdd37cbbbf81
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Dictionary manager API provides applications methods to
create custom dictionaries for use in the virtual keyboard
input methods.
- The dictionaries can be activated from both C++ and QML.
v2: Update CMake project
[ChangeLog] Added a generic dictionary API. The API allows
applications to create/update/remove dictionaries at runtime.
The desired dictionaries can be activated from the application.
The implementation of the dictionaries depends on the input
method. A typical use case for this API would be a phone book.
Change-Id: I8fcb931eff2adff80b4a458a676ba25d51df2ec9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- KeyboardObserver provides access to keyboard properties. Currently
it contains a property to access keyboard layout. One possible use
case of the KeyboardObserver is for input methods that use the
keyboard layout for more accurate spell correction.
- Add BaseKey.keyType property: This property holds the key type at
runtime.
v2: Ensure keyboard observer is set before input mode
- Fixes crash if the input panel instance is destroyed and created again.
In such case, the keyboard observer is not assigned before the next
input mode is set.
v3: Fix keyboard layout observer for keys that are invisible
v4: Update CMake project
- Skip keys that are invisible.
Change-Id: I820ce3a575397885eb6310722c3f2c6dffcf325c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjust configuration from passing lots of CONFIG+=... on the qmake
command line to proper command line arguments. Add configure tests for
external libraries we might end up using.
Adjusted the build documentation to reflect the new way of configuring.
Replace all custom HAVE_FOO feature defines with proper
QT_CONFIG() checks.
This patch does not handle the options -disable-hunspell,
-no-bundle-ctime and -no-bundle-pinyin as they are not a necessity to
properly support the CMake port and can be added later.
[ChangeLog][Important Behavior Changes] The build system was switched to
the new configure system. See documentation for updated instructions.
Change-Id: I52f863a4d0217bde38fa3fc5e5967b7d8dcb06e0
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
Enforce proper string cast using QT_NO_CAST_TO_ASCII and friends.
Change-Id: I039b23144c8d57f12aad1c27f29654b382078222
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Resources used by qtvirtualkeyboard must (still) be initialized manually
in static build. The reason for this is that the resources are located
in the virtualkeyboard module, not in the plugin.
Layouts resources in plugins must have unique name. This change renames the
layouts resource file in each plugin. Otherwise the Q_INIT_RESOURCE does not
work, since all use the same name.
Finally, rename the static resource files to avoid using too generic name and
clash with the user application.
Change-Id: I53054605f14ff8a7b61ce2736f61e456b6c3ee88
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change moves the QML type registration from platform input
context plugin to respective QML plugins:
QtQuick.VirtualKeyboard (import.pro)
QtQuick.VirtualKeyboard.Settings (settings.pro)
Input method types (e.g. from the virtual keyboard plugins) are still
registered in the qtvirtualkeyboard module, but with new URI:
QtQuick.VirtualKeyboard.Plugins (plugin.pro)
This change is necessary, because the Quick.VirtualKeyboard URI is now
reserved for the QML module.
Like before, the Quick.VirtualKeyboard module cannot be used without
setting QT_IM_MODULE=qtvirtualkeyboard environment variable.
The main motivation for this change was to make plugins.qmltypes
generation possible for C++ based QML types.
Change-Id: Ieb449eb73e0fa33e9a1686d471cc4284982ea1bd
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
| |
Change-Id: Idf2447736ef72fa0fb4dfeacc3386ed7b4fe41c9
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since creation of qtvirtualkeyboard module, record-trace-input config
option has been broken.
Change-Id: I053facf414a2fcd2d417aabcb01cb81054fb0d6e
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The purpose of this change is to reduce the number of public API in the
virtual keyboard.
This change moves a lot of stuff from InputContext to ShiftHandler and
InputContextPrivate and exposes the private API to QML through
InputContext.priv property.
Almost all the unrelevant APIs were moved away, except some properties
and methods needed by selection control. These were left intact because
moving them is not trivial.
Change-Id: I1f23f5f54bc21c68996cb220a66d16d34b5d14ce
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog] Added Spanish Mexican keyboard layout
Change-Id: Idfdf9d8abd051e8fbdad8e724780d30cb452e006
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog] Added Portuguese Brazil keyboard layout
Change-Id: Icb6f5931c63aa0380bebee29c9344a2e30c6a8f1
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog] Added French Canadian keyboard layout
Change-Id: I20efb7aa42cf2b30f6302980b931e2d5c9df930a
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
When developing in Qt Creator it is convenient that the layout files
are accessible through the project explorer.
Change-Id: Ica7a8316580c738d8b0bf9ae4566480d14041cd4
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added English US keyboard layout
Change-Id: I02c54b5f31bfb757f3fb41fcc6c90341013a4fc3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Indonesian keyboard layout
Change-Id: I22bc6eca017c5ae79783c68eaf992853ae77d4ec
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Malay keyboard layout
Change-Id: I4c388f6d5a8ee3863e09e2319645ba4644abc9b7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Keyboard layouts such as symbols and handwriting have been duplicated
commonly. While it has been possible to avoid duplication with digits,
numbers and dialpad layouts, it was not possible with handwriting
layout, because the existence of handwriting layout indicates the
language supports handwriting (which is used to enable the handwriting
button on the main layout).
This change modifies the fallback mechanism so that a special fallback
file called <layout type>.fallback must exist in place of the layout.
This allows to explicitly state whether a layout fallback should be
used.
This change also removes the duplicated layouts.
Change-Id: I22764f96a992c92731128fa192365dec419d17eb
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Ukrainian keyboard layout
Change-Id: Ic844f43221823e6fde1a6f218f3ec539e731f607
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog] Added Turkish keyboard layout
Change-Id: Ibc4d1382346f20fcc0d6cd3031b728a40f4bf5a3
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Slovenian keyboard layout
Change-Id: Icb8105c044831753a2565a55c0a1c7b98e9f84d1
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Slovak keyboard layout
Change-Id: Ie9a853b8ba2eecc023918e0d8abe8a41a03e4329
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Albanian keyboard layout
Change-Id: I85e800f0771c2d94ab87859c5feb7cf9d1f07f18
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
Since Qt 5.6 it is possible to pass "objects" to RESOURCES that describe
files and prefix directly. That allows getting rid of the qmake code to
generate .qrc files here, resources.prf does that by itself now.
Change-Id: Ibdcfd47355aeb10b83d23f6b00ec55b179b03bbf
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog] Added build time option to exclude all styles from
the plugin.
Change-Id: I7b965cfb10eb0c140c2910c5321615758bb18b95
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Vietnamese handwriting recognition.
Change-Id: I34fcf6acf58c3fcc8ef131db9c0f34703a7f85fc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Vietnamese keyboard layout
Change-Id: I9191e76a3ff268ffa93af87786412c27da022950
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| | |
Change-Id: I391752a6af04671b12f88a5980b1fb7ed62921c6
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QTBUG-66675 is fixed now.
This reverts commit 7db26902b36e3417a96586f98278b63afc0b0ad4.
Change-Id: Ifc02a9ba4ce4fcb0dd7ecf9e48fab42e332648a5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change bundles the tcime dictionaries into plugin by default.
[ChangeLog] The tcime dictionary is now bundled in the plugin by default.
Task-number: QTBUG-66198
Change-Id: I0a8ed09e9a32f0ec3fa08efbdb5802d83e727463
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
| |
This change modifies the pinyin library and adds support for loading
the dictionary from the qt resource system.
[ChangeLog] The pinyin dictionary is now bundled in the plugin by default.
Task-number: QTBUG-66198
Change-Id: I17459c4bde89cc4ccd96ad5c97393a5ad502b902
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
| |
This reverts commit 5f80f66d3b5878bba021d4ac67e35388bfe84fdb,
as it caused QTBUG-66675 and blocks the module.
Let's re-apply this when the bug in declarative is fixed.
Change-Id: Ice2dc9b9e7c8fd85d59fc0dfc324e4574c9140fd
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
With the QtQuickCompiler compatibility in place in qtdeclarative, we can by
default compile all qml files ahead of time, embed the cache files into
resources and avoid shipping the original sources. This simplifies distribution
and reduces the size of the overall package, ~1.6 MB for
libqtvirtualkeyboardplugin.so on Linux x86-64.
Change-Id: Ic3c20f43dfac6e601389b581033dcaf6f7015443
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
| |
QtQuickCompiler workarounds are no longer required with Qt 5.11 and need
to be removed to fix build failure where private/qqmlmetatype_p.h was not
found, since QT+=qml-private is no longer done by qtquickcompiler.prf.
Change-Id: I48f640a5b7196b295de89589d14061011ed920fc
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Hebrew keyboard layout.
Change-Id: I7779db4e5ac3c5a99937a0d7b7e572db65f0d811
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Farsi handwriting.
Change-Id: I1bf25cbc7f36cf8ca3f0a44b7e217a55ed3aa13a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Arabic handwriting.
Change-Id: Ica0601da2df262369159415d28fdb183e6f63736
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Serbian keyboard layout.
Change-Id: I7baa330791c62f7bbf4ff6a253ce1eea9f9c0e32
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Hungarian keyboard layout.
Change-Id: Ie0491c625aa767c2e775f1961192f3e4fa0c652b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Czech keyboard layout.
Change-Id: I12d989436e0299dc3dc1e993d756aba31a30a763
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Croatian keyboard layout.
Change-Id: I6e06b81439b046919561a5f7349d2603e53a7f55
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Bulgarian keyboard layout.
Change-Id: I636ba97d3fe80c94f91b269426465023a433d7bf
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Greek keyboard layout.
Change-Id: I56a15ebcf58c768d8f544654cb8a17a77c743e3f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Estonian keyboard layout.
Change-Id: Iadb39df14980e36a15f61f4e4f346f8aeee63b91
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog] Added Dutch keyboard layout.
Change-Id: I91d853fe2e74c68492caf9afac85df2c4b64548d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
This change adds handwriting support for Japanese.
Change-Id: Ifc8f0e32c8b3211c13aee8be5cb2e05fae09d3b7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
This change adds handwriting support for Korean.
Change-Id: I77eb322020c39259d9609051100c40b271a62c04
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
This change adds handwriting support for Traditional Chinese.
Change-Id: Ic358bf81795a3c88234b5e9c85635223ebf1c0d7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change adds support for handwriting in Simplified Chinese.
The integration is based on T9 Write CJK SDK v7.8.1.
[ChangeLog] Added support for CJK (Chinese/Japanese/Korean) handwriting
via T9 Write.
Change-Id: I18481cfd897987ecb471c49ecfcac62ea0c3489c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
|