Commit Graph

1583 Commits

Author SHA1 Message Date
Sahil Batra
6bb3e6fb38 settings_checkbox: Rename tooltip_text variable. 2025-01-24 14:51:51 -08:00
Sahil Batra
4ae45763b4 settings: Use a common object for all group setting labels. 2025-01-24 14:51:51 -08:00
Pratik Chanda
f744625e4c tooltip: Add counts in tooltip for views in left sidebar.
Earlier, tooltip in left sidebar views had only the navigation list
title shown inside it.

This commit adds more information to the tooltip by including their
respective counts.

Fixes: zulip#25901.

Co-authored-by: ecxtacy <dc.dhruvchouhan@gmail.com>
2025-01-24 14:16:16 -08:00
Pratik Chanda
6c03d839f7 left_sidebar: Refactor tooltip logic for left sidebar navigation list.
Earlier, left sidebar navigation had two separate tooltip logic to
handle the same tooltip template.

This commit refactors it to use a single tooltip logic for the left
sidebar navigation.
2025-01-24 14:16:16 -08:00
Alya Abbott
6fdbea5ee8 settings: Clarify option label for who can subscribe others to channels.
Also add help link.
2025-01-23 16:02:26 -08:00
Shubham Padia
2fdb4fe53c stream: Add conditional note to can_add_subscribers_group.
Fixes #33156.
If the stream is set to on the private settings for privacy, we add a
parenthesis text `must be subscribed`.
We had to use JS to change the string since just having a conditional in
the handlebars template would not ensure that the parenthesis text
appears or disappears on changing the value.
2025-01-23 15:57:16 -08:00
Shubham Padia
82c04ebe9e stream_types: Add admin permissions note below advanced configurations.
We've also removed the label_parens_text of `in addition to organization
administrators` wherever applicable.
2025-01-23 15:57:16 -08:00
Prakhar Pratyush
033c706a03 search: Add support for empty string topic.
This commit adds support to display `realm_empty_topic_display_name`
value (in italics) in the search suggestions & search input pills
for topics having the actual value of empty string.
2025-01-22 16:09:46 -08:00
Prakhar Pratyush
3706940df6 compose_closed_ui: Unify translation strings for reply button label.
This commit unifies translation strings for reply button label
to reduce translation effort.

Both the `has_empty_string_topic` and other cases now use a single
"Message <z-recipient-label></z-recipient-label>"`, with dynamic
content passed appropriately.
2025-01-22 15:55:23 -08:00
Shubham Padia
a76042ce39 invite: Any combination of default streams should be subscribe-able.
Fixes #32706.

A user with permission to invite users should be able to subscribe users
to any of the default streams whether they have the permission to do so
or not for each of those default streams or not. This should only happen
in the invite code path, and not the subscribe code path.

This commit also adds the ability to pick and chose default streams if
you do not have the permission to subscribe to any other channels.

Before this, if you did not have the permission to subscribe any other
channels, only the checkbox to subscribe to all the default streams at
once was available to you.

For the stream pill typeahead, we don't show streams that the user
cannot subscribe other users to. For more details, see

   https://chat.zulip.org/#narrow/channel/101-design/topic/can.20subscribe.20other.20users.20permission.20invite
2025-01-22 14:27:06 -08:00
Shubham Padia
a8dd4d8fb9 streams: Add the ability to modify can_add_subcribers_group.
We are just adding the ability to change the value of this setting in
this commit. It is not used for all possible permission checks on the
frontend yet. That will be done in future commits.
2025-01-22 14:27:06 -08:00
Shubham Padia
34ade0d9a2 realm: Add ability to set can_add_subscribers_group in frontend.
The setting is not used anywhere yet either on the frontend or the
backend, we are just adding the ability to change the value of the realm
setting. We have also removed the ability to set
`invite_to_stream_policy` in this commit while it continues being used
to check permissions.
We have changed the label of the setting from `Who can add users to
channels` to `Who can subcribe users to channels` and label_parens_text
as `in addition to organization administrators` as discussed in
https://chat.zulip.org/#narrow/channel/101-design/topic/Can.20subscribe.20other.20users.20on.20user.20profile/near/2039825
2025-01-22 12:33:58 -08:00
Prakhar Pratyush
5bb53ec091 compose_banner: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the compose banners for topics having the actual value
of empty string.

Fixes part of #32996.
2025-01-21 13:22:08 -08:00
Saubhagya Patel
04fa3655ec settings: Replace the Theme select dropdown with the Theme switcher.
This commit includes the following changes:
 - Replace the theme select dropdown in the Preferences
   section of the Personal settings with the theme switcher,
   similar to the one in the personal menu popover.
 - The theme select dropdown in the Default User Settings
   section of the Organization settings also follows the same
   changes.

Fixes: #32111.
2025-01-21 12:01:12 -08:00
Karl Stolley
d14c3b7aac left_sidebar: Present uniform, gridded filter boxes. 2025-01-21 08:56:49 -08:00
Karl Stolley
8feaa5e6e8 compose: Initialize scrolling buttons only when needed. 2025-01-14 15:52:02 -08:00
Karl Stolley
0d0aaa8586 compose: Introduce scrolling buttons in gridded layout. 2025-01-14 15:52:02 -08:00
Karl Stolley
cf29edaa65 compose: Flatten a popover-free formatting bar. 2025-01-14 15:52:02 -08:00
Prakhar Pratyush
fb91cd6f4d message_edit: Disallow resolving empty string topic.
This commit makes changes to the edit message endpoint
to disallow resolving empty string topic.

It also removes the resolve topic button in the web client
from topic popover and message header for empty string topic.
2025-01-14 14:22:21 -08:00
Prakhar Pratyush
a6ac4ed6bf topic_list_typeahead: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the 'compose textarea topic list typeahead' (which we show
while using '#**stream_name >' syntax) for topics having the actual
value of empty string.
2025-01-14 13:53:10 -08:00
Prakhar Pratyush
79da2e38c5 confirm_merge_topics: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the confirm_merge_topics_with_rename modal for topics having
the actual value of empty string.
2025-01-14 13:52:54 -08:00
Prakhar Pratyush
083861fed9 move_topic_modal: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the 'move topic modal' heading for topics having the actual
value of empty string.

Also, in the new_topic_name input box we show a placeholder of
`realm_empty_topic_display_name` value when the actual topic value
is empty string.
2025-01-14 13:52:54 -08:00
Sayam Samal
6dabfa02cb banners: Add new redesigned banner component.
This commit adds the redesigned banner component to the codebase along
with a storybook-style page in /devtools/banners to view and test the
redesigned banner component.

Any banner using the new redesigned styles, requires two classes,
- First, the base `banner` class which defines the structure and
    behavior of the banner.
- Second, a modifier class like `banner-info` which defines the styles
    for the particular banner type.

The navbar alert banners also have a custom class `navbar-alert-banner`
which is used to define the specific style and structure for these
banner types.

This commit also makes the `banner`, `action-button` and `icon-button`
components into handlebar templates to maintain consistency in their
usage in the codebase.
2025-01-13 17:46:13 -08:00
Maneesh Shukla
16188400f7 password: Add password limit inidcator to form.
Fixes: #27922.
2025-01-13 11:53:40 -08:00
Sahil Batra
638670dc94 user-groups: Use get_display_group_name consistently.
We use user_groups.get_display_group_name consistently in
all the places where group name is showed, even when we
know that the UI won't display system groups to maintain
consistency.
2025-01-13 09:33:52 -08:00
Sayam Samal
7e57477dea stream_color: Add keyboard navigation for color picker swatch grid.
This commit adds a `handle_keyboard` method to the color picker popover
to enable the use of all the arrow keys along with their vim-key
counterparts for multi-directional keyboard navigation in the color
swatch grid.
2025-01-12 12:39:02 -08:00
Sayam Samal
6c774c0674 stream_color: Fix keyboard input for custom color picker popover option.
This commit fixes the keyboard input for the custom color picker option
in the color picker popover, due to which previously a user wasn't able
to open the browser native color picker via the keyboard.
2025-01-12 12:39:02 -08:00
Sayam Samal
0a0a030fca stream_color: Add confirm button to the color picker popover.
This commit adds a confirm button to the top right corner od the color
picker popover to provide a more intuitive way to exit the popover
after fiddling around with the stream color.
2025-01-12 12:39:02 -08:00
Sayam Samal
8924161696 stream_color: Update custom color swatch icon to use rainbow gradient. 2025-01-12 12:39:02 -08:00
Sahil Batra
3e525c097f user-groups: Support renaming deactivated groups from webapp UI.
We now allow renaming deactivated groups when user tries to create
a group with the same name as an existing deactivated group.

This commit also adds code to live-update the duplicate name error
on receiving group rename event.

Fixes #32876.
2025-01-12 12:32:32 -08:00
Prakhar Pratyush
97e8ed5850 user_topic_settings: Show realm_empty_topic_display_name for topic="".
Some checks failed
Code scanning / CodeQL (push) Has been cancelled
Zulip production suite / Ubuntu 22.04 production build (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:bookworm, true, false, Debian 12 (Python 3.11, backend + documentation), bookworm) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:jammy, false, true, Ubuntu 22.04 (Python 3.10, backend + frontend), jammy) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:noble, false, false, Ubuntu 24.04 (Python 3.12, backend), noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble, , Ubuntu 24.04 production install, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-7.0, 7.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-8.0, 8.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy-6.0, 6.0 Version Upgrade, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-9.0, 9.0 Version Upgrade, noble) (push) Has been cancelled
This commit adds support to display `realm_empty_topic_display_name`
value in the SETTINGS/TOPICS table for topics having the actual
value of empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
9402b59a29 unstar_topic_messages: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the confirm dialog for unstar all messages in topic,
for topics having the actual value of empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
d45a52c11d scheduled_messages: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the scheduled messages overlay UI for topics having the
actual value of empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
e3ce4c5766 drafts_table: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the drafts table for topics having the actual value of
empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
3f1e53f3fb delete_topic_modal: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the delete topic modal for topics having the actual value
of empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
569bf31027 topic_actions_popover: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the topic actions popover for topics having the actual value
of empty string.

These topic actions popover can be accessed via kebab menu in:
* Left sidebar topic list
* Topic rows in inbox view
* Message headers
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
8483b7bbcd recent_view_row: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the recent conversations view for topics having the actual
value of empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
91899e627e inbox_row: Show realm_empty_topic_display_name for empty topic name.
This commit adds support to display `realm_empty_topic_display_name`
value in the Inbox UI for topics having the actual value of
empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
ba52ed1c88 message_header: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the message header for topics having the actual value of
empty string.
2025-01-10 14:32:55 -08:00
Prakhar Pratyush
e9553daee4 topic-list-item: Show realm_empty_topic_display_name for topic="".
This commit adds support to display `realm_empty_topic_display_name`
value in the left sidebar for topics having the actual value of
empty string.
2025-01-10 14:32:55 -08:00
Karl Stolley
9da535b141 unread_count: Set normal counters on home-view rows. 2025-01-10 13:06:51 -08:00
Karl Stolley
e4f3cf9a0e unread_count: Set normal counters on stream, topic rows. 2025-01-10 13:06:51 -08:00
Karl Stolley
de355ccef2 unread_count: Set quiet counters on channels headings. 2025-01-10 13:06:51 -08:00
Vishesh Singh
b0aff47f52 left_sidebar: Show empty circle and bot icon for the bots.
In DMs, show a gray circle before the bot's name and a bot icon after.

fixes part of #28561.
2025-01-09 12:28:16 -08:00
Vishesh Singh
076774111f stream_settings: Display bot icon after bot name.
Render bot icon for bot users.

fixes part of #28561.
2025-01-09 11:58:20 -08:00
Vishesh Singh
37e0dff013 compose_pill: Show bot icon after bot name.
Show the bot icon after the name on compose pill if it
is a bot.
Align the bot to the center.

fixes part of #28561.
2025-01-09 11:58:20 -08:00
Harsh Bansal
b7599a41d8 left sidebar (ui): Change icon for browse channels.
- Replaces the magnifying glass icon with a new design that
  aligns better with the purpose of finding channels.
- Matches the "Browse Channels" link styling with the link at
  the bottom of the left sidebar for consistency

Fixes: #32914

Co-Authored-By: Vlad Korobov <terpimost@gmail.com>
2025-01-08 09:23:11 -08:00
Vector73
35c1cc4eae settings: Add checkbox for "realm_invite_required" permission.
Some checks failed
Code scanning / CodeQL (push) Has been cancelled
Zulip production suite / Ubuntu 22.04 production build (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:bookworm, true, false, Debian 12 (Python 3.11, backend + documentation), bookworm) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:jammy, false, true, Ubuntu 22.04 (Python 3.10, backend + frontend), jammy) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:noble, false, false, Ubuntu 24.04 (Python 3.12, backend), noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble, , Ubuntu 24.04 production install, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-7.0, 7.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-8.0, 8.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy-6.0, 6.0 Version Upgrade, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-9.0, 9.0 Version Upgrade, noble) (push) Has been cancelled
This checkbox was accidentally removed in #32371.
2025-01-08 10:19:05 -05:00
Sayam Samal
6557cd74cd stream_color: Replace spectrum color picker with native color picker.
This commit replaces the spectrum color picker used in the stream
popover and stream settings with a custom color picker popover, which
contains a grid of predefined color swatches and a custom color option.

The custom color option uses the HTML5 <input type="color"> which shows
the native browser color picker UI.

Fixes #14961.
2025-01-07 17:27:23 -08:00
Harsh
046f4687d0 right_sidebar: Use common 'clear_search_button' for zulip-icon-close. 2025-01-07 17:22:47 -08:00