The transitions here do not work correctly across all
states, and directly interfere or look goofy with the
transitions in the recipient-row area.
Particularly with the removal from #message-content-container,
that had the annoying effect of just delaying the
appearance of the focus border, regardless of whether
focus was established via keyboard or mouse.
Previously, if the mouse cursor were in the vicinity of
the compose box, we'd see transitions even on keyboard
interactions, which should not have been happening.
This also allows instantaneous highlighting for keyboard
users, as well as avoiding any transitions when a
mouse user clicks into a recipient-row element (at
which point the hover transitions will have already
run).
It's not good form to register an event handler on a
function that runs fairly frequently--especially one
that stands to override another listener's handler.
Previously, private stream row was removed from the relevant
tab view in left panel in stream settings UI when a user was
subscribed or unsubscribed. Now we only remove the row if the
user does not permission to toggle the subscription state just
like we do for public streams where we keep the row as user
can toggle the subscription state again.
Also updated the comment in update_stream_row_in_settings_tab
to be more clear about the behavior.
This commit replaces "Not subscribed" tab in stream settings
with "Available" tab where only streams which the user can
subscribe to are shown.
Fixes#35919.
If one of the filters is focused or if we cannot determine the
current focus location, any rerender call will scroll user to
top.
Fixed by only scrolling to top when navigating from other views
and when we don't have a cached scroll position.
Tested by calling `complete_rerender` at 1s intervals.
The "light-border" theme was set as the default theme for all the
popovers, but was no longer in use, since all of our current popovers
either use the "popover-menu" theme or the "dropdown-widget" theme.
In response to the above reasoning, this commit removes the redundant
"light-border" Tippyjs theme usage from the codebase.
In the light theme, the user profile modal tables were using two
different border colors, both very similar to one another. This commit
consolidates them into a single border color for consistency.
Previously, we were using the ".home-page-input" selector to check for
any focused input elements in the home page view of the Zulip Web UI.
Since all of these inputs, other than the navbar search input have now
been converted to filter inputs, we can simplify the logic to check for
any focused input elements with the ".input-element" selector.
The navbar search input has a different selector, "#search_query",
which is already accounted for in the views_util.is_in_focus() method.
Now, ".input-element" class will potentially be used for several other
inputs in the UI other than the home page view, but the is_in_focus()
method already accounts for other focused elements like compose,
overlays, popovers, etc, and thus the logic remains unaffected.
Fixes part of #35135.
The feedback container doesn't have a border so it doesn't make sense
to have a border color defined for the dark theme, and the hover color
change on the `a` tag was an unintended side effect of
commit d73a5d06c0, which while correcting
the hover effect on the typeaheads, also affected the link hover styles
in the feedback container.
This commit, due the reasons mentioned above, removes the entire CSS
block related to the feedback container from web/styles/dark_theme.css.
Fixes part of #35880.
Previously, the modal text stated, "This action cannot be undone."
However, since it is now possible to reactivate the user-group at any
time, we should update the modal text to reflect this change.
This will make it easier to type the raw message in
process_new_message. The blueslip error is left here
as a precaution, but I'm fairly confident that if
RawMessage and LocalMessage both have reactions then
that codeblock will never be called.
The only LocalMessage is created in insert_local_message
which has `content_type: "text/html"`.
This change lets us create LocalMessage objects with data
parsed from raw_message_schema.
Hidden folders occupied space due to bottom margin.
Fixed by moving the margin to elements which have `display: none`
property so that margin is removed.