diff --git a/src/qml/Page/RoomPage.qml b/src/qml/Page/RoomPage.qml index f988d1e2d..a051c9e93 100644 --- a/src/qml/Page/RoomPage.qml +++ b/src/qml/Page/RoomPage.qml @@ -44,9 +44,6 @@ Kirigami.ScrollablePage { } } - signal switchRoomUp() - signal switchRoomDown() - onCurrentRoomChanged: { applicationWindow().hoverLinkIndicator.text = ""; messageListView.positionViewAtBeginning(); @@ -120,26 +117,8 @@ Kirigami.ScrollablePage { focus: true - Keys.onTabPressed: { - if (event.modifiers & Qt.ControlModifier) { - switchRoomDown(); - } - } - - Keys.onBacktabPressed: { - if (event.modifiers & Qt.ControlModifier) { - switchRoomUp(); - } - } - Keys.onPressed: { - if (event.key === Qt.Key_PageDown && (event.modifiers & Qt.ControlModifier)) { - event.accepted = true; - switchRoomDown(); - } else if (event.key === Qt.Key_PageUp && (event.modifiers & Qt.ControlModifier)) { - event.accepted = true; - switchRoomUp(); - } else if (!(event.modifiers & Qt.ControlModifier) && event.key < Qt.Key_Escape) { + if (!(event.modifiers & Qt.ControlModifier) && event.key < Qt.Key_Escape) { event.accepted = true; chatBox.chatBar.insertText(event.text); chatBox.chatBar.forceActiveFocus(); diff --git a/src/qml/main.qml b/src/qml/main.qml index 96c6fe817..7d903525c 100644 --- a/src/qml/main.qml +++ b/src/qml/main.qml @@ -317,12 +317,16 @@ Kirigami.ApplicationWindow { RoomListPage { id: roomList - Connections { - target: root.roomPage - function onSwitchRoomUp() { + Shortcut { + sequences: ["Ctrl+PgUp", "Ctrl+Backtab"] + onActivated: { roomList.goToPreviousRoom(); } - function onSwitchRoomDown() { + } + + Shortcut { + sequences: ["Ctrl+PgDown", "Ctrl+Tab"] + onActivated: { roomList.goToNextRoom(); } }