diff --git a/api_docs/changelog.md b/api_docs/changelog.md index 65357a09d0..ce83d97b1a 100644 --- a/api_docs/changelog.md +++ b/api_docs/changelog.md @@ -25,8 +25,9 @@ format used by the Zulip server that they are interacting with. * [`PATCH /realm/user_settings_defaults`](/api/update-realm-user-settings-defaults), [`POST /register`](/api/register-queue), [`PATCH /settings`](/api/update-settings): Added `enable_followed_topic_email_notifications`, `enable_followed_topic_push_notifications` - and `enable_followed_topic_wildcard_mentions_notify` boolean fields to control email, push - and wildcard mention notifications, respectively, for messages sent to followed topics. + , `enable_followed_topic_wildcard_mentions_notify` and `enable_followed_topic_desktop_notifications` + boolean fields to control email, push, wildcard mention, and visual desktop notifications, respectively, + for messages sent to followed topics. **Feature level 188** diff --git a/zerver/models.py b/zerver/models.py index ec4374da19..4aa2e06eb5 100644 --- a/zerver/models.py +++ b/zerver/models.py @@ -1723,6 +1723,7 @@ class UserBaseSettings(models.Model): modern_notification_settings: Dict[str, Any] = dict( # Add new notification settings here. + enable_followed_topic_desktop_notifications=bool, enable_followed_topic_email_notifications=bool, enable_followed_topic_push_notifications=bool, enable_followed_topic_wildcard_mentions_notify=bool, diff --git a/zerver/openapi/zulip.yaml b/zerver/openapi/zulip.yaml index ed9cc61b49..90a175658b 100644 --- a/zerver/openapi/zulip.yaml +++ b/zerver/openapi/zulip.yaml @@ -9748,6 +9748,15 @@ paths: schema: type: boolean example: true + - name: enable_followed_topic_desktop_notifications + in: query + description: | + Enable visual desktop notifications for messages sent to followed topics. + + **Changes**: New in Zulip 8.0 (feature level 189). + schema: + type: boolean + example: true - name: enable_followed_topic_email_notifications in: query description: | @@ -11868,6 +11877,12 @@ paths: description: | Enable audible desktop notifications for private messages and @-mentions. + enable_followed_topic_desktop_notifications: + type: boolean + description: | + Enable visual desktop notifications for messages sent to followed topics. + + **Changes**: New in Zulip 8.0 (feature level 189). enable_followed_topic_email_notifications: type: boolean description: | @@ -13947,6 +13962,12 @@ paths: description: | Enable mobile notification for private messages and @-mentions received when the user is online. + enable_followed_topic_desktop_notifications: + type: boolean + description: | + Enable visual desktop notifications for messages sent to followed topics. + + **Changes**: New in Zulip 8.0 (feature level 189). enable_followed_topic_email_notifications: type: boolean description: | @@ -15099,6 +15120,15 @@ paths: schema: type: boolean example: true + - name: enable_followed_topic_desktop_notifications + in: query + description: | + Enable visual desktop notifications for messages sent to followed topics. + + **Changes**: New in Zulip 8.0 (feature level 189). + schema: + type: boolean + example: true - name: enable_followed_topic_email_notifications in: query description: | diff --git a/zerver/views/realm.py b/zerver/views/realm.py index 56ca235ea5..1c05fe54f7 100644 --- a/zerver/views/realm.py +++ b/zerver/views/realm.py @@ -426,6 +426,9 @@ def update_realm_user_settings_defaults( json_validator=check_bool, default=None ), wildcard_mentions_notify: Optional[bool] = REQ(json_validator=check_bool, default=None), + enable_followed_topic_desktop_notifications: Optional[bool] = REQ( + json_validator=check_bool, default=None + ), enable_followed_topic_email_notifications: Optional[bool] = REQ( json_validator=check_bool, default=None ), diff --git a/zerver/views/user_settings.py b/zerver/views/user_settings.py index bb7896495d..824ee5df8c 100644 --- a/zerver/views/user_settings.py +++ b/zerver/views/user_settings.py @@ -193,6 +193,9 @@ def json_change_settings( json_validator=check_bool, default=None ), wildcard_mentions_notify: Optional[bool] = REQ(json_validator=check_bool, default=None), + enable_followed_topic_desktop_notifications: Optional[bool] = REQ( + json_validator=check_bool, default=None + ), enable_followed_topic_email_notifications: Optional[bool] = REQ( json_validator=check_bool, default=None ),