From 3a964bae20c73e586a8661298a1b63f5d50d1824 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Thu, 19 Feb 2026 17:29:17 -0500 Subject: [PATCH] Move more security and safety-relevant options to a better suited page This includes the "show link previews", and "enable typing notifications" options. I also re-arranged the Security & Safety page into more sensible groups, and in preparation for more invite options. --- src/settings/AppearanceSettingsPage.qml | 16 ------- src/settings/NeoChatGeneralPage.qml | 14 ------ src/settings/NeoChatSecurityPage.qml | 59 +++++++++++++++++++------ 3 files changed, 45 insertions(+), 44 deletions(-) diff --git a/src/settings/AppearanceSettingsPage.qml b/src/settings/AppearanceSettingsPage.qml index 0cb33861e..76c553bef 100644 --- a/src/settings/AppearanceSettingsPage.qml +++ b/src/settings/AppearanceSettingsPage.qml @@ -333,22 +333,6 @@ FormCard.FormCardPage { NeoChatConfig.save(); } } - - FormCard.FormDelegateSeparator { - above: showLocalMessagesOnRightDelegate - below: showLinkPreviewDelegate - } - - FormCard.FormCheckDelegate { - id: showLinkPreviewDelegate - text: i18nc("@label:checkbox", "Show link previews") - description: i18nc("@info:label", "You can customize this per-room under room settings. If unchecked, disables link previews in every room.") - checked: NeoChatConfig.showLinkPreview - onToggled: { - NeoChatConfig.showLinkPreview = checked; - NeoChatConfig.save(); - } - } } FormCard.FormHeader { diff --git a/src/settings/NeoChatGeneralPage.qml b/src/settings/NeoChatGeneralPage.qml index 39d886bdb..600e81afc 100644 --- a/src/settings/NeoChatGeneralPage.qml +++ b/src/settings/NeoChatGeneralPage.qml @@ -274,20 +274,6 @@ FormCard.FormCardPage { NeoChatConfig.save(); } } - FormCard.FormDelegateSeparator { - above: quickEditCheckbox - below: typingNotificationsDelegate - } - FormCard.FormCheckDelegate { - id: typingNotificationsDelegate - text: i18n("Send typing notifications") - checked: NeoChatConfig.typingNotifications - enabled: !NeoChatConfig.isTypingNotificationsImmutable - onToggled: { - NeoChatConfig.typingNotifications = checked; - NeoChatConfig.save(); - } - } } FormCard.FormHeader { title: i18n("Developer Settings") diff --git a/src/settings/NeoChatSecurityPage.qml b/src/settings/NeoChatSecurityPage.qml index bdabc3e71..1e87a12f6 100644 --- a/src/settings/NeoChatSecurityPage.qml +++ b/src/settings/NeoChatSecurityPage.qml @@ -37,8 +37,38 @@ FormCard.FormCardPage { title: i18nc("@title:window", "Ignored Users") }); } + } + + FormCard.FormHeader { + title: i18nc("@title:group", "Messages") + } + FormCard.FormCard { + FormCard.FormCheckDelegate { + id: showLinkPreviewDelegate + text: i18nc("@label:checkbox", "Show link previews") + description: i18nc("@info:label", "You can customize this per-room under room settings. If unchecked, disables link previews in every room.") + checked: NeoChatConfig.showLinkPreview + onToggled: { + NeoChatConfig.showLinkPreview = checked; + NeoChatConfig.save(); + } + } FormCard.FormDelegateSeparator { - above: ignoredUsersDelegate + above: showLinkPreviewDelegate + below: typingNotificationsDelegate + } + FormCard.FormCheckDelegate { + id: typingNotificationsDelegate + text: i18nc("@label:checkbox", "Send typing notifications") + checked: NeoChatConfig.typingNotifications + enabled: !NeoChatConfig.isTypingNotificationsImmutable + onToggled: { + NeoChatConfig.typingNotifications = checked; + NeoChatConfig.save(); + } + } + FormCard.FormDelegateSeparator { + above: typingNotificationsDelegate below: hideImagesDelegate } FormCard.FormCheckDelegate { @@ -52,10 +82,11 @@ FormCard.FormCardPage { NeoChatConfig.save(); } } - FormCard.FormDelegateSeparator { - above: hideImagesDelegate - below: rejectInvitationsDelegate - } + } + FormCard.FormHeader { + title: i18nc("@title:group", "Invites") + } + FormCard.FormCard { FormCard.FormCheckDelegate { id: rejectInvitationsDelegate text: i18nc("@option:check", "Reject invitations from unknown users") @@ -67,10 +98,11 @@ FormCard.FormCardPage { NeoChatConfig.save(); } } - FormCard.FormDelegateSeparator { - above: rejectInvitationsDelegate - below: preferEncryptionDelegate - } + } + FormCard.FormHeader { + title: i18nc("@title:group", "Encryption") + } + FormCard.FormCard { FormCard.FormCheckDelegate { id: preferEncryptionDelegate text: i18nc("@option:check", "Turn on encryption in new chats") @@ -82,11 +114,10 @@ FormCard.FormCardPage { NeoChatConfig.save(); } } - } - FormCard.FormHeader { - title: i18nc("@title:group", "Encryption") - } - FormCard.FormCard { + FormCard.FormDelegateSeparator { + above: preferEncryptionDelegate + below: secretBackupDelegate + } FormCard.FormButtonDelegate { id: secretBackupDelegate text: i18nc("@action:inmenu", "Manage Key Storage")