Commit Graph

63435 Commits

Author SHA1 Message Date
Maneesh Shukla
3f88fe5903 resolved: Rename "Topics marked as resolved" -> "Resolved topics".
Fixes part of #31725.
2025-02-24 09:59:21 -08:00
harshbansal8705
b9561daefb compose: Keep focus on recipient field when input is invalid.
Previously, if an invalid user was entered in the recipient field,
the input box would shake to indicate an error but also move the
cursor to the message field. This was unintended and disrupted the
user experience.

This commit ensures that the focus remains in the recipient field
when the input is invalid, preventing premature cursor movement.
2025-02-24 09:41:59 -08:00
Apoorva Pendse
b547dcd643 compose_banner: Flash only once for exceeded length.
https://chat.zulip.org/#narrow/channel/101-design/topic/invalid.20message.20border.20flashing/near/2094736
2025-02-23 23:11:18 -08:00
apoorvapendse
0b12c51771 compose: Add tooltip support for invalid messages.
This commit adds tooltip support for various
invalid conditions mentioned in issue 32115.

A `show_banner` positional argument is added
in the `validate` method which has a default
value of true.

The reason behind introducing this is to
not trigger banners on hovering the disabled
send button, since the tooltip message is also
determined using the same validate method.

We want to only disable the button on hover,
which is why the update_send_button_status() method
is called only on "mouseenter" event, which is
added to the send button in compose_setup.js

To incorporate this change a new param is
introduced which determines whether to enable/disable
send_button by running update_send_button_status

Earlier, typing something in the textarea or
recipient box would also trigger
`update_send_button_status` which doesn't
work well since we've introduced a lot of
new booleans which determine whether send
button gets disabled causing send button to
get disabled while typing instead while hovering
Hence this change.
2025-02-23 23:11:18 -08:00
Apoorva Pendse
8496a40564 compose_banner: Assign banner priority.
Assigns priority to banner errors as
mentioned in #32115.
2025-02-23 23:11:18 -08:00
Tim Abbott
7972dde7af compose: Focus textearea after trying to send empty message. 2025-02-23 23:11:18 -08:00
Tim Abbott
71f36e241c compose_validate: Update state in validate_message_length. 2025-02-23 23:11:18 -08:00
Apoorva Pendse
2b250e7e64 compose_validate: Refactor conditionals for existing errors.
Pre commit for #32115.
2025-02-23 23:11:18 -08:00
Apoorva Pendse
979b4203c7 compose_banner: Reword no channel selected banner error.
Preparatory commit for #32115.
2025-02-23 23:11:18 -08:00
apoorvapendse
4b82e08b13 compose: Disable send button with a default cursor.
This commit is a pre commit to a change that will
introduce banners and tooltips as per various
unmet conditions while composing a message.

To accomodate future changes, the toggling is
switched to conditional addition/removal of the
`disabled-message-send-controls` class while
updating the status of the send button.

Also a default cursor is added and the send
area tooltips are disabled whenever the
`disabled-message-send-controls` class is
present.
2025-02-23 23:11:18 -08:00
apoorvapendse
6a443c0418 compose_banner: Update message for no private recipient.
This commit updates the error banner message when no
private recipient is specified.
2025-02-23 23:11:18 -08:00
apoorvapendse
fb5730a8fb copy_and_paste: Use parse instead of fixtures for inline cases.
Fixes: https://chat.zulip.org/#narrow/channel/6-frontend/topic/Use.20original.20markup.20to.20generate.20HTML.20for.20katex.20tests/near/2097702
2025-02-23 17:04:48 -08:00
Sahil Batra
ada386f7c2 settings: Rearrange "Other settings" section. 2025-02-23 16:09:50 -08:00
Aman Agrawal
7933cecf22 message_length_toggle: Fix tooltip not hidden on narrow change.
We fix tooltip being still visible once collapse / expand tooltip
is visible and user changes narrow by destroying the tooltip when
reference is hidden.
2025-02-23 16:04:19 -08:00
Maneesh Shukla
032a757def tooltip_delay: Change the tooltip_delay of restore_draft. 2025-02-23 15:54:07 -08:00
Maneesh Shukla
3db2104fe9 drafts: Add a copy draft button.
This adds a button to the draft overlay that allows the user to copy
the draft to the clipboard.
2025-02-23 15:54:07 -08:00
Aman Agrawal
94fd268abe inbox: Fix width of inbox search input at different window sizes. 2025-02-23 15:03:55 -08:00
sanchi-t
b2bc8db6bc message_flags: Add skipped unsubscribed stream ids in the response.
Added `ignored_because_not_subscribed` field in the response of
`/messages/flags/narrow` endpoint.

Fixes a part of #23470.

Co-authored-by: Hemant Umre <hemantumre12@gmail.com>.
2025-02-23 13:59:46 -08:00
Alya Abbott
eba26db3ae onboarding: Make new topic instructions point to left sidebar. 2025-02-23 13:23:14 -08:00
apoorvapendse
18976dd321 zerver: Remove unnecessary tusd logs during run-dev startup.
Previously, tusd printed unnecessary logs on startup while running
the tools/run-dev script. This commit resolves the issue by setting
the verbose flag to false, which defaults to true if not specified.

The required PR adding this flag was introduced in
https://github.com/tus/tusd/pull/1218.

Fixes #32301.
2025-02-23 10:57:53 -08:00
Saubhagya Patel
d3c20f0b25 notifications: Render emoji in desktop notifications.
In desktop notifications, we no longer display an emoji's status
code. Instead, we show the corresponding Unicode emoji to
render it properly in desktop notifications. For custom
emojis, we continue to display their name.

Fixes #30598.

Co-authored-by: Tanmay Kumar <tnmdotkr@gmail.com>
Co-authored-by: Tim Abbott <tabbott@zulip.com>
2025-02-23 10:57:09 -08:00
Maneesh Shukla
a2c0d2d385 left_sidebar: Show tooltip only for truncated channel names. 2025-02-23 10:55:19 -08:00
Maneesh Shukla
e8d47ff550 styles: Modify users table spinner css to scale properly with font size. 2025-02-23 10:53:04 -08:00
Alya Abbott
7478c81437 help: Improve left sidebar documentation.
- Add instructions for starting new conversations.
- Update style to be more consistent with other pages.
2025-02-21 19:43:19 -08:00
Maneesh Shukla
b7ce31135d deactivated_user: Correctly display deactivated users in the right sidebar.
Fixes: #30797.
2025-02-21 18:01:26 -08:00
userAdityaa
196f4e92a3 resize_observer: Prevent loop using requestAnimationFrame.
This commit solves the issue where the ResizeObserver loop completes
with undelivered notifications. By using requestAnimationFrame, the
resize event is deferred until after the paint cycle, preventing an
infinite loop caused by consecutive resize triggers before repaint.
2025-02-21 17:20:18 -08:00
Shubham Padia
f6bb990b91 user_group: Move UserGroupMembershipDetails from lib/streams.py. 2025-02-21 15:36:07 -08:00
Shubham Padia
63a4aea7a8 streams: Add get_content_access_streams function.
To get content access streams for mention.py, we will now use
get_content_access_streams and we have done a lot more other refactors
in this commit around filter_stream_authorization. Mainly making that
function only to be used for adding subscribers and naming it
accordingly.
2025-02-21 15:36:07 -08:00
Shubham Padia
3132bdb20f composebox: Streams without content access shouldn't be in typeahead.
Other places where we use get_unsorted_subs do not require content
access.
See https://chat.zulip.org/#narrow/channel/101-design/topic/dropdown.20for.20metadata.20access.20stream/near/2096230
2025-02-21 15:36:07 -08:00
Shubham Padia
a7b5960c98 message: Allow to send without subscribing if user has content access.
If the user has content access and is part of the
`can_send_message_group`, they can send a message to streams with shared
history. We do not allow them to send messages to stream with protected
history since they it would go into a void and they cannot see the
message later.
See https://chat.zulip.org/#narrow/channel/101-design/topic/shared.20history.20can.20send.20message/with/2095398
2025-02-21 15:36:07 -08:00
Shubham Padia
5d7a78f721 stream_data: Users with content access should be able to preview.
Before this, not all users with content access were able to see the
preview button.
2025-02-21 15:36:07 -08:00
Shubham Padia
a260ae8e57 message: Take into account usergroups for has_message_access. 2025-02-21 15:36:07 -08:00
Aditya Kumar Kasaudhan
9d08063208 webhooks/github: Added support for issue transferred events.
On transferring an issue to another repository, GitHub sends
- a "transferred" event to the old repository's webhook URL,
- and an "opened event", containing links to the old issue,
  to the new repository's webhook URL.

This commit adds support for both events independently.
Fixes: #33450.
2025-02-21 15:34:14 -08:00
Alex Vandiver
c84c76f3a1 puppet: Upgrade external dependencies. 2025-02-21 14:38:31 -08:00
Prakhar Pratyush
eed056a591 topic_list_data: Add support to filter empty string topic.
We show `realm_empty_topic_display_name` for empty string topics
in the left sidebar.

This commit makes it possible for users to search for
the `realm_empty_topic_display_name` value to filter out empty
string topics.
2025-02-21 14:13:22 -08:00
Alex Vandiver
6ac9e3328e cache: Flush caches from all known key prefixes.
When flushing caches, we want to ensure that even processes which may
have a wrong cache-key-prefix know to fetch the latest data from the
database.  This is complicated by the cache-key-prefixes being stored
on disk, and thus checking that every cache delete is not sufficiently
performant.

We store the list of cache-key-prefixes in the cache, itself, with no
prefix.  This cache is updated when a new cache-key is written, and is
also allowed to lapse after 24 hours.  Updating this global cache
entry on new prefix creation ensures that even a
not-yet-restarted-into deployment will have its caches appropriately
purged if changes are made to the underlying data.

However, this both adds a cache-get, as well as multiplies the size of
all cache clears; for large bulk clears (e.g. for stream renames,
which clear the cache for all message-ids in them) this may prove
untenable.
2025-02-21 14:11:08 -08:00
Alex Vandiver
3e421d71ba kandra: Update Teleport CA. 2025-02-21 10:16:33 -08:00
Alex Vandiver
e2df4f52ef kandra: Update Teleport version. 2025-02-21 10:16:33 -08:00
evykassirer
cc60fed749 stream_settings: Fix height of right pane for two-row header. 2025-02-21 10:12:19 -08:00
Karl Stolley
c605c069ed stars: Hide stars button on locally echoed messages. 2025-02-21 09:42:25 -08:00
Maneesh Shukla
15f0aa5acd loading_spinner: Add loading spinner to settings page.
Remove "Loading..." text from settings page and replace it
with a spinner.
2025-02-20 17:58:49 -08:00
Tim Abbott
1031a97d0c docs: Update changelog for changes in main. 2025-02-20 14:53:03 -08:00
Lauryn Menard
add58e3795 billing: Use customer.minimum_licenses for minimum plan check.
Allow for manually setting a minimum_licenses value on a customer
to return that for min_licenses_for_plan in cases where we wanted
to override the general plan minimum for a particular case.
2025-02-20 14:17:25 -08:00
Alya Abbott
b3e80071a4 help: Update DM page to use modern terminology.
Adds a "Via search box" tabbed section for viewing DMs via the
search box in the web and desktop apps.
2025-02-20 11:36:40 -08:00
Alya Abbott
7f4e2e371d help: Document typing notifications for message editing. 2025-02-20 11:36:40 -08:00
Karl Stolley
0ce20fb515 sidebars: Refactor to remove .default-sidebar-behaviour.
Despite the comment in `ui_init.js`, this class is never in fact
removed, and appears only to add unnecessary complexity to certain
selectors, which are here cleaned up.
2025-02-20 11:17:02 -08:00
evykassirer
c9109ef736 compose: Use em for message-limit-indicator font size. 2025-02-20 11:14:49 -08:00
apoorvapendse
ac3bacb61e move_topic_to_stream: Limit topic name length in modal.
Fixes:
https://chat.zulip.org/#narrow/channel/9-issues/topic/no.20topic.20length.20limit.20in.20move.20modal/with/2097474.
2025-02-20 10:45:14 -08:00
Karl Stolley
13c3e36bd2 topic_summaries: Ensure modal takes rendered_markdown class. 2025-02-20 10:37:42 -08:00
Karl Stolley
509a71a666 message_row: Mock available icons to prevent post-echo reflow. 2025-02-20 10:26:36 -08:00