Commit Graph

65408 Commits

Author SHA1 Message Date
Lauryn Menard
3d3f7b3782 help: Add example email invitation image to "Invite new users".
Adds a link to the section on email invitations to the invite user
modal next to the label for the emails input.

Fixes #29376.
2025-07-02 10:23:38 -07:00
Alex Vandiver
8cde0af040 email_mirror: Fail more gracefully on empty EMAIL_GATEWAY_PATTERN.
Otherwise, this fails on `match.group(1)` as there is no match group.

The server would ideally respond with a 521 or 556 code[^1] on initial
connection, but aiosmtpd does not provide that option.

[^1]: https://www.rfc-editor.org/rfc/rfc7504
2025-07-02 10:21:08 -07:00
Alex Vandiver
43a7035745 docker: Start local mailserver on port 25. 2025-07-02 10:21:08 -07:00
Aman Agrawal
29c4d86d81 case-studies: Add WindBorne case study.
Co-authored-by: Alya Abbott <alya@zulip.com>
2025-07-02 09:36:47 -07:00
Shubham Padia
30ff98c2f6 help-beta: Function to insert flattened steps should run on includes.
We were not running this function on includes, for relative/settings
links and for nested includes, we need to flatten them in the includes
too.
2025-07-02 09:27:48 -07:00
Kislay Verma
acf491e6d0 compose_reply: Empty DM recipient box on forwarding message.
This fixes an accidental change introduced in #32578.

Forwarding a message and choosing DM should result in
an empty recipient box instead of showing current
recipients.
2025-07-02 09:27:22 -07:00
Pratik Chanda
ac4c3335e8 help_menu: Center keyboard shortcut text in kbd element.
This commit fixes the kbd element text being centered in dark theme
but not in light theme. Aligns text for all kbd elements not just
in dark theme.

Fixes:zulip#35059.
2025-07-02 09:26:45 -07:00
Sahil Batra
906f8d076c stream-settings: Set show_not_subscribed value when opening overlay.
We reset the internal state while opening the stream settings
overlay to reflect that "Subscribed" tab will be selected.
We did set show_subscribed value to "True" but did not
set show_not_subscribed value to "False".

Due to this opening the overlay, after closing the overlay
when "Not subscribed" tab was selected, resulted in left
panel being shown empty with "Subscribed" tab selected
even when there were subscribed streams because both
show_subscribed and show_not_subscribed were set to "True".

This commit fixes it by setting show_not_subscribed to
"False" as well when resetting the state.
2025-07-02 09:26:09 -07:00
Aman Agrawal
ab5bce02c6 hotkey: Use existing function to get channel_id. 2025-07-02 09:25:47 -07:00
Aman Agrawal
8f1f34b2ea common: Add a proper delay. 2025-07-02 11:50:47 +05:30
PieterCK
1e4b0bdfea filter: Rename supports_collapsing_recipients.
This renames the function to `contains_no_partial_conversations`. The
function initially was created to determine whether its appropriate to
collapse recipient/sender headings. Since then it has many other use
cases, so it's renamed to clearly describe what it does instead.
2025-07-01 16:14:56 -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
Maneesh Shukla
52b83f7b58 topic_list: Filter topics by resolved state in "more topics" view.
Fixes: #24200.
2025-07-01 14:02:57 -07:00
Aman Agrawal
2a325b4530 inbox: Save and restore search text for inbox and channel view. 2025-07-01 13:46:40 -07:00
Aman Agrawal
adb2884d59 inbox_ui: Fix buggy save and restore of navigation state.
The previous logic only worked correctly when user moved from
inbox view to channel topic list view and vice versa.

The logic failed if user moves out of inbox since then `save` state
is never called and hence when restore is called, the navigation
state gets reset.

Fixed by also saving state when inbox is hidden.
2025-07-01 13:46:40 -07:00
Aman Agrawal
6e73238ea3 inbox_ui: Rename save and restore functions for general use.
These functions can now also be used to save and restore
search text.
2025-07-01 13:46:40 -07:00
Aman Agrawal
defd120c94 hotkey: Add Y shortcut to go to a list of topics in channel. 2025-07-01 13:46:40 -07:00
Aman Agrawal
26299d09aa inbox: Fix topic not focused with r hotkey with no topic focused.
We mimic the behaviour of `c` hotkey to fix this bug.
2025-07-01 13:46:40 -07:00
whilstsomebody
1878200402 todo_widget: Disable "Add task" button when a task cannot be added.
We want to prevent users from adding a duplicate or empty
task to the todo list. For this purpose, we disable the
"Add task" button in both the cases.

Fixes: #20211
2025-07-01 13:37:33 -07:00
Sahil Batra
926716d9f2 custom-profile-fields: Fix handling manual date input.
This commit fixes the behavior when manually changing
the date input instead of selecting from the picker.

Changes done are-
- Users can enter date in various formats including the
one showed in the input like "June 20, 1999", "MM-DD-YYY",
and basically the formats which can be parsed by "Date".
- Fixed handling of invalid strings where we show
"Invalid date value" error message for some time without
sending the request to server.

Fixes #19936.
2025-07-01 13:31:08 -07:00
Sahil Batra
0a684ab0f5 settings: Move update_user_custom_profile_fields function.
This is a prep commit to avoid import cycles when we
would use update_user_custom_profile_fields function
in custom_profile_fields_ui.ts in next commit.
2025-07-01 13:31:08 -07:00
Sahil Batra
df0e70726c ui_report: Remove class when hiding the status element.
It is important to remove the class when hiding the status
element to make sure that when showing status again by calling
some other function than ui_report.message, for example using
loading.make_indicator, the status text should not be styled
as per the class used previously.

One example can be that "Saving" text in indicator can be shown
in "red" color, used for showing errors, if previously an error
response was showed in that status element.
2025-07-01 13:31:08 -07:00
PieterCK
b3a682f794 dialog_widget: Support input checkbox type fields.
Currently checkbox type input will pass through to the default condition
that records the input elements value. This is inaccurate for checkbox
type input field where it should check for the `checked` attribute
instead.

This is added so that we can use `get_current_values` to get the values
of checkbox inputs too.
2025-07-01 13:25:00 -07:00
PieterCK
e59c5ce655 test_bot_data: Make test cases more accurate.
This removes the "service" field from the `test_bot` fixture, because it
is a default bot. In the `/bots` API endpoint, only service bots can
have their own service.

This is a prep commit for #34524, this cleans up the test cases related
to service bots so that it would keep things from getting confusing when
adding test for the changes to that PR.
2025-07-01 13:25:00 -07:00
PieterCK
5f12e47ba7 app_variable: Refactor a settings-nested-checkbox-vertical-margin.
This refactors a CSS variable for checkbox field margin for checkboxes
nested in another field. For example, the "integration events" options
in the "Generate integration URL" modal. Those nested checkboxes are
spaced out closer together.

This is a prep commit for #34524, that PR will add another nested
checkbox in the "Add a new bot" modal.
2025-07-01 13:25:00 -07:00
PieterCK
38d2a95aa1 users: Add acting_user to do_update_outgoing_webhook_service.
The `acting_user` parameter is added in preparation to make
`do_update_outgoing_webhook_service` log `RealmAuditLog` when updating
bots service. It doesn't have any use as of right now.
2025-07-01 13:24:58 -07:00
PieterCK
fb229a013e actions: Refactor do_update_outgoing_webhook_service.
This updates `do_update_outgoing_webhook_service` to use
`BotServicesOutgoing` as the schema for the updated service data we send
back to client because it's the schema `bot_data.update` expects.

The function is also refactored to allow updating specific fields of the
Service row instead of requiring all value for the Service fields to be
passed.

This is a prep commit for #34524, it adds another field to the Service
field.
2025-07-01 13:24:35 -07:00
Evy Kassirer
25cebcd119 left_sidebar: Don't show 'add channels' in tooltip if that's not allowed.
Discussed here:
https://chat.zulip.org/#narrow/channel/101-design/topic/channel.20folders.20in.20left.20sidebar.20.2331972/near/2202343
2025-07-01 12:52:17 -07:00
Aman Agrawal
072343a101 common: Make pm typeahead flake less common. 2025-07-01 04:26:33 -07:00
Aman Agrawal
ecadb00ce4 compose_send_menu_popover: Focus textarea after selecting enter sends.
Fixed focus being lost after the compose send popover closes if
enter sends behaviour option was selected.
2025-07-01 04:26:33 -07:00
Aman Agrawal
53fa1d82e8 compose_send_menu_popover: Fix error on trying to select first element.
Fixed to use correct selectors.
2025-07-01 04:26:33 -07:00
Tim Abbott
481f7ca4eb docs: Update changelog for changes merged into main. 2025-06-30 18:34:58 -07:00
Evy Kassirer
0c5e1ac492 subscription_data: Flesh out partial suscription data sent to client.
Part of #34244.
2025-06-30 17:10:36 -07:00
whilstsomebody
9ef3a19451 compose: Prevent displaying banner when channel picker is opened.
Prevent displaying the topic resolved banner when the channel
picker (compose_select_recipient_dropdown_widget) is opened in
the case of forwarding messages. This is done to prevent the
overlap of the channel picker and the banner, as it hides some
part of the banner text.

Fixes: #33449
2025-06-30 14:02:58 -07:00
Mateusz Mandera
dadec69986 settings: Add SCIM_CONFIG to default_settings.
This should have been declared in default_settings.py to begin with.
2025-06-30 13:00:03 -07:00
Evy Kassirer
108241b55d left_sidebar: Fix typo in login-to-more-streams classname.
Introduced in #33170.
2025-06-30 12:40:17 -07:00
Lauryn Menard
7ae8c34670 help: Fix whitespace around zulip-icon-user-list icons. 2025-06-30 12:36:25 -07:00
Pratik Chanda
0b97ce2486 tooltips: Fix buddy list tooltip stuck on redraw.
Earlier, buddy list tooltip would get stuck if tooltip was displayed
when redraw for presence update got triggered. This happened due to
tooltip target element was changed but reference element for
mutation wasn't updated.
2025-06-30 11:30:14 -07:00
Pratik Chanda
51819459e9 modal: Fix delete button focus outline cutoff in todo/poll widget.
This commit adds a padding so that the focus outline is visible
completely without being cutoff.

Fixes:zulip#32950.
2025-06-30 11:28:30 -07:00
Pratik Chanda
146dcbc33a modal: Fix simplebar overlap with content in todo/poll widget modal.
This commit fixes the overlap of simplebar with content in widget
modal by adding a padding for the simplebar-content.

Fixes part of zulip#32950.
2025-06-30 11:28:30 -07:00
Pratik Chanda
c9492750d4 unread_ops: Fix filter term check for current narrow when bulk update.
This commit ignores the near operator when comparing with current
message list filter terms which may have near operator.

Fixes:zulip#33866.
2025-06-30 11:22:23 -07:00
Shubham Padia
d701fec37d markdown: Show inline video previews for dropbox videos.
Fixes https://chat.zulip.org/#narrow/channel/9-issues/topic/.F0.9F.93.82.20video.20preview.20not.20working.20.28Dropbox.29
2025-06-30 11:21:32 -07:00
Shubham Padia
276bc7284f markdown: Rename dropbox_image to dropbox_media.
We are adding video support to the function in upcoming commits and we
need to rename the function for that to be more generic.
We've also added a proper return type in the name of DropboxMediaInfo
TypedDict for the `dropbox_media` function.
2025-06-30 11:21:32 -07:00
Kislay Verma
1588b72e60 email_notifications: Use with and near operators when applicable.
We currently don't use either of those operators in email
topic links, which breaks the links on topic moves.

Quoting Tim for choosing `near` vs `with`:
"I guess for each case we should decide if we want /near/ links
to /with/ links. We likely want /with/ in some cases, to make
sure we land in the right conversation but not forcing the scroll
position to be on that particular message, which /near/ does."

"I feel like email notifications might want /near/ if the trigger
is a mention or something else that is specific to the message,
rather than the conversation, but probably /with/ otherwise."
2025-06-30 11:19:00 -07:00
Kislay Verma
6bd6f23549 url_encoding: Add support for with message links.
We abstract away "near" vs "with" from the function names and
allow callers to specify whether they want a conversation_link,
ie, use the "with" operator. The default choice is "near".
2025-06-30 11:19:00 -07:00
Aditya Kumar Kasaudhan
9b24e54c54 dropdown_widget: keep_focus_on_search when search is present.
This commit removes the keep_focus_on_search option from the
DropdownWidgetOptions type, and updates logic to always set
keep_focus_on_search when the search box is visible in the
dropdown.

Fixes: #34828.
2025-06-30 11:13:47 -07:00
Aman Agrawal
e7859a5564 scheduled_messages: Use scheduled_ prefix to identify scheduled msgs. 2025-06-30 11:12:45 -07:00
Aman Agrawal
6e63bfc536 scheduled_messages: Avoid unintentionally mutating original data.
Using a copy of the data instead of the original object to help
avoid modifying it unintentionally.
2025-06-30 11:12:45 -07:00
Aman Agrawal
856f6e06a9 scheduled_message: Rename data object for clarity.
This helps identify value stored in the object without additional
comment.
2025-06-30 11:12:45 -07:00