Bug 2096153 - strange font priorities in Firefox
Summary: strange font priorities in Firefox
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: google-droid-fonts
Version: 37
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Ali Erdinc Koroglu
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 2062386
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-06-13 06:03 UTC by Akira TAGOH
Modified: 2023-05-19 01:16 UTC (History)
6 users (show)

Fixed In Version: google-droid-fonts-20200215-15.fc39 google-droid-fonts-20200215-15.fc38
Clone Of: 2062386
Environment:
Last Closed: 2023-05-16 13:48:20 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Akira TAGOH 2022-06-13 06:03:27 UTC
Cloning to focus on the Droid specific issue here. please ignore URW related description.

+++ This bug was initially created as a clone of Bug #2062386 +++

Description of problem:
Sometimes, when using a native font stack in CSS on a web page, fonts that are not in the font stack at all are substituted for the desired fonts.

This only seems to affect web pages viewed using:

- Fedora (not Ubuntu, Debian 11, or Manjaro)
- Firefox (not Chrome or Chromium)
- When using the RPM version or Mozilla's official build from their website (not the Flatpak)

Happens in the stable version of Firefox, Firefox Beta, and Firefox nightly.

Two substitutions I've identified so far:

- Droid Sans is substituted for Open Sans
- P052 is substituted for 'URW Palladio L' or Palatino

Substituting for Palatino may be less objectionable, since that's a generic choice, but URW Palladio L is rather specific and it's surprising to see the substitution. This also wouldn't be as objectionable if the font substitutions were better. Droid Sans doesn't look much like Open Sans at all, and P052 looks really ugly (it has unevenly sized letters). In Firefox Flatpak, it instead substitutes the better-looking 'TeX Gyre Pagella', and only does that for Palatino, not for 'URW Palladio L' (which was higher priority in my font stack). This is more desirable behavior.

The source of the problem seems to be that if you run the following command:

fc-match :family="Open Sans"

It returns Droid Sans.

Possibly related bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1820166
https://bugzilla.mozilla.org/show_bug.cgi?id=1406790

How reproducible:
Consistently

Steps to Reproduce:
1. Open a clean Fedora 35 install, and verify that Open Sans is not installed.
2. Create the following web page and view it in a browser:

```
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
  <style>
    h1,h2,h3,h4 {
      font-family: Open Sans, Fira Sans;
    }
  </style>
</head>
<body>
  <h1>Hello World</h1>
  <p>Lorem ipsum dolor sit amet.</p>
</body>
</html>
```

Alternately, view a real live (but more complex) website at https://www.maximumethics.dev/

Actual results:
Notice that the text on the webpage is displayed in Droid Sans, not Open Sans.

Expected results:
The webpage displays the next available font in the font stack, Fira Sans in this case, or the browser's default font if you don't have Fira Sans.

--- Additional comment from Akira TAGOH on 2022-03-30 09:26:08 UTC ---

Well, maybe good to file a separate bug to object each substitutions.

For Open Sans, google-droid-sans-fonts has the following config:
  <alias binding="same">
    <family>Open Sans</family>
    <accept>
      <family>Droid Sans</family>
    </accept>
  </alias>

This is the reason why you see that behavior.

For URW Palladio L, urw-base35-fonts-common has the following config:
  <alias binding="same">
    <family>URW Palladio L</family>
    <accept>
      <family>P052</family>
    </accept>
  </alias>

And finally for Palatino, it is in urw-base35-p052-fonts:
 <alias binding="same">
    <family>Palatino</family>
    <accept>
      <family>P052</family>
    </accept>
  </alias>

Although those urw config are coming from upstream. so if you have any objections for them, it would be good to talk with URW upstream.

Comment 1 Ben Cotton 2022-08-09 13:17:51 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 37 development cycle.
Changing version to 37.

Comment 2 Fedora Update System 2023-05-16 13:46:47 UTC
FEDORA-2023-847dee12b9 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-847dee12b9

Comment 3 Fedora Update System 2023-05-16 13:48:20 UTC
FEDORA-2023-847dee12b9 has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 4 Fedora Update System 2023-05-17 07:25:01 UTC
FEDORA-2023-af571b15ef has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-af571b15ef

Comment 5 Fedora Update System 2023-05-18 02:06:33 UTC
FEDORA-2023-af571b15ef has been pushed to the Fedora 38 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-af571b15ef`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-af571b15ef

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2023-05-19 01:16:37 UTC
FEDORA-2023-af571b15ef has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.