Closed Bug 1695617 Opened 4 years ago Closed 3 years ago

The toolbar library bookmarks and history panels have a scrollbar no matter how short they are

Categories

(Firefox :: Menus, defect, P2)

Firefox 88
defect

Tracking

()

VERIFIED FIXED
90 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox86 --- unaffected
firefox87 --- unaffected
firefox88 + wontfix
firefox89 + verified
firefox90 --- verified

People

(Reporter: ailea, Assigned: mconley)

References

(Blocks 2 open bugs, Regression)

Details

(Keywords: helpwanted, regression, Whiteboard: [proton-hamburger-menu][priority:2b] [proton-uplift])

Attachments

(4 files, 2 obsolete files)

Attached image bookmarks scrollbar.png

Tested with:

Nightly 88.0a1 (2021-03-01)

Tested on:

Windows 10
MacOS 10.15
Ubuntu 20.04

Preconditions:

In about:config, set browser.proton.appmenu.enabled = true

Steps:

  1. Launch firefox and open the Bookmarks or History (from the Toolbar Library).

Actual result:

There is a scrollbar displayed no matter how long or short the list of recent bookmarks/history is.

Expected result:

The scrollbar should not be displayed if the Bookmarks/History Panel is shorter than the screen length.

Notes:

  1. The issue is reproducible with and without Proton enabled.
  2. This is not reproducible in Release 86 or Beta 87.

Do you have multiple displays? Are they running at different DPIs? Have you changed your system font sizes? Any kinds of these details will help uncover what is going on here.

Also, are you saying that the bug goes away if you set browser.proton.appmenu.enabled = false?

Flags: needinfo?(alin.ilea)
Attached file aboutsupport.txt

Hi Jared,
I have dual monitors with the same resolution, but this is happening using one monitor as well. Also it is reproducible on Macbook macOS 10.15 without any other monitor/display connected. I did not changed the system fonts or other OS settings. I can reproduce it with new clean Fx profile.
And for the last question, the issue is reproducible with proton pref disabled (set to false) as well. I attached here the about:support, maybe it helps.

Flags: needinfo?(alin.ilea)

I can reproduce this on my Windows machine (Win10, 150% dpi, single screen, no text size changes from the default), and this regressed with bug 1688960.

From a very quick look at the patch, I expect 1 of 2 root causes: a rounding error of sorts, or the font size the header inherits is different between the off-screen place where we check its height compared to the main panel where we then insert it (as the new styling uses font-size: inherit in a few different places).

Mike, can you take a look? If you struggle to repro on Windows please let me know and I can take another look myself.

In terms of priority, I think this is a polish issue that we should try and get fixed in time for 88 - it's not critical, but it does look a bit naff as-is.

Severity: -- → S3
Flags: needinfo?(mconley)
Keywords: regression
Priority: -- → P3
Regressed by: 1688960
Has Regression Range: --- → yes

[Tracking Requested - why for this release]:

With all that's going on, I don't want to lose track of this. It's a polish-y issue, but in some pretty front-and-center UI, so we should get to this before the uplift.

Flags: needinfo?(mconley)
Keywords: helpwanted
See Also: → 1694277

Changing the priority to p2 as the bug is tracked by a release manager for the current nightly.
See What Do You Triage for more information

Priority: P3 → P2
Assignee: nobody → mconley
Status: NEW → ASSIGNED

Hey Gijs,

I noticed a similar bug when applying mtigley's patch for bug 1694277. The patch I've attached seemed to fix it. Does it also fix the Library case that you were able to reproduce?

Flags: needinfo?(gijskruitbosch+bugs)

Unfortunately no. I left a more detailed comment on phab, let's continue there.

Flags: needinfo?(gijskruitbosch+bugs)
Summary: The toolbar library bookmarks panel has scrollbar no matter how shorter it is → The toolbar library bookmarks panel has scrollbar no matter how short it is

Hey rtestard, do you think this is sufficiently important for me to look at (it's reproducible with / without Proton on 88+) instead of Proton work? Or can we ship 88 with this regression?

Flags: needinfo?(rtestard)

This one seems like a medium P2 so marking [priority:2b]
We should focus on P1 or [priority:2a] priorities instead - OK to let this regression go with 88 even if it's a shame but we have to be realistic on what can be done in a given time :(.

Flags: needinfo?(rtestard)
Whiteboard: [proton-hamburger-menu] → [proton-hamburger-menu][priority:2b]

This is also reproducible on MacOS for the Bookmarks and History panels toggled from the toolbar library button.

Summary: The toolbar library bookmarks panel has scrollbar no matter how short it is → The toolbar library bookmarks and history panels have a scrollbar no matter how short they are
Attachment #9210845 - Attachment is obsolete: true

Coming back round to this. I too am able to reproduce this in macOS now. Investigating.

This is pretty strange. It seems that the .panel-subview-body element is getting an intrinsic height that doesn't seem to take into account the h2's padding and non-default font-size. If I reset the font-size to the default, then the scrollbar goes away. It's truly odd, and I can't really explain it.

I've also noticed that there seems to be a minimum height on the subheader of 24px which was not helping.

Interestingly, the problem seems to go away if I make the .panel-subview-body element use the CSS flexbox model instead of the XUL flexbox model. That's not without risk, so I don't think this is something we'd want to consider uplifting.

It seems that we've hit another instance of the XUL box model interacting poorly
with the HTML box model in mysterious ways. In this particular case, the <h2>
elements for subview subheaders was using the HTML box model while inside of
a tree of XUL box elements, and this was causing an incorrect height calculation
for the containing scrollable node, the panel-subview-body.

Switching the h2 element to use the XUL box model appears to fix this.

Attachment #9219914 - Attachment is obsolete: true
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/0b1c1f980faa Make sure subview subheader elements use the XUL box model. r=Gijs
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch

Can this one be uplifted to Beta 89 please?

Comment on attachment 9220420 [details]
Bug 1695617 - Make sure subview subheader elements use the XUL box model. r?Gijs!

Beta/Release Uplift Approval Request

  • User impact if declined: MR1 / proton impact: useless scrollbar in some menus/panels
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: No
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce: See comment 0
  • List of other uplifts needed: nope
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): 1 line CSS change
  • String changes made/needed: Nope
Attachment #9220420 - Flags: approval-mozilla-beta?
Flags: qe-verify+

Comment on attachment 9220420 [details]
Bug 1695617 - Make sure subview subheader elements use the XUL box model. r?Gijs!

Low risk, approved for 89 beta 10, thanks.

Attachment #9220420 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Whiteboard: [proton-hamburger-menu][priority:2b] → [proton-hamburger-menu][priority:2b] [proton-uplift]
QA Whiteboard: [qa-triaged]

Verified - Fixed in latest Nightly 90.0a1 (2021-05-07) and Beta 89.0b10 (build id: 20210507073536), using Windows 10, Ubuntu 20.04 and macOS 11. The scrollbar is not displayed anymore in the toolbar library bookmarks and history panels. It is displayed only when the list of bookmarks or recent history is long enough to be scrollable.

Status: RESOLVED → VERIFIED
QA Whiteboard: [qa-triaged]
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: