White line at the bottom of Firefox content area when Windows taskbar auto-hides
Categories
(Core :: Widget: Win32, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr115 | --- | unaffected |
firefox-esr128 | --- | unaffected |
firefox133 | --- | wontfix |
firefox134 | --- | wontfix |
firefox135 | --- | wontfix |
firefox136 | --- | wontfix |
firefox137 | --- | fixed |
People
(Reporter: fahadrazeen, Assigned: emilio)
References
(Regression)
Details
(Keywords: regression)
Attachments
(7 files)
This started happening with the latest Firefox 133.0 64bit update on my Windows 10 x64 machine
Steps to reproduce:
I use TransluscentTB and AutoHideDesktopIcons to completely hide the taskbar because I'm using a QD-OLED monitor. I also use Firefox in 'windowed' fullscreen mode. When the window is maximized there is a white border at the bottom of the window. This only became an issue after the most recent update got pushed. I can't seem to take a proper screenshot that showcases this properly. This exact issue was listed previously and fixed 2 years ago
https://bugzilla.mozilla.org/show_bug.cgi?id=1802721#c16
Actual results:
The white only appears under the above conditions when in maximized windowed fullscreen mode with the windows taskbar completely hidden. It sticks out when using an oled monitor with a oled-friendly firefox theme
Expected results:
As it was prior to the 133.0 update, this white line shouldn't be there. It only appears under the above conditions afaik
Comment 1•8 months ago
|
||
Can you run mozregression to determine exactly what patch introduced this?
A number of Firefox versions will open in succession to narrow down when this started occurring. Simply answer "good" or "bad" based on whether or not a build reproduces the bug. Once finished, please post the output from the last run. It should give a last good and first bad revision, as well as a link to look at the changesets in that range. Thank you!
I also use Firefox in 'windowed' fullscreen mode.
[...] when in maximized windowed fullscreen mode [...]
I'm not sure what you mean by this.
By maximized fullscreen, I meant that I changed 'full-screen-api.ignore-widgets' in about:config to 'true'.
After using mozregression, I realized the issue is not restricted to fullscreen mode. You just need to completely eliminate the taskbar with TranluscentTB and AutoHideDesktopIcons and then change the firefox theme to dark. With the window maximized, there's a horizontal white line along the bottom border. After further experimenting, I noted that the white border appears where the taskbar is supposed to be. If I move the taskbar to either the left or right side, the white border shows up on the side where the taskbar is.
I ran mozregression but it said 'Did not find a branch, checking all integration branches'. I've added a txt file with the log. Looks like there was a change some time between Sept to Oct '24 that has caused this.
(In reply to demondor from comment #0)
I use TransluscentTB and AutoHideDesktopIcons to completely hide the taskbar because I'm using a QD-OLED monitor. I also use Firefox in 'windowed' fullscreen mode. When the window is maximized there is a white border at the bottom of the window. This only became an issue after the most recent update got pushed. I can't seem to take a proper screenshot that showcases this properly. This exact issue was listed previously and fixed 2 years ago
is Pixel Shift turned on your monitor? test if turning it off make the line disappear
(In reply to Az from comment #5)
(In reply to demondor from comment #0)
I use TransluscentTB and AutoHideDesktopIcons to completely hide the taskbar because I'm using a QD-OLED monitor. I also use Firefox in 'windowed' fullscreen mode. When the window is maximized there is a white border at the bottom of the window. This only became an issue after the most recent update got pushed. I can't seem to take a proper screenshot that showcases this properly. This exact issue was listed previously and fixed 2 years ago
is Pixel Shift turned on your monitor? test if turning it off make the line disappear
It's not Pixel Shift; turning it on and off did nothing. When I used mozregression, I noticed that builds prior to and including September didn't have the issue; builds from October onward have it. It seems to have something to do with Firefox interacting with the taskbar while the window is maximized
I uploaded another video with me moving the taskbar around and the white line appearing with it when I maximize the window
Comment 8•8 months ago
|
||
Looks like there was a change some time between Sept to Oct '24 that has caused this.
Unfortunately, that's a lot of changes; it doesn't narrow things down any more than saying it started in v133. Fortunately, the mozregression log does identify the relevant patches, despite the confusing # ignore this changeset
message.
(In reply to Ray Kraesig [:rkraesig] from comment #8)
Looks like there was a change some time between Sept to Oct '24 that has caused this.
Unfortunately, that's a lot of changes; it doesn't narrow things down any more than saying it started in v133. Fortunately, the mozregression log does identify the relevant patches, despite the confusing
# ignore this changeset
message.
Okay, is there anything else I need to do on my end?
Comment 10•8 months ago
|
||
Ah, sorry! No, at least not at the moment. I've marked the regressor-bug and notified the author.
Assignee | ||
Comment 11•8 months ago
|
||
Thanks, I'll take a look tomorrow. Can you confirm that latest nightly also shows the issue? Also, does this happen regardless of the titlebar settings?
Assignee | ||
Comment 12•8 months ago
|
||
Ah yeah, so per other bugs, this should only be an issue with the custom titlebar... I think the hack added for the taskbar edge might be counterproductive now. But looking into it more deeply.
Assignee | ||
Comment 13•8 months ago
|
||
Ok, so I couldn't help myself and I tried to repro this... I only have Windows 11 tho, which has a probably different enough taskbar impl (it only allows bottom taskbars, too). I also tried with ExplorerPatcher's taskbar and so on, with no avail (in all sides), combined or without the TranslucentTB thing.
I couldn't repro this in any of those situations. So... a few questions:
- Maybe too much to ask, but if there's a way that this could repro on win11 that'd make my life so much easier.
- Does this repro without TranslucentTB somehow? Does this need some specific TranslucentTB settings? The only way I can get the autohidden taskbar border to show up is to set the relevant "show border" setting in TranslucentTB, and that obviously does what it says (on other apps too).
- A bit of a guess, but I wonder if this build shows the issue for you? (You should see links to a zip from there, once the "B" task turns green).
Reporter | ||
Comment 14•8 months ago
|
||
I'm using AutoHideDesktopIcons as well which has a hide taskbar function that removes the thin taskbar indicator that shows up even when you hide it in windows. Just make sure 'Hide taskbar' is selected.
https://autohidedesktopicons.en.lo4d.com/windows
I don't have access to a Windows 11 machine at the moment. Also I can't seem to find a zip file download in that link
Reporter | ||
Comment 15•8 months ago
|
||
Comment 16•8 months ago
|
||
(In reply to demondor from comment #14)
I don't have access to a Windows 11 machine at the moment. Also I can't seem to find a zip file download in that link
Under "Artifacts and Debugging Tools", download target.zip.
Reporter | ||
Comment 17•8 months ago
|
||
(In reply to Ray Kraesig [:rkraesig] from comment #16)
(In reply to demondor from comment #14)
I don't have access to a Windows 11 machine at the moment. Also I can't seem to find a zip file download in that link
Under "Artifacts and Debugging Tools", download target.zip.
This build doesn't have the white line along the taskbar.
It does introduce a slightly different bug - When Firefox is started or the window is made smaller and then maximized, moving the mouse to the bottom doesn't trigger the taskbar to show itself (when the taskbar is completely hidden as detailed previously). Alt tabbing to a different window & back or hitting the windows key solves it and I'm able to trigger the taskbar when mousing over the bottom
Assignee | ||
Comment 18•8 months ago
|
||
(In reply to demondor from comment #17)
It does introduce a slightly different bug - When Firefox is started or the window is made smaller and then maximized, moving the mouse to the bottom doesn't trigger the taskbar to show itself (when the taskbar is completely hidden as detailed previously). Alt tabbing to a different window & back or hitting the windows key solves it and I'm able to trigger the taskbar when mousing over the bottom
Is that Firefox specific tho? This thread seems to indicate it might be due to an interaction with NVIDIA's overlay (which you used to record your screen, so presumably you have installed).
If disabling the NVIDIA overlay helps, I think we should probably land my patch...
Reporter | ||
Comment 19•8 months ago
|
||
Yes it's specific to the Firefox build that was linked earlier. The same thing happens when the Nvidia overlay is screen recording but this thing with Firefox happens while the overlay itself off. It's not a big deal; I just wanted to point it out. I'm just glad the white line thing can be resolved.
Comment 20•8 months ago
•
|
||
Unfortunately, that is a big deal — it also happens to me with that build on Win10 without any special software installed, just with the taskbar in Windows' standard taskbar-autohide mode. (edited for clarity:) Presumably because even the usual taskbar-sliver is concealed.
Assignee | ||
Comment 21•8 months ago
|
||
Yes, I think I understand what's going on a bit better, patches incoming :)
Assignee | ||
Updated•8 months ago
|
Comment 22•8 months ago
|
||
Set release status flags based on info from the regressing bug 1911763
Assignee | ||
Comment 23•8 months ago
|
||
The real fix for the bug here is to fix the NC-area clear to include
the extra auto-hidden taskbar margin, not just the default one.
We need to do a few more tweaks to fix transparent window painting,
which is mostly a simplification.
In particular, the reason we had to clear the (default) NC area for
transparency changes was to clear Windows' titlebar etc, but that no
longer applies now that we managed to remove it in bug 1934040.
So, split the mNeedsToClearNCArea into two (one that clears our
NC area, needed for the auto-hidden taskbar workaround), and
one for clearing the translucent window bits.
Also, make sure that when the translucent area changes, we generate a
WM_PAINT message to clear any areas that we might need to clear.
Invalidate() was meant to do that but is insufficient (because you won't
get WM_PAINT unless the region is non-empty or you use
RDW_INTERNALPAINT). This mechanism will also be used for bug 1934136
(patch incoming for that).
Assignee | ||
Comment 24•8 months ago
|
||
Builds will be here (I'd provide a direct link but late here so can't wait for them to finish): https://treeherder.mozilla.org/jobs?repo=try&revision=b4c06cdaa66145c73b90ef6b575a4301fe4abb54
Assignee | ||
Comment 25•8 months ago
|
||
Comment 26•8 months ago
|
||
Too late for the Fx133 cycle. Not sure if it will be safe for a beta uplift for Fx134, or if it should ride the train with Fx135.
Assignee | ||
Comment 27•8 months ago
|
||
Any chance you could try the build in comment 25 and assume it fixes both issues?
Reporter | ||
Comment 28•8 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #27)
Any chance you could try the build in comment 25 and assume it fixes both issues?
It's back to how it was before. The white line is there in this build and triggering the taskbar is fine.
Assignee | ||
Comment 29•8 months ago
|
||
Great, thanks for confirming!
Reporter | ||
Comment 30•8 months ago
|
||
(In reply to demondor from comment #28)
(In reply to Emilio Cobos Álvarez (:emilio) from comment #27)
Any chance you could try the build in comment 25 and assume it fixes both issues?
It's back to how it was before. The white line is there in this build and triggering the taskbar is fine.
Scratch that. Something weird happened. I tried this build again and both bugs were nonexistent this time. Restarted my PC and both problems are still gone.
I refreshed the nightly and the line came back on the first run. The white line then goes away after restarting Firefox and persists. Seems like something changes between the first & subsequent runs that fixes the problem.
Reporter | ||
Comment 31•8 months ago
|
||
I tested it further and seems like even if the white line is gone from the second run onwards, opening a second firefox instance or incognito window at the same time brings the white line back in the second instance/window.
Assignee | ||
Comment 32•8 months ago
|
||
That is... super weird, do you know if that happened before my patches?
Reporter | ||
Comment 33•8 months ago
|
||
I just checked the build that had the non-triggering taskbar (comment 16) and this 'white line in second window/instance' bug isn't there
Assignee | ||
Comment 34•8 months ago
|
||
Yeah, I mean builds from before 133.
Reporter | ||
Comment 35•8 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #34)
Yeah, I mean builds from before 133.
No, this wasn't there before 133.
Updated•8 months ago
|
Comment 36•8 months ago
|
||
The severity field is not set for this bug.
:rkraesig, could you have a look please?
For more information, please visit BugBot documentation.
Comment 37•8 months ago
|
||
@demondor: could you try the target.zip from this build (or this direct link) and check whether it resolves the bug?
Reporter | ||
Comment 38•8 months ago
|
||
(In reply to Ray Kraesig [:rkraesig] from comment #37)
@demondor: could you try the target.zip from this build (or this direct link) and check whether it resolves the bug?
white line bug is in this build
Comment 39•7 months ago
|
||
Still having the same problem in 134.0 64bit. I use vannila firefox with windows autohide taskbar. There is no workaround.
Updated•7 months ago
|
Updated•7 months ago
|
Reporter | ||
Comment 40•6 months ago
|
||
Is there any chance that this bug can be fixed?
Assignee | ||
Comment 41•6 months ago
|
||
I'd love to fix it if I could reproduce it. Does it repro with nightly?
Comment 43•6 months ago
|
||
Can confirm this reproduces with Win11 Firefox 135 with and without transparent TB as long as auto-hide taskbar is enabled. Monitor is 1440p OLED, tested on both 1440p and 1080p.
Comment 44•6 months ago
|
||
(In reply to Anthony La from comment #43)
Can confirm this reproduces with Win11 Firefox 135 with and without transparent TB as long as auto-hide taskbar is enabled. Monitor is 1440p OLED, tested on both 1440p and 1080p.
Does this behavior change if the DPI scaling is changed, rather than the resolution?
Comment 45•6 months ago
|
||
No. Occurs on 100%, 150%, 200%. However, it seemed to not occur on Firefox 135.0.1 (20250216192613), but I'm not 100% sure, I want to reinstall it to see if is a fluke or not, and check Nightly as well as run the mozregression thing. Give me a minute!
Comment 46•6 months ago
|
||
To clarify, those DPI scalings are the only ones I tested -- not that the other ones (like 125%) work properly.
Comment 47•6 months ago
|
||
These are the versions I tried:
NOT WORKING: Firefox 133.0.3 (20241209150345)
NOT WORKING: Firefox 135.0.1 (20250216192613)
NOT WORKING: Firefox 136.0b9 (20250221091531)
NOT WORKING: Firefox 137.0a1 (20250224094139)
They all show the same inconsistent behavior (seen in the video). Sometimes when opening the app, it will have that gray/transparent bar -- and sometimes won't. The most consistent way I have seen to reproduce it is when using private window/incognito mode and when the browser first opens automatically after a fresh install. The bar is usually transparent at first because I can see that the color is the same as my wallpaper (despite the app being full screened), and then once I minimize it and then expand it again, it turns into that white/gray bar. I will figure out how to use the mozregression thing, but since I don't have a known good build, I'm not sure how this bisection thing would work.
Windows 11 RC, tested without ANY taskbar programs -- only native auto-hide. Specs are 5600, 6700xt if relevant.
Comment 48•6 months ago
|
||
I have also tested it on my IPS monitor and it has the same problem, so definitely not anything OLED related like pixel shift previously mentioned.
Comment 49•6 months ago
|
||
After reading up this thread, I decided to start from 130 as the known good build and 136 as the known bad. Here are my results:
https://pastebin.com/sTJuPvHp
Happy to run more tests. I couldn't find a way to export within the app, hope the paste works.
Comment 50•6 months ago
|
||
Comment 52•6 months ago
|
||
The above mozregression run also fingers bug 1911763 as the culprit, so this is probably the right place.
ni?ing :emilio for further analysis.
Assignee | ||
Comment 53•6 months ago
|
||
Ok, so of those patches the clear suspect is https://hg.mozilla.org/integration/autoland/rev/48c3c5661091455f4121664702db26f97a890557 which redid the mClearNCEdge in terms of a more general clear of the whole NC area.
I still can't repro, but I don't think mClearNCEdge was doing what it was saying, since it adds a negative offset to the bottom (assuming bottom taskbar), so it's really expanding the client area outwards (and thus decreasing the NC area).
So I understand why there is a behavior difference now, I think... Though not being able to repro makes it a bit tricky.
Assignee | ||
Comment 54•6 months ago
|
||
Assignee | ||
Comment 55•6 months ago
|
||
Ok, so I attached a patch to the bug that makes a few of the relevant tweaks prefable, and (I think) restores the behavior pre-regression (once prefs are on). By default, it removes all the existing hacks (one can dream). It doesn't cause any adverse effect on my machine but that's clearly not enough since I can't repro the issue to begin with :)
There should be builds in https://treeherder.mozilla.org/jobs?repo=try&revision=3b673bc6035a7bc3f149958c0160d1426cc9f8fb in a few hours. I'll try to remember to post a direct link tomorrow here, but the way to get them is clicking on a green "B", go to "Artifacts" and download the target.zip
.
For those that can repro:
- Does the build fix the issue as-is? That'd be amazing.
- If not, what combination of
widget.windows.hidden-taskbar-hack.paint
andwidget.windows.hidden-taskbar-hack.size
fixes the issue for you? (The pre-regression behavior issize=true
andpaint=true
, but I'm hoping just the later suffices.)
Thanks.
Comment 56•6 months ago
|
||
Fantastic, I will give it a shot when it finishes.
Comment 57•6 months ago
|
||
Update:
(In reply to demondor from comment #17)
It does introduce a slightly different bug - When Firefox is started or the window is made smaller and then maximized, moving the mouse to the bottom doesn't trigger the taskbar to show itself (when the taskbar is completely hidden as detailed previously). Alt tabbing to a different window & back or hitting the windows key solves it and I'm able to trigger the taskbar when mousing over the bottom
Note that this occurs under different circumstances in bug 1949079, and may be fixable without reference to this bug. I have a partial fix there, and a full fix in the works; I can drive up the priority of the latter if it would block a fix here.
(In reply to Emilio Cobos Álvarez (:emilio) from comment #55)
For those that can repro:
That's not me, alas.
Assignee | ||
Comment 58•6 months ago
|
||
Here is a direct link to a x64 build.
Assignee | ||
Comment 59•6 months ago
|
||
(In reply to Ray Kraesig [:rkraesig] from comment #57)
Note that this occurs under different circumstances in bug 1949079, and may be fixable without reference to this bug. I have a partial fix there, and a full fix in the works; I can drive up the priority of the latter if it would block a fix here.
I see, so removing the hack (which is what that build did) does fix this. That'd be amazing.
Assignee | ||
Comment 60•6 months ago
|
||
That means that the expectation is that the build from comment 55 / comment 58 won't show the white line issue.
Comment 61•6 months ago
|
||
Using the build given, I was not able to reproduce the issue with the white/transparent bar, nor was I able to replicate the issue mentioned by Ray Kraesig [:rkraesig]. Nothing seemed broken as far as I can tell.
Updated•6 months ago
|
Comment 62•6 months ago
|
||
Comment 63•6 months ago
|
||
Assuming there is no other catches with the fixes, do you now what version of FF this may be fixed by? Thanks.
Comment 64•6 months ago
|
||
bugherder |
Comment 65•6 months ago
|
||
The patch landed in nightly and beta is affected.
:emilio, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox136
towontfix
.
For more information, please visit BugBot documentation.
Assignee | ||
Comment 66•6 months ago
|
||
I think this is probably fair to let ride in 137, but if someone feels very strongly about that I could uplift to 136, but it's rather late in the cycle.
Assignee | ||
Comment 67•6 months ago
|
||
If someone could confirm that the next nightly build works for them that'd be great too :)
Updated•6 months ago
|
Reporter | ||
Comment 68•6 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #67)
If someone could confirm that the next nightly build works for them that'd be great too :)
Could you please link me to the build?
Assignee | ||
Comment 69•6 months ago
|
||
According to hg.m.o, the latest nightly build (from https://nightly.mozilla.org) should have this, but if you want a zipfile, here is one :)
Reporter | ||
Comment 70•6 months ago
|
||
The white line is not present in this build.
Comment 71•6 months ago
|
||
I haven't had the white line issue, but I now have to set widget.windows.hidden-taskbar-hack.size=true
to prevent a maximized Firefox window from hiding the auto-hide taskbar.
Comment 73•6 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #72)
I think that's bug 1950441.
Indeed--with the patch in that bug, I can reset widget.windows.hidden-taskbar-hack.size
to false.
Updated•6 months ago
|
Description
•