aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* HandwritingGestureRecognizer: Fix clazy-strict-iteratorsv5.10.0-beta3Friedemann Kleint2017-10-191-1/+2
| | | | | | | | In addition, fix repetetive invocation of end(). Change-Id: I69c659e566dab8957cae3f50ae3e2671d0cc1ba3 Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: Update documentation for the examplev5.10.0-beta2v5.10.0-beta1Venugopal Shivashankar2017-09-211-3/+40
| | | | | | Task-number: QTBUG-60664 Change-Id: Ic3a55919c9f2fa2c07bc4cdc98dec3ed9aba72d0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* 3rdparty/t9write: Add support for multi-threadingv5.10.0-alpha1Jarkko Koivikko2017-08-301-0/+7
| | | | | | | | | | | To reduce the recognition response time, the engine allows to use multi-threading. If the macro DECUMA_USE_MULTI_THREAD is defined in the OEM build configuration file, and nMaxThreads is set to be greater than 1, we will use a maximum of threads in recognition process. Change-Id: Ie285d5a8c64584e88f85723967fd42228d36208c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* 3rdparty/t9write: Fix for T9 Write v8.0.0 API changesJarkko Koivikko2017-08-302-3/+16
| | | | | | | | The file name of the database binaries has changed and is now "hwrDB_le.bin" for T9 Write v8.0.0 and later. Change-Id: Iad964ae3298c1674cd36f72b00bcb95c6934b955 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* 3rdparty/t9write: unpack.py: Fix ordering of unpack rulesJarkko Koivikko2017-08-241-5/+21
| | | | | | | | Specific rules need to be executed in certain order. Wrap the UNPACK_RULES to a list, so the order of the rules can be specified. Change-Id: Ib160a814b49ed25fd0ed85337cfddf80afa0ccd7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add Hebrew keyboard layoutJarkko Koivikko2017-08-2450-5/+9513
| | | | | | | [ChangeLog] Added Hebrew keyboard layout. Change-Id: I7779db4e5ac3c5a99937a0d7b7e572db65f0d811 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Clear toggle shift timer when appropriateJarkko Koivikko2017-08-244-5/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The timer in the ShiftHandler is used for detecting double click events for shift key. A double click event will trigger caps lock if the initial shift state is lower case. However, the implementation did not handle a case where the keyboard layout changes between the first and second press. This can be done with multitouch. The second problem was with the automatic test cases, where the test code toggles the shift to see if there is a secondary layout triggered by the shift key, e.g. in Arabic and Farsi. However, if the keyboard layout does not contain secondary layout, rapid shift state change will trigger caps lock instead. This issue was identified with certain test case for Hebrew layout. This change fixes the issue by clearing the shift toggle timer when the layout changes and in the automatic tests while checking for the secondary layout with the shift key. Also, update test code so that the shift press is simulated with mouse. This will ensure the key exists in the layout and that the key is enabled. Change-Id: I2a528f1b82c30e8b8d9746d380b32ee370b38004 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add Farsi handwritingJarkko Koivikko2017-08-2110-4/+743
| | | | | | | [ChangeLog] Added Farsi handwriting. Change-Id: I1bf25cbc7f36cf8ca3f0a44b7e217a55ed3aa13a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add Arabic handwritingJarkko Koivikko2017-08-2122-3/+1621
| | | | | | | [ChangeLog] Added Arabic handwriting. Change-Id: Ica0601da2df262369159415d28fdb183e6f63736 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* 3rdparty/t9write: unpack.py: Fix Python 2/3 compatibilityJarkko Koivikko2017-08-211-1/+1
| | | | | | | | | | | The commit bc84550e3ad3dd0f032d435415804bf9765b2f0f added an option to unpack a directory. However, the feature was not compatible with python 3 due to incorrect chmod parameter. This change fixes the parameter so it works with python 2 and 3. Change-Id: Iaf74f2be660d6ee5de6cd58cc9c983707b2a9364 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix QML warning propagated from BaseKey in a specific use caseJarkko Koivikko2017-08-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | If the Key.alternativeKeys are assigned like: Key { alternativeKeys: condition ? "abc" : "def" } it will cause the following QML warning from BaseKey: [...]/BaseKey.qml:82:32: Unable to assign [undefined] to QString It seems to be caused by the order in which the dependent properties effectiveAlternativeKeysHighlightIndex and effectiveAlternativeKeys are updated. This change fixes the issue by adding the effectiveAlternativeKeys as condition for the property assignment. Change-Id: I0225a95a60920201161c7d8c084667c57c1c29d4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.9' into dev" into refs/staging/devLiang Qi2017-08-169-18/+22
|\
| * Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-08-159-18/+22
| |\ | | | | | | | | | | | | | | | | | | | | | Conflicts: src/virtualkeyboard/t9writeworker.cpp src/virtualkeyboard/t9writeworker.h Change-Id: I1fa1567e2739766c55c0e94b10706eecb8ba2ae1
| | * Compile fix for MSVC 2015 as it does not work with QAtomicInteger<bool>Andy Shaw2017-08-156-9/+9
| | | | | | | | | | | | | | | | | | | | | This fixes the original commit - 9db37be7210d4071c8b2c7bfa98d1822075ab452 Change-Id: I6679ce07a4890f7d8d332f0400a5bbd2cc6bb577 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * 3rdparty/openwnn: Fix crash related to entering a smileyJarkko Koivikko2017-08-022-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The crash occurs in Hiragana input mode only when pressing the space after entering a smiley. Fix it by handling the smiley as individual characters instead of text when submitting to OpenWNN engine. [ChangeLog][OpenWNN] Fixed crash when pressing the space after entering a smiley. Task-number: QTBUG-62143 Change-Id: Ic5f271bdfe05491ffd6147f1fc8eb9f54ef4e032 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * Doc: remove paragraph about needing to deploy the virtual keyboardMitch Curtis2017-07-271-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has been handled automatically for a while now. We'll leave the section about the deployment location though, as that could be useful. Task-number: QTBUG-62099 Change-Id: Idc13302dbeb4ede632338747c492e5503ce2395c Reviewed-by: Kati Kankaanpaa <kati.kankaanpaa@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | 3rdparty/t9write: unpack.py: Allow duplicate file namesJarkko Koivikko2017-08-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows the rules with same input file name (but with different directory prefix) to co-exist. It works by removing the already matched input file from the "zip list". However, this only works if the rules are ordered correctly, i.e. the most exact ones being first in the list. Consider the following example: 'data/arabic': [ '*/Arabic/_databas_le.bin', ], 'data': [ '*/_databas_le.bin', ] Without this change the later rule will override the file entry already copied for 'data/arabic'. But with 'Arabic/_databas_le.bin' removed from the input list, it will not be matched. Change-Id: Ifd06125d1519c45dba077e50f69769fdb0070351 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | 3rdparty/t9write: Add input directory argumentJarkko Koivikko2017-08-161-0/+20
|/ / | | | | | | | | | | | | Accept directory as an input argument in addition to zip file. Change-Id: I2faf446f7636d190941fae0f76e569cb1e7c332e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Update label for Cyrillic input modeJarkko Koivikko2017-08-095-7/+7
| | | | | | | | | | Change-Id: I7a18614b4c9b44573490c3611bb0703ec60baa84 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix warning seen in layoutresources and layoutfilesystem testsJarkko Koivikko2017-08-091-2/+2
| | | | | | | | | | | | | | | | QWARN : tst_layoutresources::layouts() qrc:///QtQuick/VirtualKeyboard/content/components/SelectionControl.qml:80: TypeError: Cannot read property 'cursorRectIntersectsClipRect' of null QWARN : tst_layoutresources::layouts() qrc:///QtQuick/VirtualKeyboard/content/components/SelectionControl.qml:48: TypeError: Cannot read property 'anchorRectIntersectsClipRect' of null Change-Id: I8478487c51462a37d3fa5396eac5b6ab4bec3a17 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Change color of handwriting guide lines in retro styleJarkko Koivikko2017-08-071-2/+2
| | | | | | | | | | | | | | The guide lines were invisible due to incorrect color. Change-Id: Ifdaf4b96aa15279ac2d79a71bad21ed7a713a26b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Filter LipiInputMethod inputModes by input method hintsJarkko Koivikko2017-08-071-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since adding the new component InputModeKey in commit ea998f43d62ac12fd0f48a51683eb343ee1a52f1 certain tests (tst_plugin::test_hwrNumericInputSequence) started to fail. The reason for the failure is the LipiInputMethod which always returns all the supported input modes (Latin, Numeric and Digits) regardless of input method hints. This change modifies this behavior and limits the input modes to ones actually requested by input method hints. Change-Id: Iddc315a60541a879d2e655d0cbf4d65189026e8f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Serbian keyboard layoutJarkko Koivikko2017-08-078-1/+852
| | | | | | | | | | | | | | [ChangeLog] Added Serbian keyboard layout. Change-Id: I7baa330791c62f7bbf4ff6a253ce1eea9f9c0e32 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Hungarian keyboard layoutJarkko Koivikko2017-08-077-0/+684
| | | | | | | | | | | | | | [ChangeLog] Added Hungarian keyboard layout. Change-Id: Ie0491c625aa767c2e775f1961192f3e4fa0c652b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Czech keyboard layoutJarkko Koivikko2017-08-077-0/+691
| | | | | | | | | | | | | | [ChangeLog] Added Czech keyboard layout. Change-Id: I12d989436e0299dc3dc1e993d756aba31a30a763 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Croatian keyboard layoutJarkko Koivikko2017-08-077-0/+706
| | | | | | | | | | | | | | [ChangeLog] Added Croatian keyboard layout. Change-Id: I6e06b81439b046919561a5f7349d2603e53a7f55 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Bulgarian keyboard layoutJarkko Koivikko2017-08-0728-0/+5182
| | | | | | | | | | | | | | [ChangeLog] Added Bulgarian keyboard layout. Change-Id: I636ba97d3fe80c94f91b269426465023a433d7bf Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Greek keyboard layoutJarkko Koivikko2017-08-0726-50/+3544
| | | | | | | | | | | | | | [ChangeLog] Added Greek keyboard layout. Change-Id: I56a15ebcf58c768d8f544654cb8a17a77c743e3f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix rendering of high and low acute accent keys in Zhuyin keyboardJarkko Koivikko2017-08-042-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | The MODIFIER LETTER ACUTE ACCENT and MODIFIER LETTER GRAVE ACCENT were not rendered correctly on the keyboard layout. Fix it by defining regular accent characters in the displayText property. After adding the displayText, it was noticed that the character preview is not using the BaseKey::displayText for rendering. So fix it too. Change-Id: If4889729a33a31d6adaf149ca4d263a2004abe7e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | tests: Allow input sequence to be in any case formatJarkko Koivikko2017-08-041-2/+9
| | | | | | | | | | | | | | | | | | | | | | Currently the text input sequence for the automatic test was expected to be in lowercase. This change modifies this behavior and allows the input sequence to be in any case format. Change-Id: Ic8230d586a290ab481bf1183a204d10a4b37fa7d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Change default Key::key to uppercaseJarkko Koivikko2017-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | If a Key does not provide Key::key value, the default value is derived from the first letter of Key::text. However, the key should always be in uppercase. This change forces the default key in uppercase. [ChangeLog] Ensure the default value of Key.key property is uppercase. Change-Id: Ie1879e0f0e5020bdfc0f916d537dbf9cb2f6cb51 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add new features to InputModeKeyJarkko Koivikko2017-08-042-7/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New property InputModeKey::inputModes: This property allows to define a custom list of input modes to toggle. If the list contains an invalid input modes (the ones not included in the available input modes) they are automatically disabled. The default list contains all the available input modes. New property InputModeKey::inputModeCount: This read-only property reflects the actual number of input modes the user can cycle through this key. Change-Id: I6be118565dc3d799074aa4159f1b0eec802ce591 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Prefer current input mode when switching between handwriting modeJarkko Koivikko2017-08-044-49/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | If a keyboard layout provides multiple choices for input modes (e.g. latin and cyrillic), prefer the current choice when switching to handwriting layout and back. Also, use the same mechanism to avoid binding loop when switching input mode with InputModeKey contained in a KeyboardLayoutLoader where the layout depends on the input mode. Change-Id: If7adae92db39f3b1e49ec362679e6b6ae7f32fa4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix alignment of key caption if smallText is enabledJarkko Koivikko2017-08-041-2/+2
| | | | | | | | | | | | | | | | | | Key caption is aligned differently when smallText is enabled. This is not an issue if smallText is enabled for all keys, but if enabled for individual keys the rendering will look bad. Change-Id: I6d75dd1c012d79cdb2883b1f99988c6ba6aabe40 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | t9write: Fix regression introduced in the T9 Write CJK integrationJarkko Koivikko2017-08-041-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The T9 Write CJK integration added a new internal function T9WriteInputMethodPrivate::setContext() used for updating T9 Write session settings for different layout scenarios (e.g. full screen mode vs regular layout). However, this function calls finishRecognition() so it breaks the input when switching between full screen mode and regular layout. Fix this regression by preserving input between context changes. Change-Id: I3ac269247466d34729c9b49c43425af069af69ea Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Estonian keyboard layoutJarkko Koivikko2017-07-317-0/+698
| | | | | | | | | | | | | | [ChangeLog] Added Estonian keyboard layout. Change-Id: Iadb39df14980e36a15f61f4e4f346f8aeee63b91 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add Dutch keyboard layoutJarkko Koivikko2017-07-318-1/+683
| | | | | | | | | | | | | | [ChangeLog] Added Dutch keyboard layout. Change-Id: I91d853fe2e74c68492caf9afac85df2c4b64548d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devSimon Hausmann2017-07-2619-111/+225
|\| | | | | | | | | | | | | | | Conflicts: .qmake.conf tests/auto/inputpanel/BLACKLIST Change-Id: Iab123586edb652a8ce14d89736aa13dc3c6203e6
| * styles.qrc: Remove qmldirFriedemann Kleint2017-07-261-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a plugin is used, the qmldir file must be located next to the plugin in the file system. By it being included in the .qrc file it was deployed twice, once in the file system and once in the virtual resource file system. A recent change in declarative ended up doing an implicit import on that virtual directory and thus uncovered this bug of the qmldir file being present in a (virtual) directory where it doesn't belong. qml_module.prf takes care of deploying the qmldir. Task-number: QTBUG-62138 Change-Id: I7693b5656cb593454e2d777fe179e6f889d6dbdf Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * 3rdparty/openwnn: Fix and optimize the engine due to QStringLiteralJarkko Koivikko2017-07-2513-1341/+390
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QStringLiteral is broken in MSVC2015 onwards when used with \uXXXX encoded character literals. This was the reason Japanese tests were failing - the OpenWNN engine was actually broken and producing garbage. Not only this change eliminates QStringLiteral from openwnn, but also reduces runtime memory usage by replacing QMap<QString, QString>. The new solution is based on simple binary lookup table WnnLookupTable. WnnLookupTable data was converted from existing QMap structures using WnnLookupTable::create() method, which was left there for future reference. This change also removes the unnecessary QObjectPrivate definitions from Romkan* classes. [ChangeLog][OpenWNN] Fixed and optimized OpenWNN engine (as a workaround for QStringLiteral breakage) Task-number: QTBUG-62133 Change-Id: I50c9e2f5c363e1314f47d7023685da543ec9a7eb Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit 0bf1c6ad9e0b5572b8ea99f5fc8945dade5675b7)
| * Use QSharedPointer::create() moreMarc Mutz2017-07-214-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | Reduces allocations. This is the result of running the (experimental) clang-tidy check qt-modernize-qsharedpointer-create Discarded changes: none. Change-Id: I9ef1ccd46315f1bb8f3cc30a652f17c18b46232c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Merge remote-tracking branch 'origin/5.9.1' into 5.9Liang Qi2017-06-301-0/+26
| |\ | | | | | | | | | Change-Id: Id387390ae533debf39b008b456a94f4c427993b4
| | * Add changes file for 5.9.1v5.9.1Jani Heikkinen2017-06-231-0/+26
| | | | | | | | | | | | | | | Change-Id: Id3bdf678c9aff44fc636d1f1880e57e740a8ef8e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Bump versionOswald Buddenhagen2017-06-301-1/+1
| | | | | | | | | | | | Change-Id: I72da022872d814fe1e21d111b77748d7e98fbb7a
| * | Update license headersMitch Curtis2017-06-2212-100/+188
| |/ | | | | | | | | | | | | | | | | | | Some handwriting.qml files were using the old commercial license headers. Also updated the copyright year. Change-Id: Id603976bc6343797fd993e8041065d6afb2dc7a9 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru> Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * winrt: Disable buildMaurice Kalinowski2017-06-121-0/+1
| | | | | | | | | | | | | | | | UWP is not a supported target platform for virtual keyboard. Change-Id: I00ccbfeb4f77e07b1d46dd5d54f50b55e3b778d8 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Gordan Markus <gordan.markus@pelagicore.com>
* | Enable tests for boot2qtSami Nurmenniemi2017-07-192-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | The tests for boot2qt were disabled with commit 96c9211bdde4c170e2fdb2f14178247eb7d8366b. The tests can be enabled since qtdeclarative now fallbacks to software renderer if OpenGL is not supported. Also blacklisted a test failing because of QTBUG-61279 Change-Id: I56bd5041b1ffbb150cdaab1f76638fd79041af06 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Add support for Japanese handwriting (T9 Write CJK)Jarkko Koivikko2017-07-0817-9/+3227
| | | | | | | | | | | | | | This change adds handwriting support for Japanese. Change-Id: Ifc8f0e32c8b3211c13aee8be5cb2e05fae09d3b7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add support for Korean handwriting (T9 Write CJK)Jarkko Koivikko2017-07-0817-7/+2247
| | | | | | | | | | | | | | This change adds handwriting support for Korean. Change-Id: I77eb322020c39259d9609051100c40b271a62c04 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add support for Traditional Chinese handwriting (T9 Write CJK)Jarkko Koivikko2017-07-088-0/+1719
| | | | | | | | | | | | | | This change adds handwriting support for Traditional Chinese. Change-Id: Ic358bf81795a3c88234b5e9c85635223ebf1c0d7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>