Closed
Bug 1279962
Opened 9 years ago
Closed 9 years ago
[10.12] Default Font Breaks after upgrading to macOS Sierra 10.12
Categories
(Core :: Graphics: Text, defect)
Tracking
()
RESOLVED
FIXED
mozilla50
People
(Reporter: ste, Assigned: mstange)
References
Details
(Whiteboard: [gfx-noted][sierra])
Attachments
(5 files)
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:49.0) Gecko/20100101 Firefox/49.0
Build ID: 20160613004107
Steps to reproduce:
Let's get rolling with the new macOS bugs
1. Using Firefox Dev Edition (49.0a2 (2016-06-13))
2. Upgraded from 10.11.5 -> 10.12.0 (16A201w)
3. Once complete, Open Firefox
Actual results:
System Prompt to install missing fonts for Firefox. Font: Osaka,
Select yes,
Downloads font.
Loads Firefox.
All fonts are now using Osaka
Expected results:
Should not have been prompted to install Osaka.
Updated•9 years ago
|
Component: Untriaged → Graphics: Text
Product: Firefox → Core
The same on 10.12 Beta (16A201w) fresh install. The prompt to download Osaka font is from plugin-container (see the attached screenshot).
I don't imagine this is a regression as such, but a regression range would help. Although, I would first try to set gfx.content.azure.backends to cg, restart, and see if the problem goes away.
Keywords: regressionwindow-wanted
Whiteboard: [gfx-noted]
Updated•9 years ago
|
OS: Unspecified → Mac OS X
Assignee | ||
Comment 4•9 years ago
|
||
We need to fix this early this time around. We were way too late to the game in 10.11 (bug 1201318). Now that John Daggett is gone, who can fix this?
Flags: needinfo?(jfkthame)
It was broken somewhere between Fx-34.0 (fonts are ok) and Fx-35.0 (fonts are not ok).
Do you think that bisecting it further will be helpful? I'll try to do it on the weekend if so.
Comment 7•9 years ago
|
||
If you can bisecting this further (e.g. to a specific Nightly) that would be helpful, I think. I don't currently have a system running 10.12.x to investigate directly, but if we know what triggered a change in behavior that might help suggest possible solutions.
Flags: needinfo?(jfkthame) → needinfo?(ojab)
Comment 8•9 years ago
|
||
Same problem with Firefox 47 stable. Address bar, favourites, menus and tab name don't display the correct font.
Looks like bisecting is impossible here: nightlies from ftp.mozilla.org around 2014-09..2014-12 crash on start (with domething like https://crash-stats.mozilla.com/report/index/4fc6d15d-ef4d-470c-a343-0221a2160620), build from source of the same nightlies using Xcode 8 fails with various errors :(
Flags: needinfo?(ojab)
Comment 10•9 years ago
|
||
That's too bad. :( I guess we need a developer with a 10.12 system to do a bit of debugging, then.
If I'm understanding the description here, there are two issues we need to investigate: first, why are we triggering a prompt to download Osaka? (Stephen, is it possible you were trying to view a site with some Japanese text -- even just a language name, such as Wikipedia or Facebook might have?)
And second, why are we using a default serif font (it looks like Times to me) throughout the UI etc (in attachment 8762670 [details]) instead of the system UI font? That seems to suggest that the Cocoa theme code failed to find the system font (maybe there's some strange meta-family naming stuff going on?)
(ojab, if you go into about:preferences#content and change the default font from Times to something clearly different, does that result in the new default being used throughout the UI? That would support the theory that we're failing to resolve the system font name and ending up with CSS fallback instead.)
Flags: needinfo?(stephen.jd.murphy)
Flags: needinfo?(ojab)
Comment 11•9 years ago
|
||
It's not caused by any site that may have been visited. I got the same prompt to download Osaka when I first started it after upgrading to macOS 10.12, and I definitely hadn't visited any sites that try to use that font. Besides, I believe the prompt to download the Osaka showed up even before the profile manager, so no sites were loading.
FYI, for anyone who needs a workaround for the serif font in the UI, I've temporarily worked around the issue by installing the extension Theme Font & Size Changer and manually overriding the font.
Comment 12•9 years ago
|
||
I've got the same prompt with Thunderbird but I declined the offer to download Osaka. Thunderbird looks fine and haven't asked for the font on subsequent launches.
Comment 13•9 years ago
|
||
Changing font in about:preferences#content changes font in UI.
BTW if I select font doesn't have some symbols (Apple Color Emoji, for example), Osaka is used instead. See the attached screenshot, Apple Color Emoji is used for digits.
Flags: needinfo?(ojab)
Comment 14•9 years ago
|
||
(In reply to ojab from comment #13)
> Created attachment 8763612 [details]
> Screenshot of URL bar w/ Apple Color Emoji selected as Default Font
>
> Changing font in about:preferences#content changes font in UI.
> BTW if I select font doesn't have some symbols (Apple Color Emoji, for
> example), Osaka is used instead. See the attached screenshot, Apple Color
> Emoji is used for digits.
Are you sure that's Osaka? (How can you tell?) It looks like Times Roman to me.
Flags: needinfo?(ojab)
Comment 15•9 years ago
|
||
Yeah, my bad, it's not Osaka.
By the way, Fx-34.0 (the last w/ proper font) doesn't change interface font after changing "Default Font" in preferences, so looks like it's broken in Fx-35.0 because "Default Font" is being used also for interface.
There is a font named just "Times" in Font Book, I assume that it is actually used.
Flags: needinfo?(ojab)
Comment 16•9 years ago
|
||
Log of firefox run with
export NSPR_LOG_MODULES=textrunui:5,textrun:5
export NSPR_LOG_FILE=textrun.out
After `mv /System/Library/Fonts/SFNS* ~/Fonts/` fonts in firefox UI becomes OK (but it breaks fonts in many other places).
Don't know if it's useful observation though.
Comment 17•9 years ago
|
||
My current guess is that gfxMacPlatformFontList::LookupSystemFont is failing to find the system font, for reasons currently unknown. It might be that gfxMacPlatformFontList::InitSystemFonts is failing... or maybe gfxMacPlatformFontList::InitFontList() never sees the .SF NS Text/Display families and puts them in the mSystemFontFamilies list in the first place.
Markus, do we have access to a 10.12.x pre-release to try and debug this? It's a long time since I worked with Apple developer seed releases....
Flags: needinfo?(mstange)
Assignee | ||
Comment 18•9 years ago
|
||
I can do it next week. I'm on PTO this week.
Reporter | ||
Comment 19•9 years ago
|
||
I currently do not have access to the macOS machine anymore. I could possibly set up a dual boot on my machine and test it
Comment 20•9 years ago
|
||
This evening, while Firefox was open, I randomly got prompted yet again to download Osaka. The message specifically states:
"plugin-container.app needs to download font “Osaka” before use."
At the time, I had opened a new tab and was typing into the search bar. I don't know what specifically triggered it though.
(I'm also running macOS Sierra and Firefox 47)
Comment 21•9 years ago
|
||
I think the unexpected Osaka download prompt is probably a separate issue from the failure to find and use the right system UI font. Could you file a new bug about that, please?
Assignee | ||
Comment 22•9 years ago
|
||
I have installed 10.12 and can do some debugging now.
Assignee | ||
Comment 23•9 years ago
|
||
I've filed bug 1283573 about the Osaka dialog.
Comment 24•9 years ago
|
||
I wonder if there's a workaround or some way to remove Osaka to make UI look OK.
Comment 25•9 years ago
|
||
I don't think Osaka is connected with the incorrect UI font here; my guess is they're entirely separate issues.
Comment 26•9 years ago
|
||
@jfkthame It very well may be. I'm just operating on the assumption that Osaka is somehow involved in the UI breakage. My evidence are the following:
* Firefox asked for Osaka, I agreed, UI is broken.
* Thunderbird asked for Osaka, I declined, UI is fine.
Apparently, this is not a system-wide issue. I tried running Firefox with a new profile, the UI is still broken, so it's not profile-specific. It seem to be local to an app.
Assignee | ||
Comment 27•9 years ago
|
||
I've debugged this some more. It doesn't have anything to do with Osaka.
This is similar to bug 1201318, and like in that bug, the place where we eventually fail is in MacOSFontEntry::GetFontRef(), because CGFontCreateWithFontName returns null. We call CGFontCreateWithFontName with the name ".AppleSystemUIFont".
That name comes from the font entry, which gets its name from the corresponding item in the list from [sFontManager availableMembersOfFontFamily:@".SF NS Text"].
The list it returns looks like this:
[
[ .AppleSystemUIFont, Regular, 5, 16384 ],
[ .AppleSystemUIFontItalic, Regular Italic, 5, 16385 ],
[ .AppleSystemUIFontUltraLight, UltraLight, 2, 16384 ],
[ .AppleSystemUIFontUltraLightItalic, UltraLight Italic, 2, 16385 ],
[ .AppleSystemUIFontThin, Thin, 3, 16384 ],
...
]
Applying the patch https://reviewboard.mozilla.org/r/18165/diff/2 fixes this bug. This patch didn't land in bug 1201318 because somehow it wasn't necessary. It's not clear to me why.
Flags: needinfo?(stephen.jd.murphy)
Flags: needinfo?(mstange)
Assignee | ||
Comment 28•9 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/61660/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/61660/
Attachment #8766948 -
Flags: review?(jfkthame)
Assignee | ||
Comment 29•9 years ago
|
||
(In reply to Markus Stange [:mstange] from comment #27)
> This patch didn't land in bug 1201318 because somehow it wasn't
> necessary. It's not clear to me why.
On 10.11, the names that availableMembersOfFontFamily:@".SF NS Text" returns are ".SFNSText-Regular", ".SFNSText-Medium" etc.
And those names are accepted by CGFontCreateWithFontName on 10.11.
Assignee | ||
Updated•9 years ago
|
Assignee: nobody → mstange
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Keywords: regressionwindow-wanted
Hardware: Unspecified → All
Comment 30•9 years ago
|
||
Comment on attachment 8766948 [details]
Bug 1279962 - Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12.
https://reviewboard.mozilla.org/r/61660/#review58548
Yes, let's take this as an immediate fix with no disruption to anything else.
Out of curiosity, what does CGFontCopyFullName() return for the problematic font, once you've gotten its CGFontRef this way? And does that name work with CGFontCreateWithFontName()?
Attachment #8766948 -
Flags: review?(jfkthame) → review+
Assignee | ||
Comment 31•9 years ago
|
||
I'll check that on Monday.
I realized that this patch breaks the size-based Text / Display thing. Both the text font and the display font have the same font entry names on 10.12.
Assignee | ||
Comment 33•9 years ago
|
||
(In reply to Jonathan Kew (:jfkthame) from comment #30)
> Out of curiosity, what does CGFontCopyFullName() return for the problematic
> font, once you've gotten its CGFontRef this way?
System Font Regular
System Font Light
System Font Semibold
[...]
> And does that name work
> with CGFontCreateWithFontName()?
It returns a font, but it looks like it returns the Display variant instead of the Text variant.
Assignee | ||
Comment 34•9 years ago
|
||
Comment on attachment 8766948 [details]
Bug 1279962 - Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12.
Review request updated; see interdiff: https://reviewboard.mozilla.org/r/61660/diff/1-2/
Assignee | ||
Comment 35•9 years ago
|
||
This patch makes the size-dependent Text->Display switch work again. But the code is terrible.
Updated•9 years ago
|
Whiteboard: [gfx-noted] → [gfx-noted][sierra]
Comment 36•9 years ago
|
||
The issue seem to go away on Sierra beta 2.
Comment 37•9 years ago
|
||
Also fixed here with 10.12 beta 2 update.
Assignee | ||
Comment 38•9 years ago
|
||
Confirmed.
They went back to calling the font family members names like .SFNSTextItalic_Light and .SFNSDisplay_Semibold. Thanks Apple!
I'd still like to clean this up so that we can go e.g. from [NSFont menuBarFontOfSize:0.0] to the NSFont's CGFontRef without going through string font names in the middle, but we can do this in a separate bug without time pressure.
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Comment 40•9 years ago
|
||
It seem to be back with new developer beta (16A254g).
Comment 41•9 years ago
|
||
Confirming, strange font is back in latest beta.
Assignee | ||
Comment 42•9 years ago
|
||
Reopening. (I haven't updated myself yet.)
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Assignee | ||
Updated•9 years ago
|
Attachment #8766948 -
Flags: review?(mstange)
Assignee | ||
Comment 43•9 years ago
|
||
Comment on attachment 8766948 [details]
Bug 1279962 - Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12.
https://reviewboard.mozilla.org/r/61660/#review62408
Re-requesting review, because the patch has changed a lot compared to the version you reviewed.
Assignee | ||
Updated•9 years ago
|
Attachment #8766948 -
Flags: review?(mstange)
Attachment #8766948 -
Flags: review?(jfkthame)
Attachment #8766948 -
Flags: review+
Comment 44•9 years ago
|
||
Comment on attachment 8766948 [details]
Bug 1279962 - Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12.
https://reviewboard.mozilla.org/r/61660/#review62450
It's horrible that we have to do this, but r=me anyway, at least as a short-term fix. Maybe we can eventually re-think how we're managing font references on MacOS and come up with a cleaner approach.
Attachment #8766948 -
Flags: review?(jfkthame) → review+
Comment 45•9 years ago
|
||
I am still having this issue with Sierra Beta 3 (16A254g) and Firefox Nightly as of 2017-07-20.
Let me know what I can do to help fix this. Happy to test a build or provide more detailed feedback.
Comment 47•9 years ago
|
||
Pushed by mstange@themasta.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/faf57f9dbeee
Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12. r=jfkthame
Comment 48•9 years ago
|
||
bugherder |
Status: REOPENED → RESOLVED
Closed: 9 years ago → 9 years ago
status-firefox50:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla50
Updated•9 years ago
|
Summary: Default Font Breaks after upgrading to macOS Sierra 10.12 → [10.12] Default Font Breaks after upgrading to macOS Sierra 10.12
Assignee | ||
Updated•9 years ago
|
Assignee | ||
Comment 49•9 years ago
|
||
Comment on attachment 8766948 [details]
Bug 1279962 - Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12.
Approval Request Comment
[Feature/regressing bug #]: macOS 10.12 Sierra
[User impact if declined]: Fonts in the Firefox UI are completely wrong; this is extremely easy to notice and looks really bad
[Describe test coverage new/current, TreeHerder]: none
[Risks and why]: low to medium
[String/UUID change made/needed]: none
Attachment #8766948 -
Flags: approval-mozilla-aurora?
Comment 50•9 years ago
|
||
Comment on attachment 8766948 [details]
Bug 1279962 - Fall back to getting the CGFontRef from NSFont to support hidden system fonts on 10.12.
This patch fixes the font issue in Sierra. Take it in 49 aurora.
Attachment #8766948 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Updated•9 years ago
|
Comment 51•9 years ago
|
||
bugherder uplift |
Comment 53•8 years ago
|
||
Hello everyone,
I'm not a programmer user, I got the error described here in which "plugin-container.app" asks me to download the font Osaka. Looking to solve the problem on the Internet, this thread was the unique result related to this bug.
At this time (Firefox 49.0.1, MacBook Air OSX Sierra 10.12) I get this message every time I click to start a new search, that is almost all the time.
Comment 54•8 years ago
|
||
The issue of the prompt to download Osaka was split off to bug 1283573, but was supposed to have been fixed there already. I'm copying your comment over to that bug.
Comment 55•8 years ago
|
||
MacOS Sierra 10.12.3 (16D32)
FireFox 51.0.1 (64b)
"plugin-container.app" asks me 2x to download the font "Osaka"
all plugins are disabled, only add-ons allowed.
maybe was not commited for mac-users? :) But bug can be reproduced on my MacMini since last 2 Days...
Thank you!
You need to log in
before you can comment on or make changes to this bug.
Description
•