Closed r10s closed 3 days ago
UI-wise, no new options are needed. as a minimum, make “Settings / Notifications / On/Off” a per-profile switch.
it is not that easy, we have the notifications permission that user may not grant and we would still need to display the state of the global app notifications EDIT: maybe show disabled for all even if enabled, when permission is not granted and and on enabling request permission or go to system settings to change the permission, I guess
not sure this aligns with "maintenance" but well :)
afaik, the "Settings / Notifications / On/Off" switch was never meant to reflect the system setting, let alone that it can change it.
if the user has disabled notification permission in the system, the whole settings dialog is not reachable but a warning is shown instead. this is fine and can stay as is. "Settings / Notifications / On/Off" anyways cannot be altered or viewed.
so, my idea is really only to only replace Prefs.isNotificationsEnabled()
by eg. dcContext.getConfig("notifications_enabled")
and let the setting-switch change that setting.
then first we need a core issue for this
similar to desktop, it makes sense also on android to disable notifications for some accounts. we got real-world user request for that several times; and in the team this was also considered useful :)
UI-wise, no new options are needed. as a minimum, make “Settings / Notifications / On/Off” a per-profile switch.
optionally on first iteration, the state can be shown in the “profile switcher” as well (similar to desktop). however, if we do so, we should also offer a way to change the setting directly there, eg. on long tap (for a permanent button cluttering UI, the option is usually not changed frequently enough)
as this is only a minor change, this should align well with the "maintenance" approach. the issue has low priority, however.
sidenotes:
we should regard this option similar to “Mute Chat”
similar to other “Mute chat” settings, “Mute profile” can be synced across devices in the future (if one really wants to have one device silent and the other not, it is better to mute on device level) to prepare this future, it makes sense to introduce a core-config-setting (that then should be used by desktop/iOS as well)
this issue is not about disable syncing; also for disabled notifications we should update in background
for other notification settings (sounds, vibrate, led. etc): in the first iteration, that can be unchanged and stay a global setting. it would be nice to have that as per-profile settings as well (esp. as we even have per-chat sounds etc.), however, it should not be synced across devices (but can be stored in ui.*-config so that it goes to the backup)
this is also in-line with most other settings that are only exceptionally considered global - at some point we can also double check if more settings can become per-profile and go to ui.*-config
when this is done, we should file issues for iOS and desktop (to use the core-config then)