The invite user modal's tab toggler was being hidden when all the steps
mentioned in the invite tips banner were fulfilled. This happened due
to an error in logic in commit 8a06a6e108
which returned early in the common codepath, when the banner was not to
be shown, preventing the tab toggler from being initialized & rendered.
`views_util.is_in_focus` didn't account for pill elements, which
resulted in expanded topic search in left sidebar being bugged.
Fixed by checking for `focused_element.isContentEditable` which
is always true for focused pill input elements.
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
The default height for the action buttons equalled to 28px at 16px/1em
due to the line-height of 1.25 applied to the label element inside
the button. However, the icons inside the button did not have any
line-height specified, which made the icon-only action buttons slightly
shorter than the buttons with labels. This commit adds the same
line-height to the icons inside action buttons to ensure a consistent
height across all action buttons.
This commit also modifies the padding for the inline topic edit buttons
to counter the increased line-height of the icons, ensuring these
buttons fit the receipient bar.
This fixes the weird behavior that occurs when you click
on some message belonging to a stream where you cannot
post.
Currently, this open the stream recipient dropdown filter
which is confusing.
With this fix, we avoid opening the composebox on clicking
some message belonging to a stream where the user is not
allowed to post.
Using the `R` hotkey triggers a toast stating that
the user cannot reply to that conversation.
And pressing `C` opens up the composebox in the
"Start New Conversation" state with the stream filter
dropdown open.
Fixes: #35866.
Discussion: https://chat.zulip.org/#narrow/channel/9-issues/topic/Recipient.20filter.20appears.20on.20clicking.20some.20message
Signed-off-by: apoorvapendse <apoorvavpendse@gmail.com>
Since we have the complete list of topics of the channel when
showing list of topics view for the channel, we update
the channel in left sidebar as the new fetched data.
This provides a nicer experince for old channels for which we
don't have any messages to extract any topic info from.
This commit adds a `+` button inside compose-direct-recipient box
which on click moves focus to private_message_recipient and opens
up the dm recipient typeahead.
Fixes: zulip#34848.
We use `#recipient_box_clear_topic_button` to apply styles to the
clear topic button. We may end up adding this button to separate
places as well. It will be better to scope the styles to a common
class name and apply it throughout all buttons.
Removes the CSS rules for upgrade-or-sponsorship-tip and upgrade-tip
as they no longer are in use.
The last use of upgrade-or-sponsorship-tip was removed in commit
a93a015b2.
The last use of upgrade-tip was removed in commit 021af590e.
This will help us club various fetch user calls especially during
initial app load to avoid us hitting API rate limits.
Also, added inifite retry to fetch user on failure.
We do check if the user is in `valid_user_ids` before each retry,
so we will know if the user becomes invalid.
This removes kludgy font-size adjustments on the group
icon, whose path was previously smaller than the 16x16
viewbox.
By adjusting the icon to take up the full width, it is
no longer necessary to fiddle with the icon's size, in
keeping with the app-wide move to 16x16 icons.
That simplifies some headache-inducing sizing and
calculations on the typeahead as well.
This commit ensures that the pill color is consistently purple across
the app including the display only pills.
Pills appearing inside of .person_picker elements also receive a hover
color.
Display-only pills do not take a border when clicked.
Fixes: #34815.
Previously, the pill image was hiding the box shadow of the pill upon
hovering.
We correct this by placing the same .pill-image-border element used
in other pills in the app.
Fixes part of #34815.
Since the pill-container containing display_only_pills
will never be a container with more than one pill, it is sufficient
to override the default pill-container styles.
Fixes part of #34815.
The .zulip-icon selector replaced here was introduced in
6f4d14ddde, which was
targeted at channel privacy icons.
This fixes poor alignment especially noticeable on the
closing X icons on input pills, e.g., in the Groups
permissions area.
- We rename a bunch of functions in integrations.ts to better reflect
the work they do after integrations page started being rendered server
side.
- Use .search_input class instead of input[type="text"] for integrations
searchbar.
- Use elif instead of if in build_integration_doc_html when checking
the type of an integration.
Co-authored-by: Niloth P <20315308+Niloth-p@users.noreply.github.com>
We redirect existing URLs to the new URLs. We want to use
`/integrations/category/{category_slug}` for categories and
`/integrations/{integration_name}` instead of
`/integrations/doc/{integration_name}` for individual integrations page.
Decision made in https://chat.zulip.org/#narrow/channel/19-documentation/topic/integrations.20docs.20per-page.20info/near/2268569
Integrations and the related docs were all running as an SPA. But to run
them in single page, we had a lot of logic on the frontend to make this
happen. We noticed that we missed to replicate page title changes on the
frontend. With the added burden of maintaining that integrations.ts page
navigation code and the uncertainty of not knowing what we might have
missed to replicate on the frontend, we decided to just render all the
pages server side while keeping our search on the backend.
This commit splits index.html into two templates, catalog.html for
integrations catalog and doc.html for the individual integration details
page.
We use a @typed_endpoint instead of a class based view since there are
very few class based views left in our codebase and this felt like a
nice opportunity to have integrations use them as well.
We port over any special non-navigation logic we were doing in
integrations.ts serverside.
We used to use animations for the lozenges when changing categories, we
don't do that anymore, since every category is a new page fetch and
animation does not make sense in that case.
We also port over the logic of adding the `without-category` class to
the lozenge icon on the indivdidual integration doc page.
We have a few integrations with legacy set to true. We used to set
their display to none in the CSS for the catalog page and we used to
remove that legacy class in integrations.ts for the individual doc page.
We remove legacy integrations from `visible_integrations` now, while the
individual doc page of the legacy integration works just fine without
the use of `legacy` class anywhere.
Since it is now possible to generate export with no usable owner
accounts, this adds a couple of warning notes in the "Start export?"
confirmation modal:
- A note indicating the number of unusable user accounts after export
→ import due to inaccessible user emails.
- If there are any owner/admin accounts in that list, an additional
note will display their names.
Fixes#34275.
If the new message for topic edit arrives before the topic update
event, the recent view ui ends up in a broken state due to the
way we process these events.
Best way to avoid this bug and similar race bugs of this kind is
just to do a complete rerender.
This commit updates the CSS to use the background color
as per latest designs for non-editable text input in
modals along with setting the opacity to 0.7 for them.
This helps in maintaining clear distinction between
which text inputs are editable and which are not.
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
This commit adds enable_group_permission_setting function,
similar to already existing disable_group_permission_setting,
which is used to enable the group setting pill container.
This commit also updates the code to use
disable_group_permission_setting where we can and were not
using before.
This commit updates the code to live update stream private stream
options and default stream option in stream settings UI to use
separate functions.
Previously, a single function was used in most of the cases which
updated the default stream option and then called the function to
update private stream options. This is a preparatory commit
to help organize the code for disabling the private stream options
based on the other conditions which does not affect default stream
option.
There was a bug where the private stream options were live
updated when a user gained access to create private streams
even if the stream was set as a default stream which cannot
be changed to private.
This was because update_private_stream_privacy_option_state
used "false" as default for "is_default_stream" parameter.
This commit updates the code to compute is_default_stream
value in update_private_stream_privacy_option_state itself
to avoid any such bugs and this also helps in refactoring
in further commits.
Going to `show more topics` and selecting a topic resolved filter
pill and then navigating back to main left sidebar would result in
the topic list still filtering based on the previously selected
resolved filter.
This commit fixes this behaviour by clearing the topic filter
status on zooming out.
This commit adds a 10px gap in user_profile_subscribe_widget so that
there is space between the channel dropdown and subscribe button
in narrow window.
Earlier, group membership list for users in user_profile was rendered
using table.
This commit redesigns group membership to a scrollable container.
Fixes: zulip#34807.
Earlier, subscribed channels in user_profile channels tab was
rendered using table.
This commit redesigns the subscribed channels list to a
scrollable container list.
Fixes part of zulip#34807.