settings: Add web_left_sidebar_unreads_count_summary setting.

Co-authored-by: Akarsh Jain <akarsh.jain.790@gmail.com>

Fixes part of #28759.
This commit is contained in:
opmkumar
2025-06-18 23:47:55 +05:30
committed by Tim Abbott
parent cf658155e7
commit 87d14086af
7 changed files with 69 additions and 1 deletions

View File

@@ -20,6 +20,13 @@ format used by the Zulip server that they are interacting with.
## Changes in Zulip 11.0 ## Changes in Zulip 11.0
**Feature level 398**
* [`POST /register`](/api/register-queue), [`PATCH /settings`](/api/update-settings),
[`PATCH /realm/user_settings_defaults`](/api/update-realm-user-settings-defaults):
Added new `web_left_sidebar_unreads_count_summary` display setting,
controlling whether summary unread counts are displayed in the left sidebar.
**Feature level 397** **Feature level 397**
* [`POST /users/me/subscriptions`](/api/subscribe): Added parameter * [`POST /users/me/subscriptions`](/api/subscribe): Added parameter

View File

@@ -34,7 +34,7 @@ DESKTOP_WARNING_VERSION = "5.9.3"
# new level means in api_docs/changelog.md, as well as "**Changes**" # new level means in api_docs/changelog.md, as well as "**Changes**"
# entries in the endpoint's documentation in `zulip.yaml`. # entries in the endpoint's documentation in `zulip.yaml`.
API_FEATURE_LEVEL = 397 API_FEATURE_LEVEL = 398
# Bump the minor PROVISION_VERSION to indicate that folks should provision # Bump the minor PROVISION_VERSION to indicate that folks should provision
# only when going from an old version of the code to a newer version. Bump # only when going from an old version of the code to a newer version. Bump

View File

@@ -0,0 +1,22 @@
# Generated by Django 5.1.8 on 2025-05-20 06:47
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("zerver", "0724_alter_stream_can_move_messages_out_of_channel_group"),
]
operations = [
migrations.AddField(
model_name="realmuserdefault",
name="web_left_sidebar_unreads_count_summary",
field=models.BooleanField(db_default=True, default=True),
),
migrations.AddField(
model_name="userprofile",
name="web_left_sidebar_unreads_count_summary",
field=models.BooleanField(db_default=True, default=True),
),
]

View File

@@ -183,6 +183,8 @@ class UserBaseSettings(models.Model):
default=WEB_STREAM_UNREADS_COUNT_DISPLAY_POLICY_UNMUTED_STREAMS default=WEB_STREAM_UNREADS_COUNT_DISPLAY_POLICY_UNMUTED_STREAMS
) )
web_left_sidebar_unreads_count_summary = models.BooleanField(default=True, db_default=True)
# Setting to control whether to automatically go to the # Setting to control whether to automatically go to the
# conversation where message was sent. # conversation where message was sent.
web_navigate_to_sent_message = models.BooleanField(default=True) web_navigate_to_sent_message = models.BooleanField(default=True)
@@ -379,6 +381,7 @@ class UserBaseSettings(models.Model):
web_suggest_update_timezone=bool, web_suggest_update_timezone=bool,
hide_ai_features=bool, hide_ai_features=bool,
resolved_topic_notice_auto_read_policy=ResolvedTopicNoticeAutoReadPolicyEnum, resolved_topic_notice_auto_read_policy=ResolvedTopicNoticeAutoReadPolicyEnum,
web_left_sidebar_unreads_count_summary=bool,
) )
modern_notification_settings = dict( modern_notification_settings = dict(

View File

@@ -13348,6 +13348,14 @@ paths:
be hidden in all Zulip clients. be hidden in all Zulip clients.
**Changes**: New in Zulip 10.0 (feature level 350). **Changes**: New in Zulip 10.0 (feature level 350).
web_left_sidebar_unreads_count_summary:
description: |
Determines whether the web/desktop application's left sidebar displays
the unread message count summary.
**Changes**: New in Zulip 11.0 (feature level 398).
type: boolean
example: true
enable_stream_desktop_notifications: enable_stream_desktop_notifications:
description: | description: |
Enable visual desktop notifications for channel messages. Enable visual desktop notifications for channel messages.
@@ -13674,6 +13682,8 @@ paths:
contentType: application/json contentType: application/json
hide_ai_features: hide_ai_features:
contentType: application/json contentType: application/json
web_left_sidebar_unreads_count_summary:
contentType: application/json
enable_stream_desktop_notifications: enable_stream_desktop_notifications:
contentType: application/json contentType: application/json
enable_stream_email_notifications: enable_stream_email_notifications:
@@ -16790,6 +16800,13 @@ paths:
be hidden in all Zulip clients. be hidden in all Zulip clients.
**Changes**: New in Zulip 10.0 (feature level 350). **Changes**: New in Zulip 10.0 (feature level 350).
web_left_sidebar_unreads_count_summary:
type: boolean
description: |
Determines whether the web/desktop application's left sidebar displays
the unread message count summary.
**Changes**: New in Zulip 11.0 (feature level 398).
timezone: timezone:
type: string type: string
description: | description: |
@@ -19586,6 +19603,13 @@ paths:
be hidden in all Zulip clients. be hidden in all Zulip clients.
**Changes**: New in Zulip 10.0 (feature level 350). **Changes**: New in Zulip 10.0 (feature level 350).
web_left_sidebar_unreads_count_summary:
type: boolean
description: |
Determines whether the web/desktop application's left sidebar displays
the unread message count summary.
**Changes**: New in Zulip 11.0 (feature level 398).
enable_stream_desktop_notifications: enable_stream_desktop_notifications:
type: boolean type: boolean
description: | description: |
@@ -20848,6 +20872,14 @@ paths:
be hidden in all Zulip clients. be hidden in all Zulip clients.
**Changes**: New in Zulip 10.0 (feature level 350). **Changes**: New in Zulip 10.0 (feature level 350).
web_left_sidebar_unreads_count_summary:
description: |
Determines whether the web/desktop application's left sidebar displays
the unread message count summary.
**Changes**: New in Zulip 11.0 (feature level 398).
type: boolean
example: true
timezone: timezone:
description: | description: |
The IANA identifier of the user's [profile time zone](/help/change-your-timezone), The IANA identifier of the user's [profile time zone](/help/change-your-timezone),
@@ -21261,6 +21293,8 @@ paths:
contentType: application/json contentType: application/json
hide_ai_features: hide_ai_features:
contentType: application/json contentType: application/json
web_left_sidebar_unreads_count_summary:
contentType: application/json
enable_stream_desktop_notifications: enable_stream_desktop_notifications:
contentType: application/json contentType: application/json
enable_stream_email_notifications: enable_stream_email_notifications:

View File

@@ -710,6 +710,7 @@ def update_realm_user_settings_defaults(
| None = None, | None = None,
web_navigate_to_sent_message: Json[bool] | None = None, web_navigate_to_sent_message: Json[bool] | None = None,
web_suggest_update_timezone: Json[bool] | None = None, web_suggest_update_timezone: Json[bool] | None = None,
web_left_sidebar_unreads_count_summary: Json[bool] | None = None,
hide_ai_features: Json[bool] | None = None, hide_ai_features: Json[bool] | None = None,
resolved_topic_notice_auto_read_policy: Annotated[ resolved_topic_notice_auto_read_policy: Annotated[
str | None, str | None,

View File

@@ -313,6 +313,7 @@ def json_change_settings(
| None = None, | None = None,
web_navigate_to_sent_message: Json[bool] | None = None, web_navigate_to_sent_message: Json[bool] | None = None,
web_suggest_update_timezone: Json[bool] | None = None, web_suggest_update_timezone: Json[bool] | None = None,
web_left_sidebar_unreads_count_summary: Json[bool] | None = None,
hide_ai_features: Json[bool] | None = None, hide_ai_features: Json[bool] | None = None,
resolved_topic_notice_auto_read_policy: Annotated[ resolved_topic_notice_auto_read_policy: Annotated[
str | None, str | None,