Nightly shows a non-functional title bar despite being set not to
Categories
(Firefox :: General, defect)
Tracking
()
People
(Reporter: pomax, Unassigned)
Details
Attachments
(1 file)
|
75.76 KB,
image/png
|
Details |
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:154.0) Gecko/20100101 Firefox/154.0
Steps to reproduce:
I opened Nightly on Windows.
Actual results:
There is a title bar above the main UI, which appears to behave in crazy ways.
- I can click-drag using the title bar to move the application around, but
- the minimize, maximize, and close buttons do nothing. However,
- double clicking the title bar maximizes Nightly, while also removing the title bar
It's... a bit of a hot mess.
Expected results:
With "title bar" unchecked in the bar customization UI (bottom left), there should never be a title bar shown.
With it checked, there should be a title bar, with control buttons in the title bar and not in the tab bar, and it should behave the way a title bar should behave.
Note that restarting in troubleshooting mode does not have this issue, so somehow normal Nightly is not bothering to look at the title bar setting.
Comment 2•1 month ago
|
||
The Bugbug bot thinks this bug should belong to the 'Firefox::Address Bar' component, but is not confident enough to move the bug to that component.
It should not. Also there is no such thing as the "address bar", we renamed it to the "awesome bar" when we launched Quantum ;)
It'd be great if someone could look at this, it's infuriatingly bad.
Comment 5•1 month ago
•
|
||
Current suspicion is that this could be a regression from Bug 1957069. From an AI triage tool, which suggests:
This is a genuine, in-scope frontend/chrome defect. I localized it to a Windows widget regression rather than a JS/CSS issue:
- The "custom titlebar" (tabs-in-titlebar) needs the DOM
customtitlebarattribute and the widget's native non-client area to stay in sync.CustomTitlebar._update()only toggles the DOM attribute. - Bug 1957069 (
ded44b2b9717, landed 2026-06-23 — one week before this report) added an earlySetCustomTitlebar(true)in the pre-XUL skeleton-UI branch ofnsWindow::Create(nsWindow.cpp:1078). It setsmCustomNonClient = trueprematurely, so the real init-time sync hits the early-return atnsWindow.cpp:2841and never runsUpdateNonClientMargins()at the right time → native title bar with dead buttons until a relayout (maximize) fixes it. - Skeleton UI is disabled in Troubleshooting Mode, which explains why safe mode is fine.
Proposed fix: scope that early SetCustomTitlebar(true) to the maximized branch where it's actually needed (or re-assert UpdateNonClientMargins() after chrome shows).
Greg, what do you think?
Updated•1 month ago
|
Updated•1 month ago
|
Comment 7•1 month ago
|
||
:handyman is looking at the duplicate bug with a similar approach. Thanks!
Description
•