Commit Graph

9498 Commits

Author SHA1 Message Date
Evy Kassirer
d9fded98ff search: Remove outline for focused pills in the typeahead.
Reported here:
https://chat.zulip.org/#narrow/channel/9-issues/topic/extraneous.20box.20when.20clicking.20on.20search.20pill.20in.20typeahead/near/2268435
2025-10-03 10:49:55 -07:00
Evy Kassirer
034353b22d compose: Use compose_state.message_content for preview rendering.
Followup to #36048. Since the trimming done by the compose_state
function is designed to not impact the actual Markdown rendering of a
message, it's safe to simplify the code path in this way.
2025-10-03 10:48:08 -07:00
Evy Kassirer
3366aeb586 compose: Assert message_type not undefined instead.
Followup to #36048.
2025-10-03 10:48:07 -07:00
Evy Kassirer
5d90f509f5 compose_send_menu_popover: Remove default opts for open_schedule_message_menu. 2025-10-02 16:30:09 -07:00
Evy Kassirer
1818ce1e47 compose_send_menu_popover: Convert module to typescript. 2025-10-02 16:30:09 -07:00
Evy Kassirer
235dfa5280 search: Fix some overflow issues for dm pill operand. 2025-10-02 10:24:33 -07:00
Pratik Chanda
5e33f21af8 info_overlay: Use internationalized strings in keyboard shortcut tab.
This commit internationalizes the strings between the keys in the
right half of the keyboard shortcut tab in info_overlay.

Fixes part of #22875.
2025-10-01 16:54:12 -07:00
Pratik Chanda
dc61ad6071 keyboard_shortcuts: Change selector for home view hotkey in help menu.
This commit changes the selector for home view hotkey shortcut hint in
help menu. This will help in internationalization of the keyboard hints.
2025-10-01 16:54:12 -07:00
Pratik Chanda
97f3be90d6 markdown: Add helper config option to pass diff config to render.
This commit adds option to pass separate helper config to use when
rendering markdown. It uses the passed helper config if available or
fallbacks to web_app_helper config.
2025-10-01 16:54:12 -07:00
Evy Kassirer
635d99ba72 zform: Convert module to typescript. 2025-10-01 16:39:59 -07:00
Evy Kassirer
ec78f0551b server_events: Rename messages to raw_messages. 2025-10-01 16:38:55 -07:00
Evy Kassirer
f186a0edbb message: Make draft_id not optional in LocalMessage. 2025-10-01 16:38:55 -07:00
Evy Kassirer
a175a82590 compose: Convert module to typescript. 2025-10-01 16:38:55 -07:00
Evy Kassirer
66b90d3736 message: Create new LocalMessage to fix type of transmit.send_message. 2025-10-01 16:38:55 -07:00
Evy Kassirer
3c4fe73470 message: Differentiate between new local messages and server messages. 2025-10-01 16:38:55 -07:00
Anders Kaseorg
85c94599c5 emoji: Remove deprecated Google blobs emoji set.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-10-01 13:35:06 -07:00
Evy Kassirer
2888459f25 peer_data: Add clarity for when we do/don't have the full subscriber set. 2025-10-01 11:10:22 -07:00
Aman Agrawal
180ef91d1a people: Remove incorrect comment.
`error` type blueslip calls are checked.
2025-10-01 11:04:44 -07:00
Evy Kassirer
7167150a87 stream: Move subscriber_count to api_stream_schema. 2025-09-30 12:52:47 -07:00
Evy Kassirer
e9135cdc34 stream_data: Use clearer name for attrs for create_sub_from_server_data. 2025-09-30 12:52:47 -07:00
Evy Kassirer
06845359bd peer_data: Store subscriber counts off of the sub object. 2025-09-30 12:52:47 -07:00
Evy Kassirer
10a815cae7 stream_data: Rename add_sub to add_sub_for_tests. 2025-09-30 12:52:47 -07:00
Evy Kassirer
665bce3c13 transmit: Pass params directly instead of using opts. 2025-09-30 11:49:16 -07:00
Evy Kassirer
53cbfb9086 compose: Rename request to more specific sent_message. 2025-09-30 11:49:16 -07:00
Evy Kassirer
240177b87e events: Use more realistic avatar_url in tests. 2025-09-30 11:49:16 -07:00
Evy Kassirer
1b9da1e3c7 transmit: Convert module to typescript. 2025-09-30 11:49:16 -07:00
Evy Kassirer
8a25069dd6 echo: Ensure avatar_url is defined when creating a local message.
`current_user.avatar_url` can be undefined, and we want to make
sure it's always defined here. Using `small_avatar_url_for_person`
returns the `person.avatar_url` if it is defined, but then properly
sets up and returns backup values if it's not.
2025-09-30 11:49:16 -07:00
Sayam Samal
b894df61a4 drafts: Use span instead of em for placeholders without DM recipient.
The `em` tag is typically used to denote emphasis, which may not be
semantically appropriate for placeholder text, where we just want to
style the text as italic.
2025-09-30 11:37:16 -07:00
Sayam Samal
0d9e503add drafts: Add placeholder text for drafts with no channel selected.
This commit handles the empty channel placeholder for drafts saved
without a channel selected. When these drafts also do not have a topic,
we display "No topic selected" in tandem with "No channel selected",
since we are unable to access the channel configuration to determine
if we should display realm_empty_topic_display_name.
2025-09-30 11:37:16 -07:00
Sahil Batra
e3fb292fb1 settings: Fix input field overflowing in channel and group edit UI.
Name input for stream and group edit modal was too wide in narrow
width screens and overflowed the modal. This commit adds CSS to
make sure that maximum width of input field is set to fit inside
the modal respecting the modal container paddings on narrow width
screens.

Fixes #35301.
2025-09-30 11:26:25 -07:00
Sahil Batra
31f8dcba6c settings: Improve label of can_set_topics_policy_group.
This commit updates the label for can_set_topics_policy_group
to specify that the user must be a channel administrator in
order to change the topics policy for a channel.

We did that before but it was removed in d8261d4b96.
2025-09-30 11:26:01 -07:00
Evy Kassirer
5b0f135497 stream_list: Fix inactive/muted count bug.
We shouldn't include muted topics from unmuted channels in the
inactive/muted toggle count, since those unreads aren't in the
inactive/muted section. This fixes that.

Reported here: https://github.com/zulip/zulip/issues/36011#issuecomment-3327042885
2025-09-29 15:14:00 -07:00
Sahil Batra
d8261d4b96 settings: Improve label for can_set_topics_policy_group setting.
This commit updates the label for can_set_topics_policy_group
setting to be more clear by mentioning that it is used to
configure who can set the per-channel "general chat" configuration.

We also add a link to "/help/require-topics" with the label.
2025-09-29 11:00:26 -07:00
Karl Stolley
c609b55950 postprocess: Access data- attributes directly.
This makes for much easier grepping of these values
across the codebase, especially for squaring server-
side processing and tests.
2025-09-26 16:53:20 -07:00
Karl Stolley
b7b409002e postprocess: Set up new loop for message embeds. 2025-09-26 16:53:20 -07:00
Karl Stolley
31c49a7258 postprocess: Process YouTube images in image loop. 2025-09-26 16:53:20 -07:00
Karl Stolley
c7a651da60 postprocess: Handle images all within a single loop. 2025-09-26 16:53:20 -07:00
Karl Stolley
2e40359dd6 postprocess: Move refactored upload processing to own loop. 2025-09-26 16:53:20 -07:00
Karl Stolley
f9b52d4df5 postprocess: Move download processing nearer to links. 2025-09-26 16:53:20 -07:00
Karl Stolley
716333c6be postprocess: Move list-processing to the top.
This is the most simple loop, so sticking it at the top
keeps it from getting lost among the more complex
processing that follows.
2025-09-26 16:53:20 -07:00
Shubham Padia
c3fbe00eb0 help: Add default page to display on /help when help server is off.
We've copied the button and error colors from portico_signin.css. We did
not want the new HTML file to depend on portico_signin.css since they
are unrelated. In addition, having those colors diverge over time might
not be an issue.

We make the raw mode work with /help and /help/ both.

See https://chat.zulip.org/#narrow/channel/19-documentation/topic/edits.20not.20appearing.20with.20vagrant/near/2257442

Co-authored-by: Alya Abbott <alya@zulip.com>
2025-09-26 11:41:10 -07:00
Alya Abbott
0ea04f31bc compose and feed: Improve label for DMs to yourself. 2025-09-26 11:07:48 -07:00
Aman Agrawal
8b8d23cc5f realm_redirect: Add help for self hosted users to login. 2025-09-26 11:02:26 -07:00
Lauryn Menard
05b2036acd narrow-banner: Update invalid "sender" case for empty narrow banner.
Updates the empty narrow banner for an invalid user in the "Messages
sent by ..." view to better match what we show for an unknown channel.
2025-09-26 10:16:19 -07:00
Lauryn Menard
52cad38f3e narrow-title: Use filter title for invalid "sender" operand case.
Since we have a generic title for the unknown user case for the
"sender" operator, we can now use that when we set the document
title for the narrow view.
2025-09-26 10:16:19 -07:00
Lauryn Menard
d82083ca24 filter: Add title for an unknown user for the "sender" narrow case.
Previously, the message header for the "Messages sent by" view for
an invalid or unknown user was the value of the "sender" operand,
which was not a valid/known user email.

Now we show a standard title in the message header for this case:
"Messages sent by unknown user".
2025-09-26 10:16:19 -07:00
Lauryn Menard
ba33ef0054 narrow-title: Use filter title for valid sender view.
If the operand value for the "sender" operand is a known/valid
user, then we can return the value of filter.get_title here,
which correctly handles the guest user case.

Because filter.get_title already returns the translated "Reactions"
string, we can also remove the duplicate logic in compute_narrow_title
for that special view.
2025-09-26 10:16:03 -07:00
Lauryn Menard
be4af12366 narrow-state: Move pm_emails_string logic to pm_ids_string.
As the only caller of pm_emails_string is now pm_ids_string, we
can move getting and checking for the operand value of the "dm"
operator's to be in one function.

Removing pm_emails_string is helpful because it was less obvious
that it could return a value that was not a valid direct message
recipient, i.e., in the case that the user changed the URL manually
or made an error when copy/pasting the URL into the browser.
2025-09-26 09:52:51 -07:00
Lauryn Menard
328f2e217a search-suggestions: Use narrowed_by_pm_reply for empty search query.
Use narrow_state.narrowed_by_pm_reply when getting suggestions for
an empty search query to check if the current filter corresponds to
a particular direct message conversation.
2025-09-26 09:52:51 -07:00
Lauryn Menard
11dcf3bef7 search-suggestions: Use narrowed_by_topic for empty search query.
Use narrow_state.narrowed_by_topic when getting suggestions for
an empty search query to check if the current filter corresponds to
a specific channel/topic conversation.

This is functionally equivalent to what we have been doing since
these suggestions are only added when the search query is empty.
For narrows that have a term with a near operator or additional
filter terms (is:starred, has:link, etc.), the search query would
not be empty when constructing the attacher for the search box
suggestions.
2025-09-26 09:52:49 -07:00