diff options
author | Mike Krus <mike.krus@kdab.com> | 2019-09-27 19:27:50 +0100 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2019-10-01 07:04:08 +0100 |
commit | bf34cec2c4e184c7b5dad23435bec45983b6b796 (patch) | |
tree | 40a955e2e25cce89107e713bde58bc19d1eb767b /tests/auto/input | |
parent | e532a1cf37855f79a0a662d9b07786337e5fd220 (diff) |
Update QKeyboardHandler to use direct sync
Change-Id: I08fdf7d4beccc512f84e70449ed706eab6df7d0b
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'tests/auto/input')
-rw-r--r-- | tests/auto/input/keyboardhandler/tst_keyboardhandler.cpp | 43 |
1 files changed, 19 insertions, 24 deletions
diff --git a/tests/auto/input/keyboardhandler/tst_keyboardhandler.cpp b/tests/auto/input/keyboardhandler/tst_keyboardhandler.cpp index 3681f3554..331478472 100644 --- a/tests/auto/input/keyboardhandler/tst_keyboardhandler.cpp +++ b/tests/auto/input/keyboardhandler/tst_keyboardhandler.cpp @@ -54,7 +54,7 @@ private Q_SLOTS: auto keyboardDevice = new Qt3DInput::QKeyboardDevice; auto backendKeyboardDevice = inputHandler.keyboardDeviceManager()->getOrCreateResource(keyboardDevice->id()); backendKeyboardDevice->setInputHandler(&inputHandler); - simulateInitialization(keyboardDevice, backendKeyboardDevice); + simulateInitializationSync(keyboardDevice, backendKeyboardDevice); Qt3DInput::QKeyboardHandler keyboardHandler; auto backendKeyboardHandler = inputHandler.keyboardInputManager()->getOrCreateResource(keyboardHandler.id()); @@ -64,7 +64,7 @@ private Q_SLOTS: keyboardHandler.setSourceDevice(keyboardDevice); // WHEN - simulateInitialization(&keyboardHandler, backendKeyboardHandler); + simulateInitializationSync(&keyboardHandler, backendKeyboardHandler); // THEN QCOMPARE(backendKeyboardHandler->peerId(), keyboardHandler.id()); @@ -90,50 +90,45 @@ private Q_SLOTS: // GIVEN Qt3DInput::Input::InputHandler inputHandler; + Qt3DInput::QKeyboardHandler keyboardHandler; + keyboardHandler.setEnabled(false); + Qt3DInput::Input::KeyboardHandler backendKeyboardHandler; + backendKeyboardHandler.setInputHandler(&inputHandler); + Qt3DInput::QKeyboardDevice device; Qt3DInput::Input::KeyboardDevice *backendKeyboardDevice = inputHandler.keyboardDeviceManager()->getOrCreateResource(device.id()); backendKeyboardDevice->setInputHandler(&inputHandler); - Qt3DInput::Input::KeyboardHandler *backendKeyboardHandler - = inputHandler.keyboardInputManager()->getOrCreateResource(Qt3DCore::QNodeId::createId()); - backendKeyboardHandler->setInputHandler(&inputHandler); + simulateInitializationSync(&keyboardHandler, &backendKeyboardHandler); // WHEN - Qt3DCore::QPropertyUpdatedChangePtr updateChange(new Qt3DCore::QPropertyUpdatedChange(Qt3DCore::QNodeId())); - updateChange->setPropertyName("sourceDevice"); - updateChange->setValue(QVariant::fromValue(device.id())); - backendKeyboardHandler->sceneChangeEvent(updateChange); + keyboardHandler.setSourceDevice(&device); + backendKeyboardHandler.syncFromFrontEnd(&keyboardHandler, false); // THEN - QCOMPARE(backendKeyboardHandler->keyboardDevice(), device.id()); + QCOMPARE(backendKeyboardHandler.keyboardDevice(), device.id()); // WHEN (still disabled, nothing should happen) - updateChange = QSharedPointer<Qt3DCore::QPropertyUpdatedChange>::create(Qt3DCore::QNodeId()); - updateChange->setPropertyName("focus"); - updateChange->setValue(true); - backendKeyboardHandler->sceneChangeEvent(updateChange); + keyboardHandler.setFocus(true); + backendKeyboardHandler.syncFromFrontEnd(&keyboardHandler, false); // THEN QVERIFY(backendKeyboardDevice->lastKeyboardInputRequester().isNull()); // WHEN - updateChange = QSharedPointer<Qt3DCore::QPropertyUpdatedChange>::create(Qt3DCore::QNodeId()); - updateChange->setPropertyName("enabled"); - updateChange->setValue(true); - backendKeyboardHandler->sceneChangeEvent(updateChange); + keyboardHandler.setEnabled(true); + backendKeyboardHandler.syncFromFrontEnd(&keyboardHandler, false); // THEN - QCOMPARE(backendKeyboardHandler->isEnabled(), true); + QCOMPARE(backendKeyboardHandler.isEnabled(), true); // WHEN (now enabled, should request focus) - updateChange = QSharedPointer<Qt3DCore::QPropertyUpdatedChange>::create(Qt3DCore::QNodeId()); - updateChange->setPropertyName("focus"); - updateChange->setValue(true); - backendKeyboardHandler->sceneChangeEvent(updateChange); + keyboardHandler.setFocus(true); + backendKeyboardHandler.syncFromFrontEnd(&keyboardHandler, false); // THEN - QCOMPARE(backendKeyboardDevice->lastKeyboardInputRequester(), backendKeyboardHandler->peerId()); + QCOMPARE(backendKeyboardDevice->lastKeyboardInputRequester(), backendKeyboardHandler.peerId()); } }; |