Move the ActionsHandler instance to the RoomPage

This is required since when using a RoomWindow, the ActionsHandler from the RoomManager is used, which means that the wrong room is used.
This commit is contained in:
Tobias Fella
2021-04-16 16:52:39 +02:00
parent f98eb78185
commit 89056ed6c1
6 changed files with 16 additions and 13 deletions

View File

@@ -44,7 +44,7 @@ Kirigami.ScrollablePage {
onClicked: {
if (!identifierField.isJoined) {
roomManager.actionsHandler.joinRoom(identifierField.text);
Controller.joinRoom(identifierField.text);
// When joining the room, the room will be opened
}
applicationWindow().pageStack.layers.pop();
@@ -97,7 +97,7 @@ Kirigami.ScrollablePage {
width: publicRoomsListView.width
onClicked: {
if (!isJoined) {
roomManager.actionsHandler.joinRoom(roomID)
Controller.joinRoom(roomID)
justJoined = true;
} else {
roomManager.enterRoom(connection.room(roomID))

View File

@@ -30,6 +30,14 @@ Kirigami.ScrollablePage {
onCurrentRoomChanged: ChatBoxHelper.clearEditReply()
ActionsHandler {
id: actionsHandler
room: page.currentRoom
connection: Controller.activeConnection
}
Connections {
target: Controller.activeConnection
function onJoinedRoom(room) {
@@ -40,7 +48,7 @@ Kirigami.ScrollablePage {
}
Connections {
target: roomManager.actionsHandler
target: actionsHandler
onShowMessage: {
page.header.contentItem.text = message;
page.header.contentItem.type = messageType === ActionsHandler.Error ? Kirigami.MessageType.Error : Kirigami.MessageType.Information;