Commit Graph

199 Commits

Author SHA1 Message Date
Maneesh Shukla
ec60c8a70c x-buttons: Replace "Remove" and "Unsubscribe" buttons with x icons in tables.
This commit removes the "Remove" and "Unsubscribe" action buttons from
various tables and replaces them with icon buttons using the "close"
icon.

Additionally, previously the rows with and without a remove button had
different heights. This commit updates the fixed `px` values to `em`
units to ensure equal height for all rows, regardless of whether a
remove-subscription button is present.

Fixes: #34874.
2025-07-03 14:37:00 -07:00
Sayam Samal
0fe4b6b317 settings: Scale margin of input groups with font size.
This commit adjusts the margin of input groups in settings pages to
relative `em` units to ensure that the spacing scales to accommodate
different font sizes.
2025-07-03 12:00:33 -07:00
evykassirer
236e595438 settings: Use grid and flex for the two-pane settings overlay.
Instead of changing the height of the button subheader depending
on the width of the modal, which was fiddly and error prone, we now
let grid determine the height of the button subheader, and determine
the height of the body through javascript resize calculations.
2025-07-03 11:22:31 -07:00
Sahil Batra
e66431f128 group-settings: Fix how long names are handled in groups UI.
This commit fixes code to correctly show the long group
names by clipping them and showing ellipsis in group rows
in left panel and in the header shown in right section.

Group names are handled in a different way than stream
names because we need to show deactivated icons as well
for stream names.
2025-07-03 11:22:31 -07:00
Maneesh Shukla
992d8374b2 tooltip: Fix the placement of tooltip in group list.
When there is only one user group, the tooltip appears on the upper side
of the "group-row" and gets hidden.

This commit sets `overflow: visible` which is default value, causing the
tooltip position to invert when there is only one user group.
2025-07-01 14:16:31 -07:00
Maneesh Shukla
8ef51e1b6f tooltips: Fix incorrect tooltip on the spinner.
The "sub_unsub_status" spinner was inside the div with the "check" class
, causing the tooltip to appear over the spinner, which should only be
visible on the check icon.

This commit moves the "sub_unsub_status" spinner div outside, ensuring
the tooltip is now visible only when hovering over the check icon.
2025-07-01 14:16:31 -07:00
Evy Kassirer
ec65dad063 stream_pill: Fetch all subscribers before getting user ids for a stream.
Work towards #34244.
2025-06-23 17:04:47 -07:00
Sahil Batra
32287a084b channel-folders: Add UI to create new channel folder.
This commit adds a button besides the folder dropdowin in
stream settings UI which can be used to create a new folder.
2025-06-10 11:51:58 -07:00
Sahil Batra
7c01e61e5a streams: Add UI to add or remove stream from a folder.
This commit adds UI to add a stream to a folder while
creating them and also for adding/removing an existing
stream from a folder.
2025-06-10 11:51:58 -07:00
Sahil Batra
647eab4f58 subscriptions: Remove unnecessary ".stream-creation-body" selector.
We do not need ".stream-creation-body" selector for this block
of CSS properties, since we apply these CSS properties to all
the required elements using ".stream-permissions" and
".advanced-configurations-container" selectors.
2025-06-10 11:51:58 -07:00
Sahil Batra
9498213455 subscriptions: Remove unnecessary CSS.
We do not have any dropdown widget buttons in right panel
of groups and streams UI, neither in creation form nor in
stream and group settings UI.
2025-06-10 11:51:58 -07:00
Sahil Batra
72e2605b98 stream-settings: Fix duplicate IDs.
"stream-advanced-configurations" was being used as ID for
advanced configurations section in both stream edit and
creation UI, which is not correct as ID should be unique.

This commit fixes it by removing the ID and instead using
class in selectors. Also, there was some unused CSS, as
we do not have dropdown widget buttons in advanced
configurations section, written using the duplicate ID so
removed that as well.
2025-05-20 10:40:19 -07:00
Sahil Batra
bc89d96893 stream-settings: Fix duplicate IDs.
This commit fixes the use of "stream_permission_settings"
as ID for "Channel permissions" subsection in both
stream edit and creation UI, which was not correct since
ID should be unique.

To fix this ID was removed from the element and following
changes are done -
- $("#stream_settings") element is now used as a container
for live update functions for stream edit UI.
- "stream-permissions" class is used to access the element
instead of ID.
- Advanced configurations container also had "stream-permissions"
class before, and that was removed in this commit so that
"Channel permissions" container can be identified uniquely
and thus some CSS changes were needed.
- Also, fixed "update_stream_privacy_choices" function to
not use ":visible" in selectors.
2025-05-20 10:40:19 -07:00
Sahil Batra
7833ea0bb5 user_group_edit: Fix typo in class name.
"hide-deactivated-user-groups" was incorrectly written in
"hide-deactived-user-groups".
2025-05-20 10:37:59 -07:00
whilstsomebody
2780360b00 unarchive: Add support for unarchiving archived channels.
This commit adds support for unarchiving archived channels
by introducing the `is_archived` parameter to the
`PATCH /streams/{stream_id}` API endpoint. Sending a PATCH
request with `is_archived: false` will unarchive the specified
channel.
2025-05-16 11:39:40 -07:00
Evy Kassirer
44b87c72dc stream_edit: Fetch subscribers before showing subscriber tab.
Work towards #34244.

Now that we're supporting partial subscriber data, we might need
to fetch the full list of subscribers when opening the subscribers
tab of the edit channel modal.

This commit handles a slow load with a loading spinner while we fetch
the data, and also makes sure to ignore the data if it's received after
it stops being relevant (in case the user has another stream's data open).
2025-05-14 15:00:45 -07:00
Sahil Batra
abdad3d485 settings-ui: Align tab toggler correctly in streams and groups UI.
This commit updates the left margin for the tab toggler in
streams and groups UI to be equal to the margin for the content
below so that they align correctly.
2025-05-14 13:24:55 -07:00
Evy Kassirer
d82bd57cef two_pane_settings: Calculate body height from resize instead of fiddly CSS.
Having a set height is necessary for simplebar to work, and the height
will change depending on whether the header is one or two lines.
2025-05-13 12:06:47 -07:00
Evy Kassirer
a5c77cc017 settings: Move settings page CSS out of subscriptions.css. 2025-05-13 12:06:47 -07:00
Evy Kassirer
4f7c65d255 two_pane_settings: Clean up padding and width on creation window footer.
This changes the vertical padding to be the same top and bottom, instead
of 9px top and 15px bottom, and updates the width to properly account
for the left/right padding.

Note: This footer is currently only used for stream/usergroup creation.
2025-05-13 12:06:47 -07:00
Evy Kassirer
1778bea8fa two_pane_settings: Remove unused text-align on list-toggler-container.
This seems only relevant for the text in the `.tab-switcher .ind-tab`
which already have `text-align: center`.
2025-05-13 12:06:47 -07:00
Evy Kassirer
9ab4954fe8 two_pane_settings: Use transform with transition instead of left.
This is more performant.
2025-05-13 12:06:47 -07:00
Evy Kassirer
3edbd5983c two_pane_settings: Clean up top border for body on narrow screens.
It seems like the only impact of removing `top` here is the bottom
border of the header appears, but we can just remove that directly.

`border-top: none` doesn't seem like it was doing anything here
(the element had no border).
2025-05-13 12:06:47 -07:00
Evy Kassirer
ce78543fcd two_pane_settings: Remove redundant height for narrow screens.
This is already set on `.left` and `.right` for wide screens
and doesn't change on narrow screens.
2025-05-13 12:06:47 -07:00
Maneesh Shukla
46cd38d1b0 settings: Redesign buttons in channel and group settings.
Fixes: #34253.
2025-05-06 13:34:59 -07:00
Karl Stolley
3671a6a39c decorated_channels: Rename privacy-icon class. 2025-04-22 11:26:12 -07:00
Maneesh Shukla
94bbfaebe4 settings: Make stream and group settings thead sticky.
Co-authored-by: Karl Stolley <karl@zulip.com>
2025-04-16 09:24:37 -07:00
evykassirer
8d57bf30ac settings: Split CSS for two-pane-overlay and settings.
No changes, just shuffling things around for ease of reading
future commits.
2025-04-11 10:27:25 -07:00
evykassirer
3be4951e5e subscriptions: Move 40% width to just the left style block.
This is overwritten to ~60% in the .right style block and
shouldn't be in the shared style block.
2025-04-11 10:27:25 -07:00
evykassirer
e84c318e10 settings: Move stream_sorter_toggle CSS to subscriptions stylesheet.
It's only used for subscriptions so it makes more sense for it to
live there.
2025-04-11 10:27:25 -07:00
evykassirer
3539142479 settings: Remove margin for subheader title.
The margin doesn't scale with font size, so it looks
extra weird at small font sizes, and also the text
is already being centered with flex so we don't need
margin.
2025-04-11 10:27:25 -07:00
evykassirer
6b0dd9e063 settings: Move subheader CSS out of main CSS block.
In a future commit in (#34125) we'll add a classname for the
subheader and use that to scope these rules.

This commit has no changes in CSS rules. It only moves them around.
2025-04-11 10:27:25 -07:00
evykassirer
a09dab5eaf settings: Calculate height of create modal through javascript.
We need this height to be flexible based on if the subheader has
overflowed into two rows or not, and our method of doing this
(with existing examples in the buddy list and stream list) is to
calculate what the height should be when a window is loaded or
resized.
2025-04-10 10:01:57 -07:00
Sayam Samal
616a957842 settings: Improve subsection header styling.
This commit makes all the subsection header as flex boxes, and improves
it's CSS styling.
2025-04-07 18:22:16 -07:00
evykassirer
a16bc0e5b1 settings: Add a generic classname for two pane overlays. 2025-04-07 18:18:47 -07:00
evykassirer
8ee4554499 settings: Replace some two pane plus sign classnames with a generic one. 2025-04-07 18:18:47 -07:00
evykassirer
1abd3332a6 settings: Replace two pane header classnames with a generic one. 2025-04-07 18:18:47 -07:00
evykassirer
23b8ac0eab settings: Replace two pane container classnames with a generic one. 2025-04-07 18:18:47 -07:00
evykassirer
781c4448fd subscriptions: Combine same media queries. 2025-04-07 18:18:47 -07:00
Shubham Padia
e0dda789ee streams: Open typeahead on click on adding subscribers.
We also added `flex-grow: 1` to the add group members and add stream
subscribers input. Without that, the typeahead won't open on click,
since there was no space occupied by the input to click on.
2025-04-07 16:26:30 -07:00
Shubham Padia
c4b30dd176 user_groups: Remove Add all users button from group creation screen.
Partially fixes #33127.
2025-04-07 16:26:30 -07:00
Shubham Padia
2314f20587 user_groups: Add subtitle when adding subscribers to new group.
Also modify the placeholder text.
2025-04-07 16:26:30 -07:00
Shubham Padia
b2108404e7 channels: Remove Add all users button from channel creation screen. 2025-04-07 16:26:30 -07:00
Shubham Padia
81ba1bcb61 channels: Add subtitle when adding subscribers to new channel.
Also modify the placeholder text.
2025-04-07 16:26:30 -07:00
Karl Stolley
30752a0011 dark_theme: Set color variables for overlays, non-empty indicators. 2025-04-04 14:04:52 -07:00
Karl Stolley
46d4f32473 dark_theme: Set color variables for plus buttons. 2025-04-04 14:04:52 -07:00
Sayam Samal
91549cfba0 settings: Update remove/unsubscribe buttons to action button component.
This commit updates the remove and unsubscribe buttons in channel
settings and user group settings to use the action button component.
2025-04-04 12:26:36 -07:00
Evy Kassirer
8adb46867b stream_settings: Move muted channels help text to below header. 2025-03-27 11:55:04 -07:00
Aman Agrawal
5ad100afef channel_settings: Fix channel name incorrect hidden.
`max-width` was not working correctly here. Removing it gets
us in good state.
2025-03-25 13:26:16 -07:00
Aman Agrawal
c7364fafe5 subscriptions: Fix wrapping of channel name above 18px font size.
We limit the width of the channel title and show ellipsis for
overflowing channel name.
2025-03-24 12:24:48 -07:00