| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
This fixes the original commit - 9db37be7210d4071c8b2c7bfa98d1822075ab452
Change-Id: I6679ce07a4890f7d8d332f0400a5bbd2cc6bb577
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
| |
Change-Id: I0dc6af72a3ae52a0b97b704df84fb1a8197aeeb8
Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
Reviewed-by: Rainer Keller <rainer.keller@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change wraps the entire C++ API into namespace.
In practice, all the C++ interfaces inside the qtvirtualkeyboard plugin
are private, except the QPlatformInputContext plugin API. Even the
AbstractInputMethod and AbstractInputPanel are not really a public in
the sense that they could be used outside the plugin. At least it does
not make sense, since there is no way to extend the virtual keyboard
functionality without recompiling the plugin.
Task-number: QTRD-3628
Change-Id: I1037ee247abca3219efeaa4e4150baaff7c3d668
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: Iba2bd21b95dde1aac5750ac77856716e0c61e577
Reviewed-by: Kalle Viironen <kalle.viironen@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
| |
Using the commercial template found here:
https://wiki.it.local/display/QTCOM/Header+templates+to+be+used+in+Qt+Code
Change-Id: If401d8fa3ff4dab6ea1e74477d5c02b5dcd09eea
Task-number: QTRD-3693
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change improves the user experience by reducing the time
spent waiting the HWR task to complete.
Previously the recognition was started after the recognition
timer expired. This caused the total overhead of the recognition
to be summed on top of the recognition timer, reducing the user
experience in low performance devices. Now the idle time (during
the recognition timer) is used for the benefit of HWR task, so that
in optimal case, the recognition result is available immediately
after the recognition timer expires. If the HWR task takes longer
to process than the recognition timer, the results will be provided
as soon as the HWR task is done.
Ongoing recognition task is cancelled if the user continues drawing
while the recognition timer is running. If the recognition task is
already completed, the current result is ignored and the result
from the next recognition task is used instead.
Change-Id: I9ba797223d8a9b8daf423e500fcf9d5250caaa5a
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
This change adds a reference implementation of the handwriting
input method.
The handwriting support is enabled by adding CONFIG+=lipi-toolkit
to the qmake command line.
The current implementation uses alphanumeric model for handwriting
recognition, which come bundled in the lipi toolkit.
Change-Id: I1fcc0a0c0620dd7f9503a2a584cea0003e8a032e
Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
|