Commit Graph

65280 Commits

Author SHA1 Message Date
Anders Kaseorg
e8fdae8f7b ruff: Fix PLR1733 Unnecessary lookup of dictionary value by key.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-06-25 11:49:02 -07:00
Alex Vandiver
b924169d17 setup-apt-repo: Add libheif PPA, and debian bookworm backport.
libheif 1.18 is required to be able to parse images generated by iOS
18; none of Zulip's supported distributions package libheif 1.18, so
we pull new version of the package from PPA (Ubuntu) or backports
(Debian).
2025-06-25 11:39:18 -07:00
Maneesh Shukla
74b928e3dc add-emoji: Disable browser autocomplete for emoji name input. 2025-06-25 11:36:25 -07:00
Maneesh Shukla
5f0a761512 add-emoji: Redesign buttons in add emoji modal.
This commit redesigns the clear image and add image buttons to new
action button.
2025-06-25 11:36:25 -07:00
Alex Vandiver
0fb87acfa8 help: Make sure curl is installed before calling it. 2025-06-25 11:35:05 -07:00
Alex Vandiver
484928d425 logo: Add BIMI-compatible SVG P/S logo.
Follows https://bimigroup.org/creating-bimi-svg-logo-files/.
2025-06-25 10:58:08 -07:00
Alya Abbott
aa0f1711c7 help: Document channel-specific permissions to move messages. 2025-06-24 16:56:01 -07:00
Vector73
b612351e48 stream_setting: Add setting for who can move messages out of channel.
Adds `can_move_messages_out_of_channel_group` channel-level
permission for who can move messages out of the channel.

Fixes #34243.
2025-06-24 16:52:53 -07:00
Vector73
703601a5d5 stream_setting: Add setting for who can move messages within channel.
Adds `can_move_messages_within_channel_group` channel-level
permission for who can move messages within the channel.
2025-06-24 16:52:53 -07:00
Vector73
43dcc6e3fd bug: Fix incorrect topic resolution check.
Previously, when sending messages to resolved topics, the warning
suggesting to resolve that topic used wrong check to verify if the
user is allowed to resolve the topic. This commit fixes that.
2025-06-24 16:52:53 -07:00
Alya Abbott
1e4bdf1a79 import: Label tweak. 2025-06-24 16:50:05 -07:00
Shubham Padia
4d081c6124 markdown: Make start border of link previews and blockquotes same.
We also want to align them alongside making them look same.
https://chat.zulip.org/#narrow/channel/9-issues/topic/.F0.9F.93.82.20message_inline_ref.20dropbox.20links/near/2191600
2025-06-24 13:48:01 -07:00
Shubham Padia
83755c1aec markdown: Remove unused message_inline_ref.
Fixes #32640.
We cannot remove the styles yet since older dropbox previews will still
be using them. We can remove those in a followup issue.
2025-06-24 13:48:01 -07:00
Shubham Padia
bace83ec5a markdown: Change URL structure for dropbox preview to be up-to-date.
The URL structure for a shared link has changed since this function was
returned and this commit makes sure our code is in compliance with that
structure.

The concept of an album doesn't exist anymore and folders exist in-lieu
of that.

For dropbox links that are folders on non-image files, we show previews
same as any other link previews. It is not possible to get information
about the shared link except whether it is a file or folder. So for
title and description for that linked preview, we use `Dropbox file` or
`Dropbox folder` respectively.

Earlier, we were just having raw=1 as the query param to get the image
file if required, but now for every dropbox sharing link, preserving
query params is important (otherwise we get a 404), this commit makes
changes to address that.

For /sc/ links, it is not possible to generate them anymore (afaik), but
it is possible to view those existing links, so we support that link but
treat it as a folder instead.

You can check
https://www.dropboxforum.com/discussions/101001012/shared-link--scl-to-s/689070/replies/695266
for URL structure info.

We have used inline ignore for codespell since fo can be a valid
misspell of `of` and we don't want to ignore that.

https://chat.zulip.org/#narrow/channel/9-issues/topic/.F0.9F.93.82.20message_inline_ref.20dropbox.20links

Co-authored-by: Tim Abbott <tabbott@zulip.com>
2025-06-24 13:48:01 -07:00
Shubham Padia
22b5744726 help: Remove unused message_handle_match.
A search for `relative|message` returns zero matches. We should remove
this unused part of `help_relative_links`.
2025-06-24 12:54:39 -07:00
Prakhar Pratyush
0be5ea715d hotkey: Ignore keydown events with event.key=undefined.
Some browsers trigger a 'keydown' event with `key === undefined`
on selecting autocomplete suggestion. These are not real keypresses
and can be safely ignored.

See: https://issues.chromium.org/issues/41425904

Earlier, not handling it was resulting in error later in the codepath.
2025-06-24 12:44:16 -07:00
Aman Agrawal
fd911095eb inbox: Fix first row icon visible without user action.
Now the icons will only be visible if user made a relevant
keyboard input or hovers over the row.
2025-06-24 12:08:46 -07:00
Shubham Padia
92d1fcdce6 banners: Change insecure-desktop-app intent and message.
Fixes
https://chat.zulip.org/#narrow/channel/438-release-management/topic/desktop.20minimum.20versions/near/2116356.
We have changed the intent from danger to warning.
2025-06-24 12:07:54 -07:00
Alya Abbott
3207403425 help: Describe topic mentions as separate from wildcard mentions. 2025-06-24 12:07:16 -07:00
Aman Agrawal
5046c8a1a2 register: Fix ToS error overlapping with subscribed checkbox text.
Fixed by using the same set of classes we use to show error when
verifying the form locally.
2025-06-24 12:01:50 -07:00
Karl Stolley
5170a4ad28 widgets: Make poll options clickable. 2025-06-24 10:14:05 -07:00
Karl Stolley
9dec5481eb compose: Set grid-area for iconless channel label. 2025-06-24 10:13:16 -07:00
Kislay Verma
9507b7b36f organization settings: Clean up labels for custom time limits.
We make the text "minutes" agree with the number
in the input field.
In the future, we could make the units configurable
as in the invitation modal.

Fixes #34692.
2025-06-24 10:12:15 -07:00
Varun-Kolanu
d5e9d81957 integrations: Add support for GitLab access token expiry events.
Fixes #34405.
2025-06-24 10:08:56 -07:00
Varun-Kolanu
9f5198bcd1 integrations: Add support for GitLab feature flag events.
Fixes part of #34405.
2025-06-24 10:08:56 -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
Vector73
c406db2480 stream_popover: Fix rename topic placeholder UI.
Previously, the placeholder in the "Rename topic" input
overlapped with the text when renaming the "general chat"
topic. Also, the placeholder was not updated to "general chat"
when the input was empty and lost focus. This commit fixes the bug.
2025-06-23 09:49:56 -07:00
Sahil Batra
8400c24665 groups: Make two fields of GroupPermissionSetting optional.
This commit makes require_system_group and allow_internet_group
fields of GroupPermissionSetting optional with default value of
False. "allow_internet_group" is False for all of the settings
and "require_system_group" is True for only two settings, so it
is better to not having to repeat them for every setting.
2025-06-23 09:49:11 -07:00
Shubham Padia
1e50a98b01 help-beta: Add TODO list to keep track of items before cutover. 2025-06-23 09:48:43 -07:00
Shubham Padia
35e4cf6bf6 help: Ordered list item should always be followed by an indented line.
Our help-beta conversion script expects text to be indented if the text
is part of the same list item. If it is not part of the same list item,
then it expects an empty line just after the list item. This commit
fixes existing instances for the same by searching for regex: `^1\.
.*\n(?!\n)(?!1\.)( {0,1}\S.*)`.

We do not want to add a lint rule for this, since not indenting is not
technically wrong. We will add a TODO list item in the conversion script
for help-beta in future commits.
2025-06-23 09:48:43 -07:00
Shubham Padia
a54d247111 help: Use 1. for numbered lists everywhere.
The conversion script for help-beta assumes that all items in a numbered
list start with 1. which was a wrong assumption. This commit attempts to
fix that. We are not introducing any lint step to tackle this since it
will be easy to just check for this again before the cutover happens.
We do not change this for `numbered-list-examples.md` since that example
shows how the current numbered lists work and we might still want to
show that. We can decide what to do with that file once the time of
cutover arrives.
2025-06-23 09:48:43 -07:00
apoorvapendse
b8e09b3c35 left_sidebar: Support channel-row clicks on the left.
Fixes: https://chat.zulip.org/#narrow/channel/9-issues/topic/Clicking.20the.20right.20end.20of.20DM.20list.20items.20doesn't.20work/near/2192449.

Reference: https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation
Signed-off-by: apoorvapendse <apoorvavpendse@gmail.com>
2025-06-20 16:23:08 -07:00
apoorvapendse
1ce2c96eee topic-box: Support clicking on the left side.
Fixes:
https://chat.zulip.org/#narrow/channel/9-issues/topic/Clicking.20the.20right.20end.20of.20DM.20list.20items.20doesn't.20work/near/2191051.
Signed-off-by: apoorvapendse <apoorvavpendse@gmail.com>
2025-06-20 16:23:08 -07:00
apoorvapendse
0dcb2d110f pm_list_item: Support clicks outside the row-content.
Fixes: https://chat.zulip.org/#narrow/channel/9-issues/topic/Clicking.20the.20right.20end.20of.20DM.20list.20items.20doesn't.20work/with/2189918
Signed-off-by: apoorvapendse <apoorvavpendse@gmail.com>
2025-06-20 16:23:08 -07:00
Shubham Padia
2977bf364e help-beta: Use FlattenList component instead of hacky middleware.
We want to follow the Astro way of doing things and the middleware was
adding more magic + it was violating commonmark spec:
https://spec.commonmark.org/0.31.2/#example-301.

We insert FlattenList component where include files are being
treated as part of ordered lists. Astro renders included files as it's
own component, which would result in multiple ordered lists instead of
a single list if we did not use this component. See the astro component
file itself to know more how FlattenedSteps works.

We are not inserting FlattenList component for files with !!! tip
components, since we need to do it inside the include file. There are 4
such files at the time of writing this comment.
`is_include_only_ordered_list` makes sure of that. We can do the
conversion for it manually during cutover or in a followup PR.

All unordered lists at the time of writing this comment are standalone
components and we do not need to do any transformation for them.

We also changed the order of conversion of include and main files.
Include files are now being converted first to calculate
include_files_info.

Relevant topic:
https://chat.zulip.org/#narrow/channel/19-documentation/topic/Stage.202.3A.20New.20syntax.20for.20imports
2025-06-20 16:18:16 -07:00
Niloth P
9fb06e81b7 integ-docs/hubot: Use a sample API key instead of a placeholder. 2025-06-20 16:04:26 -07:00
Niloth P
59839be9d6 integ-docs: Update the sample site URLs and bot emails.
To use the appropriate context properties.

This commit does not touch the integration docs that do not use the
new integration doc format, as this update will be included in their
format update sweep.
2025-06-20 16:04:26 -07:00
Niloth P
ae98bfe73e docs: Update the example Zulip URL to use "your-org.zulipchat.com".
The context property is not applicable for the developer docs, they
need to be manually updated to match the convention.
2025-06-20 16:04:26 -07:00
Niloth P
aa117366ef help-docs: Update the subdomain manually for Zulip Cloud examples.
Update to maintain consistency with the value of the context property
used in the other docs.

We avoid using the context property for these instances because we
always want them to show "your-org.zulipchat.com" irrespective of the
domain the docs are hosted in. Hence, the manual replacements.
2025-06-20 16:04:26 -07:00
Niloth P
dab97304f6 documentation: Add context properties for subdomain and host segments.
The subdomain and host parts are already used within zulip_url, api_url,
this commit adds them as context properties themselves, so that they
can be used in email addresses and URLs without the URI scheme,
increasing uniformity.

The new context properties `display_host` and `display_subdomain` are
usable in the Help, API docs and Policies.

Occurrences of `*.zulipchat.com` have been updated to use them.
2025-06-20 16:04:26 -07:00
Niloth P
c690177481 documentation: Update the subdomain value used in URL context variables.
From "yourZulipDomain" to "your-org".
2025-06-20 16:04:26 -07:00
Aman Agrawal
623fa98976 narrow_history: Remove invalid assertion.
Since non message views list channel topic list can have a defined
filter, we cannot assume that having `narrow_state.filter` set
implies `message_list.current` is defined.
2025-06-20 15:56:19 -07:00
Aman Agrawal
93c4dcbdc9 hotkey: Merge uses of M hotkey.
It was not a good idea to have the hotkey
fallthrough the `case` for user not being in message list.

We merge both the cases and also remove `M` from
`message_view_only_keys`.
2025-06-20 15:56:19 -07:00
Karl Stolley
062b83bfec compose: Rename classes, CSS vars to reflect attention level. 2025-06-20 15:54:59 -07:00
Karl Stolley
e19b815eaf compose: Rename functions to reflect attention level. 2025-06-20 15:54:59 -07:00
Swastik
ac509eaa66 css: Match arrow color with GIF popover.
Fixes #34772
Matched the color of the triangular tip with the GIPHY logo bar.
2025-06-19 17:52:11 -07:00
Aman Agrawal
b894daaa85 popovers: Remove horizontal scrollbar in GIPHY popover.
Also, center align it using margin instead of `position:relative`.
2025-06-19 17:52:11 -07:00
Karl Stolley
e0860a7635 compose: Experiment with adjusted privacy icon colors. 2025-06-19 17:21:20 -07:00
Karl Stolley
723db3d9a1 compose: Account for textarea focus in mute logic. 2025-06-19 17:21:20 -07:00
Karl Stolley
0c7e445649 compose: Highlight topic box on new-topic hover. 2025-06-19 17:21:20 -07:00