matrix-org / matrix-org/matrix-rust-sdk
Room Info: include also the current global/default notification mode
- Dominant language
- Rust
- Stars
- 2.3k
- Forks
- 500
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 106
Description
# Proposal
So far the room info includes only the user defined notification mode, however it would be nice to also include a separate variable called `default_notification_mode` or something like that.
The thing is that we rely on the user defined one on Element X only to determine what settings badge should be displayed (for example we only rely on the user defined value to show the mute icon in the room list), however the green/grey dot state should instead depend on the current set notification mode, which should be the user defined if it exists, or the default one if a user one does not exist.
# Alternatives
Another solution could be to have some kind of notification state variable that tells us through an enum:
- if there is a notification with a mention
- new notifications with no mention
- new message but no notifications
And this variable evolves accordingly to the state of the current set notification mode for the room, be it user defined or not. However this could become very client specific so we could probably handle everything client side if we just have the `default_notification_mode`
Contributor guide
Research direction
Trace the room-info representation and the existing user-defined notification mode handling. Determine where the effective mode should be exposed alongside the user-defined value, then verify the behavior for rooms with and without a user override. Done means room info provides the default or effective notification information needed by clients without changing the existing user-defined setting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- api
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100