diff options
author | Santhosh Kumar <santhosh.kumar.selvaraj@qt.io> | 2024-01-24 10:26:54 +0100 |
---|---|---|
committer | Jarkko Koivikko <jarkko.koivikko@code-q.fi> | 2024-03-12 16:42:10 +0200 |
commit | a3080e86bfd5d784ab8ba5552793bc11938a7877 (patch) | |
tree | e49cff96d8e12a802a9e8e0b57a919ecedf4616e /src/virtualkeyboard/settings.cpp | |
parent | 90c9e25827de29dd0ace6d4d2dab0f2af5c86bbb (diff) |
Make hide behavior of qt vkb configurable through its settings
The patch 6da66ff611902d8c4d485568d746f49c69f1330f (introdued in Qt6)
changed the behavior to handle the hide through platform plugins. But
this cause issue for some users, with the concern that the qt virtual
keyboard hides after input accepted in Qt5 and not in Qt6.
This patch introduced new virtual keyboard settings property
closeOnReturn to control the hiding behavior of virtual keyboard.
Task-number: QTBUG-112963
Change-Id: Ia9433a7fe14eb896758e05f0943ad461f2790a98
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
Diffstat (limited to 'src/virtualkeyboard/settings.cpp')
-rw-r--r-- | src/virtualkeyboard/settings.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/src/virtualkeyboard/settings.cpp b/src/virtualkeyboard/settings.cpp index a3d4eceb..15d66bbc 100644 --- a/src/virtualkeyboard/settings.cpp +++ b/src/virtualkeyboard/settings.cpp @@ -33,7 +33,9 @@ public: hwrTimeoutForCjk(500), handwritingModeDisabled(false), defaultInputMethodDisabled(false), - defaultDictionaryDisabled(false) + defaultDictionaryDisabled(false), + visibleFunctionKeys(QtVirtualKeyboard::KeyboardFunctionKey::All), + closeOnReturn(false) { ensureUserDataPathExists(); } @@ -64,7 +66,8 @@ public: bool handwritingModeDisabled; bool defaultInputMethodDisabled; bool defaultDictionaryDisabled; - QtVirtualKeyboard::KeyboardFunctionKeys visibleFunctionKeys = QtVirtualKeyboard::KeyboardFunctionKey::All; + QtVirtualKeyboard::KeyboardFunctionKeys visibleFunctionKeys; + bool closeOnReturn; }; static QScopedPointer<Settings> s_settingsInstance; @@ -357,5 +360,20 @@ void Settings::setVisibleFunctionKeys(QtVirtualKeyboard::KeyboardFunctionKeys ne } } +bool Settings::closeOnReturn() const +{ + Q_D(const Settings); + return d->closeOnReturn; +} + +void Settings::setCloseOnReturn(bool enabled) +{ + Q_D(Settings); + if (d->closeOnReturn != enabled) { + d->closeOnReturn = enabled; + emit closeOnReturnChanged(); + } +} + } // namespace QtVirtualKeyboard QT_END_NAMESPACE |