diff --git a/imports/NeoChat/Menu/RoomListContextMenu.qml b/imports/NeoChat/Menu/RoomListContextMenu.qml index 88bc61186..195ba715b 100644 --- a/imports/NeoChat/Menu/RoomListContextMenu.qml +++ b/imports/NeoChat/Menu/RoomListContextMenu.qml @@ -24,7 +24,7 @@ Loader { Menu { MenuItem { id: newWindow - text: i18n("Open in new window") + text: i18n("Open in New Window") onTriggered: RoomManager.openWindow(room); visible: !Kirigami.Settings.isMobile } @@ -49,7 +49,7 @@ Loader { } MenuItem { - text: i18nc("@action:inmenu", "Copy address to clipboard") + text: i18nc("@action:inmenu", "Copy Address to Clipboard") onTriggered: if (room.canonicalAlias.length === 0) { Clipboard.saveText(room.id) } else { @@ -57,8 +57,53 @@ Loader { } } + Menu { + title: i18n("Notification State") + + MenuItem { + text: i18n("Follow Global Setting") + checkable: true + autoExclusive: true + checked: room.pushNotificationState === PushNotificationState.Default + enabled: room.pushNotificationState != PushNotificationState.Unknown + onTriggered: { + room.pushNotificationState = PushNotificationState.Default + } + } + MenuItem { + text: i18nc("As in 'notify for all messages'","All") + checkable: true + autoExclusive: true + checked: room.pushNotificationState === PushNotificationState.All + enabled: room.pushNotificationState != PushNotificationState.Unknown + onTriggered: { + room.pushNotificationState = PushNotificationState.All + } + } + MenuItem { + text: i18nc("As in 'notify when the user is mentioned or the message contains a set keyword'","@Mentions and Keywords") + checkable: true + autoExclusive: true + checked: room.pushNotificationState === PushNotificationState.MentionKeyword + enabled: room.pushNotificationState != PushNotificationState.Unknown + onTriggered: { + room.pushNotificationState = PushNotificationState.MentionKeyword + } + } + MenuItem { + text: i18nc("As in 'do not notify for any messages'","Off") + checkable: true + autoExclusive: true + checked: room.pushNotificationState === PushNotificationState.Mute + enabled: room.pushNotificationState != PushNotificationState.Unknown + onTriggered: { + room.pushNotificationState = PushNotificationState.Mute + } + } + } + MenuItem { - text: i18n("Room settings") + text: i18n("Room Settings") onTriggered: ApplicationWindow.window.pageStack.pushDialogLayer('qrc:/imports/NeoChat/RoomSettings/Categories.qml', {room: room}) } diff --git a/imports/NeoChat/RoomSettings/PushNotification.qml b/imports/NeoChat/RoomSettings/PushNotification.qml index 0ad8bb52e..4e8a342f8 100644 --- a/imports/NeoChat/RoomSettings/PushNotification.qml +++ b/imports/NeoChat/RoomSettings/PushNotification.qml @@ -20,7 +20,7 @@ Kirigami.ScrollablePage { Layout.fillWidth: true QQC2.RadioButton { - text: i18n("Default") + text: i18n("Follow global setting") Kirigami.FormData.label: i18n("Room notifications setting:") checked: room.pushNotificationState === PushNotificationState.Default enabled: room.pushNotificationState != PushNotificationState.Unknown @@ -29,7 +29,7 @@ Kirigami.ScrollablePage { } } QQC2.RadioButton { - text: i18n("All messages") + text: i18nc("As in 'notify for all messages'","All") checked: room.pushNotificationState === PushNotificationState.All enabled: room.pushNotificationState != PushNotificationState.Unknown onToggled: { @@ -37,7 +37,7 @@ Kirigami.ScrollablePage { } } QQC2.RadioButton { - text: i18n("@mentions and keywords") + text: i18nc("As in 'notify when the user is mentioned or the message contains a set keyword'","@Mentions and Keywords") checked: room.pushNotificationState === PushNotificationState.MentionKeyword enabled: room.pushNotificationState != PushNotificationState.Unknown onToggled: { @@ -45,7 +45,7 @@ Kirigami.ScrollablePage { } } QQC2.RadioButton { - text: i18n("Off") + text: i18nc("As in 'do not notify for any messages'","Off") checked: room.pushNotificationState === PushNotificationState.Mute enabled: room.pushNotificationState != PushNotificationState.Unknown onToggled: {