Commit Graph

2544 Commits

Author SHA1 Message Date
evykassirer beead8e614 lazy set: Increase code coverage.
This was pvreviously covered by tests for the buddy list.

We shouldn't rely on other code to complete code coverage
for this module. In the future it would be good to add
more tests to the lazy set tests to directly cover lazy
set functionality.
2023-10-31 16:06:07 -07:00
roanster007 e2a6d0f4b2 input_pill: Fix backspace behavior on selecting text from start.
This commit fixes the behavior of trying to remove the selected
text when selection is made from start in stream membership
input and compose box dm using backspace button.

Previously the selected text was not removed if no typeahead
was shown for the text and it instead removed the last pill.

Now we remove the selected text and not any input pills on
pressing the backspace button irrespective whether tyepeahead
is shown or not.

This commit updated the code to remove pill only when there is no
other text or when the pointer is at start of input but its selection
 length is 0, in the input and let it follow the default behavior in
cases when there is any text (other than user pills) in the input
to fix the bug.
2023-10-31 15:13:27 -07:00
N-Shar-ma ad26247247 compose: Add a placeholder "is …" for the `/me` slash command.
Fixes: #27399.
2023-10-31 12:32:03 -07:00
evykassirer 2f6d3605d9 recent view: Rename topic to conversation. 2023-10-31 10:28:55 -07:00
evykassirer 83e0f8bd33 recent view data: Rename get to get_topics. 2023-10-31 10:28:55 -07:00
evykassirer f786b10403 recent view: Import module instead of separate functions. 2023-10-31 10:28:55 -07:00
Anders Kaseorg 05d8a65f75 user_status: Remove useless number coercion for object keys.
There’s no such thing as a numeric object key in JavaScript.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-30 13:30:47 -07:00
Anders Kaseorg 9989365fe8 user_status: Use unknown, not object, for unvalidated type.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-30 13:30:31 -07:00
Karl Stolley 3f5764e5ba navbar: Correct for alpha background on unread dot's border.
This is a case where the use of alpha channels in HSL color values
shows its limits.

The use of an alpha channel is necessary for the background
elements for the top navbar elements, because they sit over the
top of the navbar's bottom border (actually an inset shaddow).

However, it's impossible to use the alpha-channel based color on
elements like the unread dot, where the border actually sits on
top of the element itself--meaning that the effect would be a
larger dot with an imperceptibly darker ring around it.

What this commit does is use a technique suggested by Anders
Kaseorg for using CSS's `color-mix()` functional notation to
calculate an opaque version of the alpha color for use on
elements that do not or cannot directly take the color with
the alpha channel.

See CZO discussion:
https://chat.zulip.org/#narrow/stream/6-frontend/topic/alphas.20in.20color.20definitions/near/1670102
2023-10-30 11:25:12 -07:00
Lalit Kumar Singh dcf45da09c ts: Migrate `user_status` module to TypeScript.
Also removed an defensive if check from `emoji.ts` since it is not
needed now that we have `emoji.ts` converted to TypeScript.
2023-10-30 11:10:47 -07:00
Aman Agrawal e1960670ca hello: Make logos more visible in light theme. 2023-10-30 11:05:02 -07:00
Karl Stolley 825a7106c6 left_sidebar: Use DM identifiers around direct-messages list. 2023-10-30 10:14:28 -07:00
Karl Stolley dcd891a176 left_sidebar: Use dm-list class. 2023-10-30 10:14:28 -07:00
Karl Stolley 01ca3e119b left_sidebar: Use DM identifiers on DM containers. 2023-10-30 10:14:28 -07:00
Karl Stolley f496b40cd6 left_sidebar: Use DM identifiers on DM list items. 2023-10-30 10:14:28 -07:00
Karl Stolley 9062c75481 left_sidebar: Use DM identifiers on DM row box. 2023-10-30 10:14:28 -07:00
Karl Stolley a175c3829c left_sidebar: Clean up DM list structures and selectors.
This adds some temporary styles to preserve the DM row layout
as-is, but that will be removed as part of the grid implementation.
2023-10-30 10:14:28 -07:00
xoldyckk 8b3f8d77b0 zform validation: Migrate validation logic to zod.
Migrated zform validation logic to make use of zod schema.
2023-10-27 16:14:51 -07:00
Aman Agrawal 2d033c94d9 recent_view: Fix user unable to focus change_visibility_policy icon.
`recent_view_focusable` class should be set on element whose
children can receive focus as per

`$topic_row.find(".recent_view_focusable").eq(col).children().trigger("focus")`
2023-10-27 13:26:36 -07:00
Lalit 151d51acfa input_pill: Remove over defensive if checks for `create` function.
We should remove this overly defensive code and remove the `undefined`
type from the return type of this function to avoid handling unexpected
`undefined` values in the downstream code.
2023-10-27 13:11:37 -07:00
Karl Stolley 01392a57dd left_sidebar: Resize scroll container when toggling condensed views. 2023-10-27 12:07:49 -07:00
evykassirer 0a33598f65 compose fade: Add test for want_normal_display. 2023-10-26 18:33:53 -07:00
evykassirer 6563e621fd buddy list: Simplify argument to get_data_from_keys. 2023-10-26 18:33:53 -07:00
Tim Abbott e560519dba portico: Fix new organization form focus scrolling.
Now that the "new organization" form is quite tall, we were seeing
this autofocus logic causing the browser to automatically scroll to
the middle of the form (to reach the first editable input), which felt
like a pretty bad user experience.
2023-10-26 16:27:35 -07:00
Tim Abbott a379fbe442 portico: Inline common.autofocus.
This was only called from a single code path.
2023-10-26 16:27:35 -07:00
Vector73 e442a9d11e user_profile: Sort arguments to "render_user_profile_modal". 2023-10-26 13:17:28 -07:00
Vector73 6dd7efae85 user_profile: Fix alignment and color of edit icon. 2023-10-26 13:17:28 -07:00
Vector73 4a4b8dff99 user_profile: Add deactivated user indicator in the profile header.
Fixes: #26861
2023-10-26 13:17:28 -07:00
Sahil Batra c9fccf476a settings: Rename default_view and escape_navigates_to_default_view.
This commit renames default_view and escape_navigates_to_default_view
settings to web_home_view and web_escape_navigates_to_home_view in
database and API to match with our recent renaming of user facing
strings related to this.

We also rename the variables, functions, comments in code and class
names and IDs for elements related to this.
2023-10-26 11:00:12 -07:00
Tim Abbott 67dbaaff91 input_pill: Fix backspace with selected text.
The logic added in b57ebe717e introduced
a different bug, namely that if you had selected text in the input,
Backspace would delete the input pill itself, not your selected text.

Fix this, without re-introducing the old bug, by checking explicitly
if there's a range selected before inspecting anchorOffset.

Also improve the comments.

Fixes #19544.
2023-10-26 10:41:45 -07:00
Karl Stolley 61aa55df79 navbar: Clean up unecessary userlist-toggle cruft. 2023-10-26 10:28:02 -07:00
Karl Stolley a9421f6ba0 navbar: Use new purple icon color with left-sidebar toggle.
This also implements the same hover and focus-visible styles
as icons on the righthand side of the navbar.
2023-10-26 10:28:02 -07:00
Karl Stolley 1f0e9b4587 sidebars: Correct display at small mobile sizes.
This fixes a state where the expanded left sidebar appears under
the navbar at the smallest mobile views.

It also provides a stop-gap fix for the right sidebar's USERS
heading, making it align better (but certainly not perfectly)
with the left sidebar's.
2023-10-26 10:28:02 -07:00
Karl Stolley 105729ce66 navbar: Simplify unread logic on left-sidebar toggle indicator.
This removes former animation logic as well as counts, as the
redesign calls only for showing an unread dot in the presence
of unreads.

Fixes: #27357
2023-10-26 10:28:02 -07:00
Karl Stolley 8ee764382b navbar: Show left-sidebar-style unread dot on streams toggle. 2023-10-26 10:28:02 -07:00
Karl Stolley 4409663e69 navbar: Handle streams-toggle alignment with dimensions, flexbox. 2023-10-26 10:28:02 -07:00
Anders Kaseorg 37f0a3b41b eslint: Forbid unchecked casts in TypeScript.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-26 09:54:30 -07:00
Anders Kaseorg 2f95c55df4 list_widget: Fix unsafe unchecked casts in generic comparators.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-26 09:54:30 -07:00
Anders Kaseorg a53231a1ae settings_muted_users: Fix sorting users by date muted.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-26 09:54:30 -07:00
evykassirer ba568adc2e recent_view_util: Rename is_rt_visible to is_view_visible.
This avoids the less readable abbreviation.
2023-10-25 17:35:00 -07:00
Sayam Samal bbf4792d81 right_sidebar: Drop keyboard shortcuts button from right sidebar.
Fixes: #27381.
2023-10-25 16:43:49 -07:00
Anders Kaseorg ba895b64ef stats: Remove unchecked casts of Plotly data.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg a145a6adfa realm_playground: Remove unchecked cast in sort_pygments_pretty_names_by_priority.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg 787ca02c6e messages_overlay_ui: Remove unchecked casts of HTMLElement objects.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg 31db313a46 list_widget: Add missing CSS escaping and remove unchecked cast.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg 043b43f044 typing_status: Remove unchecked casts in same_recipient.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg 9c9c453d5a web: Remove unchecked casts of event objects.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg 1da729e49f web: Remove unchecked casts of jQuery .val().
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg da80661592 e2e-tests: Remove unchecked casts of DOM objects.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Anders Kaseorg af8465b7fd billing: Replace unchecked keyof casts with Zod schemas.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-25 13:08:36 -07:00
Aman Agrawal 18a165fa97 personal_menu: Indicate no status text in italics.
If user has only set emoji as status, we show a placeholder
text to indicate no status text has been set.

Fixes #27362
2023-10-25 11:09:08 -07:00
Aman Agrawal 75aa91a39f user_card_popover: Fix clear link not working.
Incorrectly migrated in 87c87ed41f.
2023-10-25 11:09:08 -07:00
Karl Stolley 3385d5862b left_sidebar: Include right-hand padding on topic, nav labels. 2023-10-25 09:53:05 -07:00
Aman Agrawal af653572a1 recent_view_ui: Return if the list is empty.
Since we now have empty text message as a table row,
`$topic_rows.length === 0` no longer works to test if the
table is empty.
2023-10-25 09:52:23 -07:00
Karl Stolley 4fac53e35c left_sidebar: Restore and note positioning context for unread dots. 2023-10-25 08:17:11 -07:00
Tim Abbott db05d7ef0c css: Revert sidebar-menu-icon specificity change.
3ac0c3c401 incorrecly removed
specificity declarations needed to prevent that CSS from applying to
the right sidebar, which hasn't been properly prepared for this
change.
2023-10-24 16:23:30 -07:00
Aman Agrawal 464aff1f21 make_my_home_view: Show view name in bold. 2023-10-24 16:16:56 -07:00
Aman Agrawal 2f33fad5df left_sidebar: Add popover to make different views default.
Fixes #27324
2023-10-24 16:16:56 -07:00
Aman Agrawal 7f124500fa inbox_popover: Add option to make it the default view. 2023-10-24 16:16:56 -07:00
Aman Agrawal ce804fc37a navbar: Remove userlist unread count. 2023-10-24 13:57:27 -07:00
Aman Agrawal 6f6a53c909 help-menu: Center align keyboard shortcut hint. 2023-10-24 13:06:11 -07:00
Karl Stolley 1a18faaf02 left_sidebar: Increase size of condensed icons. 2023-10-24 12:29:45 -07:00
Karl Stolley 3ac0c3c401 left_sidebar: Correctly align vdots across all rows.
This brings modern alignment methods to all vdots instances,
including in views, streams, and topic rows.

This also aligns the vdots in the condensed view row with
all the others in the left sidebar.
2023-10-24 12:29:45 -07:00
Karl Stolley 21908b7a9e left_sidebar: Vertically align all vdots. 2023-10-24 12:29:45 -07:00
Karl Stolley 528f494d41 left_sidebar: Establish filter rows as grids. 2023-10-24 12:29:45 -07:00
Karl Stolley 56eaf9b153 left_sidebar: Place redesign icons in expanded views. 2023-10-24 12:29:45 -07:00
Animesh Biswas 7da9ca771f
settings: Change bot-type question to help center link.
In the "Add a new bot" modal, there was '?' next to the bot type field
that was confusingly showing a tooltip describing incoming webhooks,
regardless of the bot type have been selected.

The tooltip is removed from the '?' and it is linked to the help center
article explaining all the different bot types.

Fixes #27047.
2023-10-24 10:08:13 -07:00
David Rosa 56ccaa571e settings: Update topic notifications help center links.
- Updates the `?` link on "Topic notifications" and "Topic settings"
  to go to the new /help/topic-notifications page.
- Adds links to /help/follow-a-topic and /help/mute-a-topic.

Fixes #27297.
2023-10-23 18:37:41 -07:00
Sayam Samal 92b3fcbad2 left_sidebar: Add "This is your home view." to the home view's tooltip.
Fixes: #27325.
2023-10-23 17:37:56 -07:00
Anders Kaseorg 6880d6c299 keydown_util: Use JQuery.KeyboardEventBase type.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-23 16:47:32 -07:00
Anders Kaseorg a9136f13ca poll_widgets: Fix types used for jQuery .val().
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-23 16:47:32 -07:00
Aman Agrawal 07dcf66c72 navbar: Remove stale focus-dropdown code.
We don't need this since we migrated the dropdown to tippy which
handles the navigation via popover_items_handle_keyboard.
2023-10-23 14:15:13 -07:00
Aman Agrawal 75c874fef6 personal_menu: Fix focus outline of clear status icon. 2023-10-23 14:15:13 -07:00
Aman Agrawal 87c87ed41f personal_menu: Rename clear_status class. 2023-10-23 14:15:13 -07:00
Aman Agrawal 79acefae4c css: Remove unused hotkey-hint style.
The one we use in tooltips is defined in tooltips.css.
2023-10-23 14:15:13 -07:00
Aman Agrawal c5564668c5 help_menu: Use new style to show hotkey.
This is according to Vlad's design in figma which differs from the
style we have in `tooltip-hotkey-hint`.

I used font-weight: 500 instead of 400 as it looked nicer and since
Vlad used Source Sans Pro as font-family which we don't have.
2023-10-23 14:15:13 -07:00
Aman Agrawal 3d870a1f7d popovers: Use fixed height for navbar-dropdown items.
This helps us add elements like hotkey hint which can take more
space that available for text. There are no visual changes.

Removed some duplicate properties too.
2023-10-23 14:15:13 -07:00
Aman Agrawal 8f716cd64a help_menu: Extract help items from gear menu into a separate popover.
Fixes #27202
2023-10-23 14:15:13 -07:00
Aman Agrawal 2b9dc1f398 hotkey: Avoid inconsistent hotkey handling.
Pressing `r` to open compose box, or search via hotkey didn't work
for gear menu while it worked for other popovers. So, this is an
attempt to unify that behavior so that if the hotkeys are not
handles the navbar_menus popovers, then can be handled elsewhere.
2023-10-23 14:15:13 -07:00
Aman Agrawal a210006ecd popovers: Hide when starting certain actions.
These are actions which can be called when a popover is open and
it is better to close the popover when these actions are
initiated.
2023-10-23 14:15:13 -07:00
Aman Agrawal c9891b4121 hotkey: Make g + left / right arrow work to open navbar dropdowns.
While gear menu is open, press right arrow to go to personal menu
and left arrow to open gear menu again.
2023-10-23 14:15:13 -07:00
Junyao Chen 23d34ca457 ts: Migrate `poll_widget.js` to TypeScript.
Added type annotations.
2023-10-23 09:33:47 -07:00
Junyao Chen 6840715222 poll_data: Define outbound data types for each message type.
This commit introduces specific outbound data types for each
message type for reusability. For example, `poll_widget.ts` reuses
these types.
2023-10-23 09:33:47 -07:00
Junyao Chen 721fbb1bed keydown_util: Extend event type for `is_enter_event` function.
To accommodate both keydown and keyup events, this commit updates
the function signature to accept both `JQuery.KeyDownEvent` and
`JQuery.KeyUpEvent` types. An example of using keyup event is in
`poll_widget.ts`.
2023-10-23 09:33:47 -07:00
Junyao Chen 789d052116 poll_widget: Use `.prop()` but not `.attr()` for button disabled state.
This commit sets the "disabled" property of buttons using `.prop()`
method instead of `.attr()`. The `.prop()` method satisfies type
check requirements for boolean properties like "disabled", while
`.attr()` method requires string type property.
2023-10-23 09:33:47 -07:00
N-Shar-ma 82f105aada popovers: Fix bug where modals persisted on hashchange.
Modals like those for Read receipts, Schedule message, Message edit
history, User profile, etc would not close when the hash changed.

Now we close any active modal whenever the hash changes; we add a new
function in `modals.ts` to do this, and call it from `hashchange.js`.
2023-10-22 14:56:06 -07:00
Prakhar Pratyush 3f2ab44f94 follow_topics: Remove the 'development' guard.
This commit removes the 'development' guard and makes
the UI changes related to the 'Follow Topics' project visible
outside the development environment.

Cleans up the older UI elements related to mute and unmute topics.
2023-10-22 14:24:22 -07:00
Aman Agrawal 5dba15160d css: Fix dark theme hover color for copy invite link.
Extracted colors into variables and used them inside the id to
solve the specificity issue.
2023-10-22 14:21:16 -07:00
Aman Agrawal 18475a10d7 copy_invite_link: Append tooltip to body.
This helps us get the desired `placement: top` for the tooltip
which is also where to copied confirmation tooltip is displayed.
2023-10-22 14:21:16 -07:00
tamara 96e3ad9311 invite: Add copied confirmation tooltip on invite link.
Fixes #26872
2023-10-22 14:21:16 -07:00
Aman Agrawal 09ab0f3c18 bootstrap: Remove bootstrap-dropdown library.
Gear menu was the last piece of dropdowns which used this. Since
we migrated it to tippy, we don't need this library.
2023-10-21 10:54:32 -07:00
Aman Agrawal e4ae826a47 inbox: Improve look of empty inbox view. 2023-10-20 17:13:33 -07:00
Aman Agrawal af271be1bd navbar-dropdowns: Use specific classes for everything.
Replaced element selectors with specific selectors, those that
remain are intentionally left.

This is to avoid inner-most selectors as element selectors.
The reason being is that browsers evaluate selectors from right
to left, meaning that every time a selector ends in an element,
the browser has to work that much harder whenever and wherever
on a page it encounters the element.
2023-10-20 12:36:39 -07:00
Aman Agrawal 2efc2a5eb5 gear_menu_dropdown: Use better class name for theme buttons. 2023-10-20 12:36:39 -07:00
Aman Agrawal 51797809c4 header-button: Add background effects to different states. 2023-10-20 12:36:39 -07:00
Aman Agrawal f9e7b814d6 navbar-dropdown-menu: Use focus-visible instead of focus. 2023-10-20 12:36:39 -07:00
Aman Agrawal 961693c354 gear_menu: Extract common hidden-for-spectators.
This avoids double borders in spectator view.
2023-10-20 12:36:39 -07:00
Aman Agrawal 05a640300a gear_menu_popover: Remove presentation role.
We want to remove their semantics from accessibility tree.
2023-10-20 12:36:39 -07:00
Aman Agrawal 64ff483e27 gear_menu_popover: Use semantically correct HTML structure.
Using `ul > li > ul > li` here since that's the correct structure.
2023-10-20 12:36:39 -07:00
Aman Agrawal 1e3e70576b gear_menu: Extract the new gear and personal menu style as a theme.
This also fixes some misalignment happening at some widths for gear
menu. Like at XL widths for spectators.
2023-10-20 12:36:39 -07:00
Aman Agrawal 67ba59f6e8 dropdown_list: Remove not useful role=menuitem.
Since the parent `ul` has doesn't have role=menu and `ul/li` elements
don't need a be specified a role anyway. We don't need it.
2023-10-20 12:36:39 -07:00
Aman Agrawal ffcf792cc9 gear_menu: Use navigate-link-on-enter class instead of role=menuitem.
The class name make more sense give what it does.
2023-10-20 12:36:39 -07:00
Aman Agrawal 246c1d7b4e hotkey: Call click() on elements with menuitem role in popovers. 2023-10-20 12:36:39 -07:00
Aman Agrawal 7932d49956 gear_menu_popover: Allow user to focus on these items.
These don't have an href attribute to use tabindex to
enable focus.
2023-10-20 12:36:39 -07:00
Aman Agrawal bc3d48616e gear_menu: Migrate to use tippy. 2023-10-20 12:36:39 -07:00
Aman Agrawal 1e93540d3b navbar: Use new icon for user list toggle.
This needs to be done along with gear menu for navbar to look nice.
2023-10-20 12:36:39 -07:00
Aman Agrawal a7f328d593 gear_menu_popover: Remove small-font-size class.
We can apply the required CSS to directly the org types.
2023-10-20 12:36:39 -07:00
Aman Agrawal 5cbf8ad91a gear_menu_popover: Format "About Zulip" item like other items. 2023-10-20 12:36:39 -07:00
Aman Agrawal d75df10729 gear_menu_popover: Move *-theme class to the li element.
It will help us hide the whole `li` element instead of just
`a` tag for spectators.
2023-10-20 12:36:39 -07:00
Aman Agrawal 897c19d17d css: Add box-shadow to navbar dropdown menu as per figma design. 2023-10-20 12:36:39 -07:00
Aman Agrawal 41c06e2989 CSS: Extract common CSS for .navbar-dropdown-menu. 2023-10-20 12:36:39 -07:00
Aman Agrawal e95b105566 gear_menu_popver: Use link-item class for li elements. 2023-10-20 12:36:39 -07:00
Aman Agrawal cac411abc9 gear_menu_popover: Use better class and id name for gear-menu. 2023-10-20 12:36:39 -07:00
Aman Agrawal 12ea256e47 gear_menu: Extract dropdown part of gear menu. 2023-10-20 12:36:39 -07:00
Aman Agrawal 063669a921 gear_menu: Use new icons. 2023-10-20 12:36:39 -07:00
Sayam Samal 24d74f68ee compose: Show pronouns in compose typeaheads.
This commit adds the pronouns custom profile field to the typeaheads in
the composebox along with the necessary node tests.

Details of the implementation:
- Added logic to display pronouns in ( ) next to the user's name when
  the user has a non-empty pronoun-type custom profile field.
- If multiple pronoun fields exist in the organization, the
  implementation selects the one earlier in the list of custom profile
  fields.
- No pronouns are displayed if the selected pronoun field is empty.

Fixes #26924.
2023-10-20 12:30:21 -07:00
Aman Agrawal 61bf72d30e empty_feed_notice: Style empty message feed similar to other views. 2023-10-20 12:29:45 -07:00
Karl Stolley 8e7265fbb4 left_sidebar: Correctly handle focus on views controls. 2023-10-20 12:27:19 -07:00
Karl Stolley c3062e80bb left_sidebar: Place redesigned icons in views popover. 2023-10-20 12:27:19 -07:00
Karl Stolley 2c8a688983 left_sidebar: Place redesign icons in condensed views. 2023-10-20 12:27:19 -07:00
Karl Stolley 4a8f2773a8 icons: Add remaining views icons. 2023-10-20 12:27:19 -07:00
Karl Stolley 9535b5dbe0 left_sidebar: Add informational tooltips to condensed icons.
Though there is currently no keyboard shortcut to advertise with
these icons, both the star and the @ icons now have informational
tooltips, to match other icons in the condensed view.

Fixes: #25902
2023-10-20 12:27:19 -07:00
Karl Stolley 24d300f3fd left_sidebar: Tune icon sizes for condensed presentation.
This slightly increases the size of the clock for recent
conversations, and descreases the size of the left-aligned icon
for all messages.

Icon sizes in the expanded view are left untouched.
2023-10-20 12:27:19 -07:00
Karl Stolley 41635566fd left_sidebar: Improve logic for showing Scheduled messages. 2023-10-20 12:27:19 -07:00
Karl Stolley 46ce408a5f left_sidebar: Add a 3-dot menu to condensed views.
Co-Authored-By: Hardik Dharmani <Ddharmani99@gmail.com>
2023-10-20 12:27:19 -07:00
Karl Stolley 4dd1bf7e32 left_sidebar: Expand and condense the VIEWS navigation. 2023-10-20 12:27:19 -07:00
Karl Stolley 3e78a792c1 left_sidebar: Move initialize() to end of file. 2023-10-20 12:27:19 -07:00
Karl Stolley 458d6411b4 left_sidebar: Handle condensed icon unread states. 2023-10-20 12:27:19 -07:00
Karl Stolley 9f5ca4f6f7 left_sidebar: Set backgrounds on condensed icon visible and hover. 2023-10-20 12:27:19 -07:00
Karl Stolley 7774abfe04 left_sidebar: Structure Views header with standalone icons.
This also introduces a combo grid/flex layout, which will also be
applied to the DM and Streams headings.

Because there are now multiple classes referenced from the
Puppeteer tests, those selectors now include the expanded
navigation area's parent ID selector.
2023-10-20 12:27:19 -07:00
Aman Agrawal 66d70eb8bf recent_view: Use more precise calculation for checking if row visible. 2023-10-20 10:10:19 -07:00
Aman Agrawal a1ba142047 resize: Use correct id for recent view filter buttons.
This seems to have left out in the renaming of recent view from
recent table -> recent conversations -> recent view.

`recent_view_filters_height` being `0` resulted in table having
more height than it should have, so when focus was set on a
hidden row, it somehow scrolled the whole table.
2023-10-20 10:10:19 -07:00
Aman Agrawal 454e22068b views_util: Remove duplicate call to resize filters height.
Added by mistake.
2023-10-20 10:10:19 -07:00
Prakhar Pratyush e7275d7e64 compose_banner: Fix the incorrect translation tags.
This commit fixes the translation tags in
'automatic_new_visibility_policy_banner.hbs'.

The incorrect tags were introduced in 7c46085.
2023-10-20 10:07:38 -07:00
Aman Agrawal b6fb77525f hello: Adjust padding in client logos to be similar to original design.
Since Vlad used zoom in the original design and we used transform
since zoom was not supported by all browsers, some details got
lost in transition.
2023-10-20 10:04:46 -07:00
Aman Agrawal 41f26aebd9 hello: Make cta icons have similar spacing to original design.
There were lost when we converted inline svgs to files.
2023-10-20 10:04:46 -07:00
Prakhar Pratyush d1f82c47fd compose_banner: Show banner when automatically follow or unmute topic.
When we send a message and that causes a topic to be automatically
followed or unmuted due to the automatic visibility policy settings,
we tell the user via a post-send-message compose banner.

The "notify_unmute" banner is not shown when the topic has already
been unmuted or followed due to these policies.

Fixes part of #26900.
2023-10-19 10:13:04 -07:00
Hardik Dharmani 31b3f8762f gear_menu: Add new SVGs.
These icons are used in the gear menu.
Added thirdparty after talking with Vlad.
2023-10-18 22:02:38 -07:00
Aman Agrawal b542984869 personal_menu: Fix semantics of personal menu HTML structure.
Only valid tag inside `ul` is `li`. So, we use `ul > li > ul > li`
structure here.
2023-10-18 22:02:38 -07:00
Aman Agrawal 54a5aec013 popover_menus: Directly get visible anchor tags.
Instead of checking for anchor tags within visible `li` elements,
it is just better to check directly for visible anchor tags.
2023-10-18 22:02:38 -07:00
Aman Agrawal 56a3f3ff3e personal_menu: Rename popover-menu to dropdown-menu-list-section.
There were no CSS changes related to `popver-menu` class.
2023-10-18 22:02:38 -07:00
Aman Agrawal 06f14a8caf personal_menu: Use a more specific name for `.inner` class. 2023-10-18 22:02:38 -07:00
Aman Agrawal b2dd2d6d29 personal-menu: Rename dropdown-menu to navbar-dropdown-menu.
This will contain common css to be used between navbar dropdowns
gear menu and personal menu.
2023-10-18 22:02:38 -07:00
Aman Agrawal 7d1a6c7388 gear_menu: Extract context data to popover_menus_data. 2023-10-18 22:02:38 -07:00
Aman Agrawal a5e60f47b6 gear_menu: Move from TS to normal JS module.
Need to convert gear menu to popover.
2023-10-18 22:02:38 -07:00
Aman Agrawal f91236f917 gear_menu: Extract version_display_string into a util library.
This will keep changes to a minimum when we migrate gear menu
to use tippy module.
2023-10-18 22:02:38 -07:00
Anders Kaseorg 8d42fa3960 stream_edit: Fix set_stream_property usage.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-18 16:26:36 -07:00
Sahil Batra 08e5e29054 user_profile: Show subscribe widget for others to non-admins.
We now show subscribe widget in user profile modal for others
to non-admins if user is allowed to subscribe others to streams.
2023-10-18 15:28:46 -07:00
Sahil Batra 180ed2e50f user_profile: Show streams to subscribe for user's own profile.
We did not show the streams to subscribe in dropdown in user
profile modal when user is not allowed to subscribe others
even in the user's own profile modal which is not correct.

This commit fixes it to show the streams in dropdown for
user's own profile irrespective of whether user is allowed
to subscribe others or not.
2023-10-18 15:28:46 -07:00
Sahil Batra 8c45e1dfed user_profile: Remove unnecessary filter call.
There is no need to filter down the streams returned
by get_streams_for_user to the streams for which
stream_data.can_subscribe_others is true, as
get_streams_for_user(user_id).can_subscribe only includes
the streams for which stream_data.can_subscribe_others
is true.

This commit removes the unnecessary filter call.
2023-10-18 15:28:46 -07:00