Commit Graph

61662 Commits

Author SHA1 Message Date
Aman Agrawal 4e7bb6c57a message_edit: Show confirm dialog to explain the behaviour. 2024-11-18 15:06:26 -08:00
Aman Agrawal 98265fd149 message_edit: Fix edit last msg hotkey unintentionally marks msgs read.
Fixes #17737

If you write a message in a narrowed view, then go back to an unnarrowed
view, there may now be many unread messages between your new current
position and the message you just wrote. If you then accidentally press
`←`, all of those messages will be marked read unexpectedly, causing you
to lose your place while catching up.

So, we disable the hotkey in this scenario to fix this bug.
2024-11-18 15:06:26 -08:00
Aman Agrawal dd58698c02 message_edit: Rename variable for clarity. 2024-11-18 15:06:26 -08:00
Aman Agrawal c16f3c5eca message_edit: Remove incorrect `from_scroll` value.
Since it is important that the message being edited is visible,
it is safe to ignore `from_scroll` here which is also an
unlikely possibility here.
2024-11-18 15:06:26 -08:00
Karl Stolley f4554613a0 compose: Delegate max-length tooltip to body. 2024-11-18 12:44:24 -08:00
Anders Kaseorg 8b37781b34 templates: Fix @partial-block invocations for explicitPartialContext.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-18 12:38:50 -08:00
Sahil Batra cde4c335b1 group-settings: Refactor code to set up permission setting widgets.
This commit refactors code to set up permission setting widgets
by looping over list of settings.
2024-11-18 11:55:19 -08:00
Sahil Batra 3af84d6e69 group-settings: Use group_setting_value_pill_input template.
We now use group_setting_value_pill_input template for user
group permission settings to avoid duplicate code.
2024-11-18 11:55:19 -08:00
Sahil Batra d5a391a56b streams: Optmize code to send events on creating stream.
This commit updates code to effectively compute the setting
values when creating stream object to be sent in stream creation
events.
2024-11-18 11:55:19 -08:00
Sahil Batra 7adc83d2a0 streams: Optimize code for computing stream objects.
This commit updates code to optimize code for computing stream
objects to be sent with stream creation event and in response
for 'GET /streams/{stream_id}' endpoint by optimizing number
of queries while computing values for group permission settings.

This change does not benefit much currently as we only have one
stream group permission setting, but is important before we add
more stream permission settings.

There are a couple of places left where we can still optimize
the code and that would be done in further commits.
2024-11-18 11:55:19 -08:00
Sahil Batra 2cc0f482e1 streams: Refactor code to compute setting group values.
This commit adds a new function to compute setting group
values for a list of streams, so we can avoid having duplicate
code for computing setting group IDs from streams.
2024-11-18 11:55:19 -08:00
Sahil Batra b20c24c09d streams: Compute object only when needed.
This commit updates code to compute the values for group permission
settings in send_stream_creation_events_for_previously_inaccessible_streams
only when we need to send the events. This helps us in avoiding
unnecessary DB queries.
2024-11-18 11:55:19 -08:00
Sahil Batra f2158c42a7 streams: Do not call "locals()" inside loop.
There is no need to call "locals()" inside the loop for
stream permission settings. It should just be called once
to get values of all the settings passed to the endpoint.

It was fine as we only had one group permission setting
for stream, but is a good fix before we add more settings.
2024-11-18 11:55:19 -08:00
evykassirer b066f58c54 stream_muting: Convert module to typescript. 2024-11-18 11:13:36 -08:00
evykassirer a60beda676 settings_panel_menu: Convert module to typescript. 2024-11-18 11:13:10 -08:00
evykassirer 6093aa4b23 settings_sections: Convert module to typescript. 2024-11-18 10:35:21 -08:00
Aman Agrawal b39347a946 portico: Fix multiple landing pages broken.
Since postcss tries to preserve specificity of selectors which
are defined in in a group, a `:not(#does-not-exist)` selector
was added to the non ID selectors (solutions-page and case-study-page).

This caused the CSS styles to override other styles due to
unexpectedly increased specificity.

To fix it, we remove the ID selector `#why-zulip-page` from the
group.
2024-11-18 10:32:53 -08:00
evykassirer a8abcf5210 right_sidebar: Add missing right margin to header. 2024-11-17 11:54:08 -08:00
Sahil Batra 5d1de4c037 stream-settings: Use new pills UI for can_remove_subscribers_group. 2024-11-16 17:11:08 -08:00
Sahil Batra 46defdfcfb stream-settings: Avoid duplicate IDs for setting elements.
We previously had same ID for setting elements in stream
creation and stream edit form. This commit adds "new_"
prefix before the setting name to avoid duplicate IDs.
2024-11-16 17:11:08 -08:00
Shubham Padia b6ebf143cc streams: Backend changes to support anonymous groups.
can_remove_subscribers_group setting can now be set to
anonymous user groups.

Co-authored-by: Sahil Batra <sahil@zulip.com>
2024-11-16 17:11:08 -08:00
evykassirer 005a27a9cf buddy_list: Move header_text calculation to where it's used.
Non-functional change.
2024-11-16 17:01:26 -08:00
vivek-tripathi-9005 c032bd9e78 streams: Move subscriber count from channel pills to channel cards.
Previously, the number of subscribers was displayed on channel pills.

This commit removes the subscriber count from the channel pills and
adds it to the channel cards. The count is styled similarly to the
number of group members in group cards, with the text 'N subscribers'
(or '1 subscriber' for single subscribers).

Fixes: #32235.
2024-11-16 10:49:29 -08:00
Anders Kaseorg e172c717f7 webpack: Enable explicitPartialContext for handlebars-loader.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-15 20:41:59 -08:00
Anders Kaseorg 44c50b3e64 settings: Fix display of status emoji in “User list style”.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-15 20:40:35 -08:00
Tim Abbott f7fe96f814 blueslip: Include message for abnormal traces.
`ResizeObserver loop completed with undelivered notifications` errors
have originalEvent.error=null; in that case, it's worth including the
`message` in what we display.

I think we probably want `message` in every case where this code path
is relevant, so I just append it unconditionally.
2024-11-15 17:06:17 -08:00
Sahil Batra b78ca79ccf user_groups: Define AnonymousSettingGroupDict in types.py.
AnonymousSettingGroupDict is now defined in types.py instead
of user_groups.py to avoid import cycles in future commits.
2024-11-15 16:36:37 -08:00
Sahil Batra 10ae4ffea4 subscription: Refactor code for creating subscription dicts.
This commit refactors code to create subscription dicts so
that we can efficiently compute can_remove_subscribers_group
setting when we add support to set the setting to anonymous
groups.
2024-11-15 16:36:37 -08:00
Sahil Batra 6bd322ac5d group-settings: Fix live-update of group permission settings.
This commit fixes code to correctly enable the permission
settings when a user gains permission to manage the group.
2024-11-15 16:36:37 -08:00
Sahil Batra d2b29cef2d state_data: Move group_setting_value_schema to types.ts.
This is needed to avoid import cycles in next commit.
2024-11-15 16:36:37 -08:00
Tim Abbott fc7d305791 docs: Improve opening for recommended setup page. 2024-11-15 15:09:18 -08:00
Tim Abbott 11d6273990 Update puppet/zulip/manifests/app_frontend_base.pp
Co-authored-by: Anders Kaseorg <andersk@mit.edu>
2024-11-15 15:08:33 -08:00
Tim Abbott 9d68d89d01 puppet: Require libldap-common be installed.
Zulip instances without a database included, like the Docker image,
would not fail to use TLS properly, since `TLS_REQCERT` was not set in
`/etc/ldap/ldap.conf`. While there's a few other ways we could fix
this, just installing libldap-common on app frontend instances seems
like a good solution, and has no impact on other Zulip systems, and it
was already being installed through a "Recommends" tier apt dependency
indirectly from the PostgreSQL server package.

Fixes zulip/docker-zulip#454.
2024-11-15 15:08:33 -08:00
evykassirer 5f124ad117 right_sidebar: Simplify and shorten heading titles.
Part of fixing #32268.
2024-11-15 12:49:29 -08:00
evykassirer 5e211d4ac4 right_sidebar: Use all caps for headings.
Part of fixing #32268.
2024-11-15 12:49:29 -08:00
evykassirer c9096c6308 right_sidebar: Change header styling to match left sidebar.
Fixes #32268.
2024-11-15 12:49:29 -08:00
Anders Kaseorg e90d1e9985 webpack: Enable knownHelpersOnly for handlebars-loader.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-15 12:34:58 -08:00
Anders Kaseorg c63b215729 webpack: Fix knownHelpers list for handlebars-loader.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-15 12:34:58 -08:00
David Flanagan eec9b8e683
integrations: Avoid UUIDs in topics for linear.
The initial implementation for this feature used the issue UUID
to create the topics, as some of the webhook events only provide
this and it is the only way to group sub-issues with parents.

However, if we sacrifice this and allow sub-issues to be
their own topic then we can avoid using the UUID as the topic name.

I think the quality of life improvement to topics here warrants this change,
as UUID topic names can be come unruly very quickly.

Part of #23118.
2024-11-15 11:06:39 -08:00
Harsh e0bd3713cc message_feed: Add channel-settings-link to bookend.
To replace the previous subscribe/subscribe buttons, we add a button
to visit channel settings (if not subscribed) or manage channel
settings (if subscribed) to trailing bookends.

Fixes #32125.
2024-11-14 16:25:42 -08:00
Harsh a8f76f1b80 message_feed: Remove separate Subscribe/Unsubscribe buttons.
This removes Subscribe/Unsubscribe buttons in trailing bookends,
including the can_toggle_subscription plumbing supporting them.

Fixes #32125.
2024-11-14 16:25:21 -08:00
whilstsomebody 8356a9d9e4
narrow_filter: Add negation support for in:home narrow filter.
The in:home narrow filter is used to filter messages that appear
in the home view, i.e., messages that are not muted. Conversely,
`-in:home` should filter messages that are not in the home view,
i.e., muted messages. However, `-in:home` did not work as expected
because this filter lacked negation support, unlike similar code
paths.

This commit adds negation support for the in:home filter.

For more information, see:
<https://chat.zulip.org/#narrow/channel/378-api-design/topic/mark.20muted-topic.20messages.20as.20read/near/1980534>.
2024-11-14 15:10:01 -08:00
Sayam Samal 743d0dbaa2 bootstrap_portico: Rename btn-group -> bootstrap-btn-group.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal 543a6c51dc bootstrap: Rename btn-* -> button-* classes.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal 045efadab9 bootstrap-btn: Rename btn -> bootstrap-btn.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal 5fc226c8ef bootstrap: Rename btn-default -> bootstrap-btn-default.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal 39dd55e854 subscriptions: Rename btn -> button in CSS classes.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal b5dd1bf009 inbox: Rename btn -> button for CSS classes.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal 45eefb1e53 stream_ui_updates: Rename btn -> button in CSS classes.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00
Sayam Samal 0158768a91 settings: Rename btn -> button in #add-custom-profile-field-btn.
This commit is a part of the efforts to rename btn-related classes
and variables to align with Zulip's no-abbreviations policy and
streamline the search results.
2024-11-14 12:03:36 -08:00