Open Bug 1583467 Opened 5 years ago Updated 2 years ago

Arrows of custom scrollbar distort when zooming

Categories

(Core :: Widget: Win32, defect)

All
Windows
defect

Tracking

()

Tracking Status
firefox-esr60 --- unaffected
firefox-esr68 --- wontfix
firefox69 --- wontfix
firefox70 --- wontfix
firefox71 --- fix-optional

People

(Reporter: cfogel, Unassigned, NeedInfo)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

Attached image darkTheme_navArrowsDisortOnZoom.gif (deleted) —

Affected versions

  • 68.1.0esr, 69.0.1, 70.0b8, 71.0a1 (2019-09-23)

Affected platforms

  • Windows 10,

Steps to reproduce

  1. Launch Firefox, open DevTools, change it to Dark Theme;
  2. Zoom in/out while the DevTools section is active - in focus;

Expected result

  • the tool zooms as expected;

Actual result

  • the scroll buttons are distorted on certain zoom levels;

Regression range

  • First bad: build_date: 2018-10-09 21:38:52.481000 changeset: 91e7bbcc957a87805acaf96fe699df741f6a20ce
  • Last good: build_date: 2018-10-09 21:31:17.603000 changeset: dd418f0ef29cf4082b1379211b601fcf950836da
  • Pushlog: URL
  • Potential regressor: 1494607

Additional notes

  • attached recording with issue;
  • default theme is not affected by this issue;

Hey Xidorn, mind taking a look?
It appears your patch may have caused this regression.

Thank you!

Has Regression Range: --- → yes
Has STR: --- → yes
Flags: needinfo?(xidorn+moz)

This happens on ordinary custom scrollbars in content as well, not devtools specific.

I had a look at the code and debugged a bit, but have totally no idea how to fix this with the current approach. I tried to inspect what scale we use when drawing, but it seems that the scale is always 1. Probably need someone with more knowledge about gfx to help...

Bas, could you shed some light on this? The related rendering code is: https://searchfox.org/mozilla-central/rev/b6f088f2f68d2a8ae0b49d6c8fbd7cbd3a65fa5b/widget/windows/nsNativeThemeWin.cpp#4262-4269

Component: CSS and Themes → Widget: Win32
Flags: needinfo?(xidorn+moz) → needinfo?(bas)
Product: DevTools → Core
Summary: [Win][Dark Theme] - DevTools scrolling arrows distort on zoom → Arrows of custom scrollbar distort when zooming

(Didn't mean to remove my own ni...)

Flags: needinfo?(xidorn+moz)

I suspect this is webrender related.

Nical?

Flags: needinfo?(bas) → needinfo?(nical.bugzilla)

I don't think this is webrender related, because I can reproduce this on a Windows instance on GCP, where WebRender seems to be disabled.

In about:support on this instance I see:

WEBRENDER	
opt-in by default: WebRender is an opt-in feature
unavailable-no-angle by runtime: ANGLE is disabled

WEBRENDER_QUALIFIED	
blacklisted by env: No qualified hardware

Actually, compositing shows "Basic" on that instance, which means hardware acceleration isn't enabled at all.

Sorry for the delay, I had some issues with my Windows machine.
I also have the same results with and without WebRender. I wonder if things get snapped slightly differently with the patch from 1494607 due to how some values that used to be computed using integers and then casted to floats are now computed with floats.
Other than that nothing jumps out but I don't know this code super well. The way it "looks" is reminiscent of the kind of issues you have when sizes or coordinates are off by a small amount, for example when trying to map a 100px surface to a 99px destination, etc.

Flags: needinfo?(nical.bugzilla)

Wontfix for 70. Fix-optional for 71 given that we are going to beta in a few days and this is not a recent regression. We can evaluate an uplift if a safe patch materializes early in the 72 nightly cycle.

note that in bug 1611854, the scroll buttons are distorted at normal zoom level.

Severity: normal → S3
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: