aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/virtualkeyboard/platforminputcontext.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/virtualkeyboard/platforminputcontext.cpp b/src/virtualkeyboard/platforminputcontext.cpp
index 8b5ce99b..9980ff17 100644
--- a/src/virtualkeyboard/platforminputcontext.cpp
+++ b/src/virtualkeyboard/platforminputcontext.cpp
@@ -84,17 +84,19 @@ void PlatformInputContext::commit()
void PlatformInputContext::update(Qt::InputMethodQueries queries)
{
VIRTUALKEYBOARD_DEBUG() << "PlatformInputContext::update():" << queries;
- if (m_inputContext) {
- bool enabled = inputMethodQuery(Qt::ImEnabled).toBool();
- if (enabled) {
+ bool enabled = inputMethodQuery(Qt::ImEnabled).toBool();
#ifdef QT_VIRTUALKEYBOARD_DESKTOP
- if (!m_inputPanel) {
- m_inputPanel = new DesktopInputPanel(this);
- m_inputPanel->createView();
- m_selectionControl = new DesktopInputSelectionControl(this, m_inputContext);
- m_selectionControl->createHandles();
- }
+ if (enabled && !m_inputPanel) {
+ m_inputPanel = new DesktopInputPanel(this);
+ m_inputPanel->createView();
+ if (m_inputContext) {
+ m_selectionControl = new DesktopInputSelectionControl(this, m_inputContext);
+ m_selectionControl->createHandles();
+ }
+ }
#endif
+ if (m_inputContext) {
+ if (enabled) {
m_inputContext->update(queries);
if (m_visible)
updateInputPanelVisible();