Skip to content

Commit

Permalink
Move setting into DeveloperOptions.
Browse files Browse the repository at this point in the history
  • Loading branch information
pixlwave committed Feb 7, 2024
1 parent 299f9e0 commit 2374b91
Show file tree
Hide file tree
Showing 7 changed files with 15 additions and 34 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,6 @@
/* Used for testing */
"untranslated" = "Untranslated";

// MARK: - Notification Settings
"screen_notification_settings_hide_unread_badges" = "Sanity mode";
"screen_notification_settings_hide_unread_badges_description" = "Hide unread badges for rooms set to mute or mentions and keywords.";

// MARK: - Soft logout

"soft_logout_signin_title" = "Sign in";
Expand Down
4 changes: 0 additions & 4 deletions ElementX/Sources/Generated/Strings+Untranslated.swift
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@ import Foundation
// swiftlint:disable explicit_type_interface function_parameter_count identifier_name line_length
// swiftlint:disable nesting type_body_length type_name vertical_whitespace_opening_braces
public enum UntranslatedL10n {
/// Sanity mode
public static var screenNotificationSettingsHideUnreadBadges: String { return UntranslatedL10n.tr("Untranslated", "screen_notification_settings_hide_unread_badges") }
/// Hide unread badges for rooms set to mute or mentions and keywords.
public static var screenNotificationSettingsHideUnreadBadgesDescription: String { return UntranslatedL10n.tr("Untranslated", "screen_notification_settings_hide_unread_badges_description") }
/// Clear all data currently stored on this device?
/// Sign in again to access your account data and messages.
public static var softLogoutClearDataDialogContent: String { return UntranslatedL10n.tr("Untranslated", "soft_logout_clear_data_dialog_content") }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ protocol DeveloperOptionsProtocol: AnyObject {
var mentionsBadgeEnabled: Bool { get set }
var roomListFiltersEnabled: Bool { get set }
var markAsUnreadEnabled: Bool { get set }
var hideUnreadMessagesBadge: Bool { get set }

var elementCallBaseURL: URL { get set }
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@ struct DeveloperOptionsScreen: View {
Toggle(isOn: $context.markAsUnreadEnabled) {
Text("Mark as unread")
}

Toggle(isOn: $context.hideUnreadMessagesBadge) {
Text("Hide grey dots")
}
}

Section("Element Call") {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ struct NotificationSettingsScreenViewStateBindings {
var roomMentionsEnabled = false
var callsEnabled = false
var invitationsEnabled = false
var hideUnreadMessagesBadge = false
var alertInfo: AlertInfo<NotificationSettingsScreenErrorType>?
}

Expand Down Expand Up @@ -96,7 +95,6 @@ enum NotificationSettingsScreenViewAction {
case roomMentionChanged
case callsChanged
case invitationsChanged
case hideUnreadMessagesBadgeChanged
case close
case fixConfigurationMismatchTapped
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,14 @@ class NotificationSettingsScreenViewModel: NotificationSettingsScreenViewModelTy
self.userNotificationCenter = userNotificationCenter
self.notificationSettingsProxy = notificationSettingsProxy

let bindings = NotificationSettingsScreenViewStateBindings(enableNotifications: appSettings.enableNotifications,
hideUnreadMessagesBadge: appSettings.hideUnreadMessagesBadge)
let bindings = NotificationSettingsScreenViewStateBindings(enableNotifications: appSettings.enableNotifications)
super.init(initialViewState: NotificationSettingsScreenViewState(bindings: bindings, isModallyPresented: isModallyPresented))

// Listen for changes to AppSettings.
appSettings.$enableNotifications
.weakAssign(to: \.state.bindings.enableNotifications, on: self)
.store(in: &cancellables)

appSettings.$hideUnreadMessagesBadge
.weakAssign(to: \.state.bindings.hideUnreadMessagesBadge, on: self)
.store(in: &cancellables)

setupDidBecomeActiveSubscription()
setupNotificationSettingsSubscription()
}
Expand Down Expand Up @@ -82,8 +77,6 @@ class NotificationSettingsScreenViewModel: NotificationSettingsScreenViewModelTy
return
}
Task { await enableInvitations(state.bindings.invitationsEnabled) }
case .hideUnreadMessagesBadgeChanged:
appSettings.hideUnreadMessagesBadge = state.bindings.hideUnreadMessagesBadge
case .close:
actionsSubject.send(.close)
case .fixConfigurationMismatchTapped:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ struct NotificationSettingsScreen: View {
callsSection
}

additionalSettingsSection
if context.viewState.settings?.invitationsEnabled != nil {
additionalSettingsSection
}
}
}
}
Expand Down Expand Up @@ -161,21 +163,12 @@ struct NotificationSettingsScreen: View {

private var additionalSettingsSection: some View {
Section {
if context.viewState.settings?.invitationsEnabled != nil {
ListRow(label: .plain(title: L10n.screenNotificationSettingsInviteForMeLabel),
kind: .toggle($context.invitationsEnabled))
.disabled(context.viewState.settings?.invitationsEnabled == nil)
.allowsHitTesting(!context.viewState.applyingChange)
.onChange(of: context.invitationsEnabled) { _ in
context.send(viewAction: .invitationsChanged)
}
}

ListRow(label: .plain(title: UntranslatedL10n.screenNotificationSettingsHideUnreadBadges,
description: UntranslatedL10n.screenNotificationSettingsHideUnreadBadgesDescription),
kind: .toggle($context.hideUnreadMessagesBadge))
.onChange(of: context.hideUnreadMessagesBadge) { _ in
context.send(viewAction: .hideUnreadMessagesBadgeChanged)
ListRow(label: .plain(title: L10n.screenNotificationSettingsInviteForMeLabel),
kind: .toggle($context.invitationsEnabled))
.disabled(context.viewState.settings?.invitationsEnabled == nil)
.allowsHitTesting(!context.viewState.applyingChange)
.onChange(of: context.invitationsEnabled) { _ in
context.send(viewAction: .invitationsChanged)
}
} header: {
Text(L10n.screenNotificationSettingsAdditionalSettingsSectionTitle)
Expand Down

0 comments on commit 2374b91

Please sign in to comment.