aboutsummaryrefslogtreecommitdiffstats
path: root/src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp
diff options
context:
space:
mode:
authorJarkko Koivikko <jarkko.koivikko@code-q.fi>2018-08-23 18:02:36 +0300
committerJarkko Koivikko <jarkko.koivikko@code-q.fi>2018-08-28 07:55:48 +0000
commitb253a3f14af12588966687d66cfa8829e3b1758f (patch)
tree03a29c96d239ad8a8a0ea7fd48c51d3f0ae7ae7e /src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp
parent84f96372584c37149fe6df751f937b61e3b7abe5 (diff)
Use enum class in the input context private state flags
Rename enum QVirtualKeyboardInputContextPrivate::StateFlag to ::State and use strongly typed enum. Simplify the state handling with new class QVirtualKeyboardScopedState. Change-Id: I124d53e7094e3b8056b7697d5e6f88d5e8b71b78 Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp')
-rw-r--r--src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp b/src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp
index 4161f909..6b1b7819 100644
--- a/src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp
+++ b/src/virtualkeyboard/qvirtualkeyboardinputcontext.cpp
@@ -222,11 +222,11 @@ void QVirtualKeyboardInputContext::sendKeyClick(int key, const QString &text, in
QKeyEvent releaseEvent(QEvent::KeyRelease, key, Qt::KeyboardModifiers(modifiers), text);
VIRTUALKEYBOARD_DEBUG() << "QVirtualKeyboardInputContext::sendKeyClick():" << key;
- d->stateFlags |= QVirtualKeyboardInputContextPrivate::KeyEventState;
+ d->setState(QVirtualKeyboardInputContextPrivate::State::KeyEvent);
d->platformInputContext->sendKeyEvent(&pressEvent);
d->platformInputContext->sendKeyEvent(&releaseEvent);
if (d->activeKeys.isEmpty())
- d->stateFlags &= ~QVirtualKeyboardInputContextPrivate::KeyEventState;
+ d->clearState(QVirtualKeyboardInputContextPrivate::State::KeyEvent);
} else {
qWarning() << "QVirtualKeyboardInputContext::sendKeyClick(): no focus to send key click" << key << text
<< "- QGuiApplication::focusWindow() is:" << QGuiApplication::focusWindow();
@@ -279,9 +279,7 @@ void QVirtualKeyboardInputContext::commit(const QString &text, int replaceFrom,
d->preeditTextAttributes.clear();
QInputMethodEvent inputEvent(QString(), attributes);
inputEvent.setCommitString(text, replaceFrom, replaceLength);
- d->stateFlags |= QVirtualKeyboardInputContextPrivate::InputMethodEventState;
- d->platformInputContext->sendEvent(&inputEvent);
- d->stateFlags &= ~QVirtualKeyboardInputContextPrivate::InputMethodEventState;
+ d->sendInputMethodEvent(&inputEvent);
} else {
d->preeditText.clear();
d->preeditTextAttributes.clear();
@@ -312,9 +310,7 @@ void QVirtualKeyboardInputContext::clear()
QList<QInputMethodEvent::Attribute> attributes;
d->addSelectionAttribute(attributes);
QInputMethodEvent event(QString(), attributes);
- d->stateFlags |= QVirtualKeyboardInputContextPrivate::InputMethodEventState;
- d->platformInputContext->sendEvent(&event);
- d->stateFlags &= ~QVirtualKeyboardInputContextPrivate::InputMethodEventState;
+ d->sendInputMethodEvent(&event);
}
if (preeditChanged)