Open Bug 1985692 Opened 11 months ago Updated 20 days ago

142.0.1 sidebar expand-on-hover behavior breaks if mouse leaves the sidebar from the "wrong" side

Categories

(Firefox :: Sidebar, defect, P3)

Firefox 142
defect

Tracking

()

ASSIGNED
Tracking Status
firefox-esr115 --- unaffected
firefox-esr128 --- unaffected
firefox-esr140 --- unaffected
firefox142 --- wontfix
firefox143 --- fix-optional
firefox144 --- fix-optional

People

(Reporter: jg.millirem, Assigned: emilio)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(3 files)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:142.0) Gecko/20100101 Firefox/142.0

Steps to reproduce:

  1. Two monitor setup, Firefox is maximized on right monitor (maximized may not matter).
  2. The autoshow and hide behavior for the sidebar is enabled. Sidebar is on the left of Firefox window.
  3. Move mouse pointer from right monitor leftwards.

Actual results:

Sidebar autoshows on crossing the right edge of the sidebar, and then stays shown after the mouse pointer has crossed to the left monitor.

Expected results:

The sidebar should have autohidden when the pointer hit the left monitor.

Similar bad behavior in the other direction.

Component: Untriaged → Sidebar

If possible, could you try running mozregression to help us identify a culprit?

Flags: needinfo?(jg.millirem)

Tail of mozregression output. I started with 141 release for the bisect, but I know that the bad behavior was not present in 142.0 and appeared only in 142.0.1

2025-08-28T10:49:45.007000: INFO : Narrowed integration regression window from [2dd2f21b, 6ede1572] (4 builds) to [2dd2f21b, 12bd21fa] (3 builds) (~1 steps left)
2025-08-28T10:49:45.009000: INFO : Running autoland build built on 2025-07-29 21:51:44.527000, revision d3603a77
2025-08-28T10:49:46.499000: INFO : Launching C:\Users\jim\AppData\Local\Temp\tmprr8wkduo\firefox\firefox.exe
2025-08-28T10:49:46.501000: INFO : Application command: C:\Users\jim\AppData\Local\Temp\tmprr8wkduo\firefox\firefox.exe --allow-downgrade --wait-for-browser -profile F:\Application data stores\Firefox profiles\tv008mh4.Beta 55+
2025-08-28T10:49:46.774000: INFO : application_buildid: 20250729213216
2025-08-28T10:49:46.775000: INFO : application_changeset: d3603a7735fb895e44d1850de51ff874faf766b4
2025-08-28T10:49:46.775000: INFO : application_display_name: Firefox Nightly
2025-08-28T10:49:46.775000: INFO : application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
2025-08-28T10:49:46.775000: INFO : application_name: Firefox
2025-08-28T10:49:46.775000: INFO : application_remotingname: firefox-default
2025-08-28T10:49:46.775000: INFO : application_repository: https://hg.mozilla.org/integration/autoland
2025-08-28T10:49:46.775000: INFO : application_vendor: Mozilla
2025-08-28T10:49:46.775000: INFO : application_version: 143.0a1
2025-08-28T10:49:46.775000: INFO : platform_buildid: 20250729213216
2025-08-28T10:49:46.775000: INFO : platform_changeset: d3603a7735fb895e44d1850de51ff874faf766b4
2025-08-28T10:49:46.775000: INFO : platform_repository: https://hg.mozilla.org/integration/autoland
2025-08-28T10:49:46.775000: INFO : platform_version: 143.0a1
2025-08-28T10:50:30.721000: INFO : Narrowed integration regression window from [2dd2f21b, 12bd21fa] (3 builds) to [d3603a77, 12bd21fa] (2 builds) (~1 steps left)
2025-08-28T10:50:30.736000: DEBUG : Starting merge handling...
2025-08-28T10:50:30.736000: DEBUG : Using url: https://hg.mozilla.org/integration/autoland/json-pushes?changeset=12bd21faed158b39188155c9b8e75d2b49716d85&full=1
2025-08-28T10:50:30.737000: DEBUG : redo: attempt 1/3
2025-08-28T10:50:30.737000: DEBUG : redo: retry: calling _default_get with args: ('https://hg.mozilla.org/integration/autoland/json-pushes?changeset=12bd21faed158b39188155c9b8e75d2b49716d85&full=1',), kwargs: {}, attempt #1
2025-08-28T10:50:30.739000: DEBUG : urllib3.connectionpool: Resetting dropped connection: hg.mozilla.org
2025-08-28T10:50:30.904000: DEBUG : urllib3.connectionpool: https://hg.mozilla.org:443 "GET /integration/autoland/json-pushes?changeset=12bd21faed158b39188155c9b8e75d2b49716d85&full=1 HTTP/1.1" 302 0
2025-08-28T10:50:31.952000: DEBUG : urllib3.connectionpool: https://hg-edge.mozilla.org:443 "GET /integration/autoland/json-pushes?changeset=12bd21faed158b39188155c9b8e75d2b49716d85&full=1 HTTP/1.1" 200 None
2025-08-28T10:50:31.954000: DEBUG : Found commit message:
Bug 1979940 - Avoid unnecessary work for expand-on-hover if already expanded / collapsed. r=kcochrane,sidebar-reviewers

Differential Revision: https://phabricator.services.mozilla.com/D259114

2025-08-28T10:50:31.954000: DEBUG : Did not find a branch, checking all integration branches
2025-08-28T10:50:31.955000: INFO : The bisection is done.
2025-08-28T10:50:31.960000: INFO : Stopped

Flags: needinfo?(jg.millirem)

To see the problem, experiment with different mouse movement speeds. It is definitely possible to get the sidebar expanded state to stick expanded if the mouse is moved at a certain speed.

See Also: → 1984632

Thank you! tagging the author of the regressor for investigation

Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(emilio)
Keywords: regression
Regressed by: 1979940
Flags: needinfo?(emilio)

The screen coordinates of the mouseout event might not be guaranteed to
be outside the window, but if there's no related target we know the
mouse is not in our window anymore.

Assignee: nobody → emilio
Status: NEW → ASSIGNED
Blocks: 1957114

Not ideal, but this should work around issues with the previous patch on
macOS due to native menus, and works nicely on Windows and Linux too.

Severity: -- → S4
Priority: -- → P3
Duplicate of this bug: 1988127
See Also: → 1988384
Duplicate of this bug: 1988384
Duplicate of this bug: 1988233
Duplicate of this bug: 1990515

I noticed this bug too and filed a separate issue (bug 1993806, now closed). I included some videos demonstrating the weird behavior.

While not strictly a fix, these issues should be mitigated when 145 releases, as 1983125 should let the hover timeout be customizable. So if you set the hover timeout to be a higher value then this should happen far less frequently.

However I'd still say that the sidebar refusing to auto-collapse (i.e. this report) is still a standalone bug, as this is exhibited by the browser using the default settings. But I just wanted to share a PSA that the customizable hover-delay could make this less annoying 🙂

I'm also experiencing this bug on Firefox 145.0.1 on Fedora 43 KDE Workstation.
It's particularly bothersome with multi-monitor setups, as the mouse will pass over the sidebar when crossing between monitor boundaries, causing the sidebar to remain expanded and occlude the webpage content.

This bug is still present on Firefox 147.0.3 on Arch Linux. I've noticed that it doesn't happen if I move my cursor very slowly, pausing at the window border.

Duplicate of this bug: 2024155

Spent a bit today putting together a hacky userChrome.css override to work around this issue. Looking forward to the day I can trash the repo but until then if this issue is bugging anyone else as much as it bugs me give this a try: firefox-sidebar-hover-workaround

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: