| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
[ChangeLog] Added Greek keyboard layout.
Change-Id: I56a15ebcf58c768d8f544654cb8a17a77c743e3f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
HunspellInputMethod must update selection list status immediately
after dictionary starts load.
This issue should not cause issues in normal use, but it will cause
automatic tests to fail with lipi-toolkit. This is because LipiInputMethod
uses HunspellInputMethod for spell correction and suggestions.
The automated tests rely on selection list status when deciding if
spell correction is available or not.
The failing tests was test_hwrWordReselection_data.
Also, fix incorrect debug stating dictionary could not be found.
Change-Id: Ic6c3526a494fb60dde234c000ed9bd0d70f53335
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change adds support for automatically hiding word candidate list
when inactive. This feature includes the following enhancements:
- Added new settings:
* VirtualKeyboardSettings.wordCandidateList.autoHideDelay
* VirtualKeyboardSettings.wordCandidateList.alwaysVisible
- Automatic hiding of word candidate list when inactive and when
autoHideDelay elapsed.
- alwaysVisible setting restores the old functionality.
- Added new signal selectionListsChanged() to input method, allowing
the input method to dynamically allocate or deallocate selection
lists.
- HunspellInputMethod does not allocate selection list when
dictionary cannot be loaded, or Qt::ImhNoPredictiveText is enabled.
Also, it will no longer use pre-edit text in this case.
- OpenWnnInputMethod does not allocate selection list if not needed.
[ChangeLog] Automatically hide word candidate list when inactive.
Change-Id: Ifa95ae8a7c47a96719ffdc2929601ff2ef9c0d2e
Reviewed-by: Gordan Markus <gordan.markus@pelagicore.com>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Use qAsConst to prevent detaching where it's needed.
qAsConst is not acceptable for rvalues, therefore catch them by
const auto.
Result: reduce text size.
Change-Id: If773827f24dc5a45c264ad2ed6060c1a99720040
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: I0dc6af72a3ae52a0b97b704df84fb1a8197aeeb8
Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
Reviewed-by: Rainer Keller <rainer.keller@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since the virtual keyboard C++ interface is wrapped inside a
namespace, it is possible to get rid of "Declarative" name
in the class names, that would otherwise conflict with the
QML namespace in the documentation.
- Rename DeclarativeSettings to VirtualKeyboardSettings
- Remove "Declarative" from class names
The rationale for this change is that the name Declarative
refers to now obsolete QtQuick1 module. Also, the class names
are now the same in C++ and QML name spaces.
Change-Id: Ide050d47110443d894d95d35dddf0df5891587be
Reviewed-by: Mitch Curtis <mitch.curtis@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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change adds support for word reselection.
By definition, word reselection means the ability to reselect any of the
existing words in the text by touching/clicking the word.
This change implements previously unused functionality provided by
QPlatformInputContext::invokeMethod(). This functionality is essential
for handling touch events inside a pre-edit text. The virtual keyboard
example app was previously blocking this function by overriding the
default touch handling for TextInput and TextEdit components.
Word reselection is currently implemented for the following input methods:
- HunspellInputMethod
- LipiInputMethod (by inheriting HunspellInputMethod)
- T9WriteInputMethod.
Change-Id: I66731e2d2831d4b3d43dac0503cd564ffb4d490f
Reviewed-by: Mitch Curtis <mitch.curtis@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 moves the Hunspell dictionary loading to worker thread.
The dictionary loading is relatively heavy task for large dictionary
files, such as Arabic, which can take more than 2 seconds to load on
the Nexus 7 hardware.
The Hunspell worker thread is no longer destroyed and created every
time the dictionary changes, instead the worker thread is re-used.
The dictionary loading happens by adding a new kind of task for the
worker thread. Also, added a special function for clearing all but
dictionary loading tasks from the worker task queue. This is needed
for a special case where the dictionary is still loading while the
user starts typing.
Updated the test cases to take into account changes in delays in
loading the dictionary.
Change-Id: If9be14c7703b39af79f6e3b6708e297a28c49f2f
Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The reset() function should not be called directly from the input
method because it is a virtual function and may cause side effects
in the derived class.
This change moves the reset() function to private class and uses
that function instead.
This change does not introduce any new behavior, nor it should break
any existing ones. It fixes a particular issue that presents
itself after introduction of the LipiInputMethod, which uses
HunspellInputMethod as its base class.
Change-Id: I38b56150a677f6c8fcf10a9b7b556acc3f7f4a92
Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
|
|
This change allows using the HunspellInputMethod as a
base class for other input methods.
- Move the private class implementation in separate files.
- Add protected constructor.
Change-Id: Idae73744c6e2e5453dfb2d7602f8585b86485e53
Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
|