Closed Bug 1590089 Opened 5 years ago Closed 5 years ago

[10.15] Font smoothing applied incorrectly on macOS 10.15

Categories

(Core :: Graphics: Text, defect, P3)

71 Branch
All
macOS
defect

Tracking

()

RESOLVED FIXED
mozilla72
Tracking Status
firefox-esr68 --- fixed
firefox70 --- wontfix
firefox71 --- fixed
firefox72 --- fixed

People

(Reporter: kalle, Assigned: lsalzman)

References

(Regression)

Details

(Keywords: regression, Whiteboard: [fixed by bug 1587962])

Attachments

(7 files, 1 obsolete file)

On macOS 10.15 Catalina, text is always rendered as if the system's font smoothing setting were turned on, i.e., bolder and blurrier than normal.

Elements that have the -moz-osx-font-smoothing CSS property set to grayscale are not affected.

The issue does not occur when WebRender is enabled.

Tried versions: 69.0.3, 70.0b14, 71.0b2

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: General → Graphics: WebRender
Product: Firefox → Core
Summary: Font smoothing applied incorrectly on macOS 10.15 → [10.15] Font smoothing applied incorrectly on macOS 10.15
Component: Graphics: WebRender → Graphics: Text
Flags: needinfo?(lsalzman)

Could you take some comparative screenshots for us with webrender off and on?

Flags: needinfo?(lsalzman) → needinfo?(kalle)
Flags: needinfo?(kalle)
Flags: needinfo?(lsalzman)

Can you check which released version this divergent behavior started with?
Mozregression should help with this: https://mozilla.github.io/mozregression/

We would want to track down two different potential regressions here... Either with webrender on, that first version at which appearance change...

The second potential regression this might be is with webrender off instead, the first version at which appearance changed, if at all.

I am still trying to discern whether the appearance here is wrong with webrender, or just with normal rendering, so running a mozregression on both of those two cases would be helpful.

Flags: needinfo?(lsalzman) → needinfo?(kalle)

With WebRender off:

Last good revision: 2406b20fb10552e834fdc91054917e3dd633fdff
First bad revision: e74eb5b1a8c24dde5473ae3d5409f5fc08ec4a1e
Pushlog: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=2406b20fb10552e834fdc91054917e3dd633fdff&tochange=e74eb5b1a8c24dde5473ae3d5409f5fc08ec4a1e

So, this seems to be related to the patch that fixed bug 1495282.

I didn't run mozregression with WebRender enabled because I don't know what I would be looking for. The font rendering in the current Dev Edition w/ WebRender looks correct to me.

I'm attaching the following screenshots:

  • v66a before the aforementioned patch
    Slightly bolder than Safari. Not sure if this was considered the correct result at the time, but at least here we don't have the gross bolding of the current version.

  • v71b w/o WebRender
    Obviously way too bold.

  • v71b w/ WebRender
    Virtually identical to Safari.

  • Safari.

Flags: needinfo?(kalle)
Attached image 66a
Attached image 71b WR off
Attached image 71b WR on
Attached image Safari
Assignee: nobody → lsalzman
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Keywords: regression
Priority: -- → P3
Regressed by: 1495282

I wanted to test whether any of the try builds fix this problem, but I was unable to reproduce the problem to begin with: With current Nightly, and Beta, I see thin fonts if the "font smoothing" system pref is unchecked. This is on 10.15 (.0) on a Retina Macbook Pro (Mid 2012).
Checking or unchecking the system pref, and restarting Firefox, correctly changes Firefox's font rendering on this machine, both with and without WebRender.

Flags: needinfo?(kalle)

I was no longer able to reproduce with the latest beta (71.0b6), so I ran mozregression --find-fix --bad=2019-10-24 --good=2019-10-31 --repo=mozilla-beta and got:

INFO: First good revision: fb78ad450cc49668b407dd6f68d086fa10d73520
INFO: Last bad revision: 69eb633fb08a1fb6dc00a80e674d90f356f97d20

Pushlog:
https://hg.mozilla.org/releases/mozilla-beta/pushloghtml?fromchange=69eb633fb08a1fb6dc00a80e674d90f356f97d20&tochange=fb78ad450cc49668b407dd6f68d086fa10d73520

Bug 1587962 comment 9:

[in 10.15] our content processes need to read ~/Library/Preferences/.GlobalPreferences.plist, but are prevented from doing so due to sandboxing

The patch in https://hg.mozilla.org/releases/mozilla-beta/rev/dfe0211b28126996fed51ef6bd965ecefa986a42 restores access to the plist file containing the AppleFontSmoothing property. I believe this is what has fixed the issue.

Flags: needinfo?(kalle)

That makes so much sense! Thanks for checking.
WebRender draws text in the parent process, non-WebRender draws text in the (sandboxed) content process.

Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Depends on: 1587962
Resolution: --- → FIXED
Whiteboard: [fixed by bug 1587962]
Target Milestone: --- → mozilla72
Attachment #9105129 - Attachment is obsolete: true
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: