Open Bug 414427 Opened 16 years ago Updated 1 year ago

Should use "Document font" and "Fixed width font" families from gnome settings

Categories

(Core :: Graphics: Text, enhancement)

x86
Linux
enhancement

Tracking

()

UNCONFIRMED

People

(Reporter: u294409, Unassigned)

Details

(Whiteboard: DUPEME?)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.9b3pre) Gecko/2008012804 Fedora/8 (Werewolf) Minefield/3.0b3pre
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.9b3pre) Gecko/2008012804 Fedora/8 (Werewolf) Minefield/3.0b3pre

to integrate better with linux environment firefox should respect fonts set by user in XSETTINGS protocol (at least the GNOME's settings).

Reproducible: Always

Steps to Reproduce:
1. open gnome's appearance settings
2. set some fancy fonts
3. open a website in firefox
Actual Results:  
user set fonts are not used (own settings are used)

Expected Results:  
maybe an option "use desktop environment fonts"?

we really need this to make our desktops pretty
Whiteboard: DUPEME?
Version: unspecified → Trunk
So what you are saying is that you want the option to have Firefox autodetect your "Document Font" and "Fixed Width Font" from your gnome settings, and use that as the default fonts for web content, instead of using the fonts set in the Font dialog which can be accessed via the Preferences dialog?

PS: What a cool runon sentence I made.
Yes, exactly that option, but DISABLED by default (distros can modify firefox.js easiliy).
(In reply to comment #1)
> So what you are saying is that you want the option to have Firefox autodetect
> your "Document Font" and "Fixed Width Font" from your gnome settings, and use
> that as the default fonts for web content, instead of using the fonts set in
> the Font dialog which can be accessed via the Preferences dialog?

The full aim on *nix platforms would be to bypass completelety the historic Firefox font defaults and use the system font defaults, with the i18n substitution rules defined at fontconfig level. Distributions work hard to have settings in fontconfig that correspond to the fonts they actually deploy, Firefox is one of the last big visibility desktop app that ignores these settings.

Hmmm... interesting, but is it possible to do easily? Firefox doesn't use many thing directly...
(In reply to comment #4)
> Hmmm... interesting, but is it possible to do easily?

It's basically the same thing you asked. Use XSettings to get default fonts, rely on fontconfig for substitution of those fonts, forget about the prefs.js font keys
Old users will not be satisfied... But I'll be as other own-font-settings-lovers :) .
I'd like to add, that while from the original bug report it might seem we aim only at the font family setting, we'd like firefox to make use of font size setting as well. The rationale behind is clear. Different users have different HW/SW setup and will have fonts (family and size) to fit their needs (e.g. user A with big monitor who sit far from it will have big fonts, say 16 pt, while user B with small monitor who sit close to it will have small fonts, say 9 pt) and together with correctly autodetected DPI the absolute font sizes will be more or less same for whatever resolution user chooses (and regardless the chosen screen resolution, user will see the same, only with less/more detail). 

And now you have firefox with font sizes set relatively to HW (in pixels) and not respective to system settings - this results in too small fonts for user A and too big fonts for user B (in case usual DPI around 100 is set) and differences between different screen resolutions on same monitor. At least in linux environment this is not an expected behaviour from any app.
Resummarizing bug to match the original request and moving to a possibly correct component (it's really split between the style system and gfx).  (If you want a bug about using gnome's font size as well, as comment 7 suggests, that should be filed as a *separate* bug report, although we're unlikely to do it.  Please avoid further discussion of that issue here.)

I'm also not sure how well this proposal would work across languages; there may be some language groups that really do prefer defaulting to serif rather than sans-serif, I think, but is GNOME's default always sans, and isn't language-group-specific?  (If it's locale-specific, that's even worse; I'd really prefer that English Web pages display the same by default on any locale system, and likewise for Japanese Web pages, etc.)

Given the amount of work involved (relative to the amount of benefit, which seems to me only questionably positive), this doesn't seem like a particularly high priority to me.
Component: Shell Integration → GFX: Thebes
Product: Firefox → Core
QA Contact: shell.integration → thebes
Summary: fonts: firefox should respect gnome settings → Should use "Document font" and "Fixed width font" families from gnome settings
(In reply to comment #8)
> If you want a bug about using gnome's font size as well, as comment 7 suggests,
> that should be filed as a *separate* bug report

That seems to have already been filed as bug 412669
(In reply to comment #8)

> I'm also not sure how well this proposal would work across languages; there may
> be some language groups that really do prefer defaulting to serif rather than
> sans-serif, I think, but is GNOME's default always sans, and isn't
> language-group-specific?

The request is to hook in the current desktop settings exposed via XSettings to
apps. Those settings are already QAed for i18n, because you know, every well
behaved app installed uses them, so they better work. They correspond to fonts
actually installed on the system and to the user actual preferences. A user can
choose a serif default or even a specific font family if he so wishes.

There is *zero* value added in trying to bypass those settings by using
different lists.

> (If it's locale-specific, that's even worse; I'd
> really prefer that English Web pages display the same by default on any locale
> system, and likewise for Japanese Web pages, etc.)

It's not locale-specific.

> Given the amount of work involved (relative to the amount of benefit, which
> seems to me only questionably positive),

I think you do not understand the benefit.
The benefit for the user is Firefox just works like his other apps. As opposed
to Firefox behaving weirdly, trying to use different settings that other
applications, trying to use fonts not available on the system, and ignoring
fonts actually installed. The web is littered with Linux users asking why the
hell Firefox is misbehaving and using different fonts than other apps.

The user should not have to configure font settings in Firefox when his desktop
settings already work (either because the defaults were fine or because he
changed them to suit his tastes). Especially given the Firefox font defaults UI
is not exactly user-friendly.

The Linux situation is very different from the Windows situation where Firefox
can just use the proprietary Microsoft fonts. Linux font offerings are very
diverse and the default prefs.js Firefox settings are almost always wrong for
this platform.

> this doesn't seem like a particularly high priority to me.

It is sad to see that Mozilla developpers continue to have so little
understanding of free and open systems.
(In reply to comment #10)
> The Linux situation is very different from the Windows situation where Firefox
> can just use the proprietary Microsoft fonts. Linux font offerings are very
> diverse and the default prefs.js Firefox settings are almost always wrong for
> this platform.

Um, our default fonts on Linux are either 'serif' or 'sans-serif', which both map to fontconfig default sets.  So I don't see how the diversity is relevant here; we're already picking it up automatically.
Well, either 'serif' or 'sans-serif' for variable-width fonts (depending on language group); for fixed-width fonts it's 'monospace', of course.  See the default values of the font.name.* and font.default.* prefs in about:config.
But that does not pick the user-level defaults exposed by XSettings.
I know that, but it refutes your point that fixing this bug would make Firefox use the diversity of fonts better.
I think it would be good, since it would affect only elements on webpage that have no font-family defined in CSS.
(In reply to comment #15)
> I think it would be good, since it would affect only elements on webpage that
> have no font-family defined in CSS.

That's not true; our font preferences define the user's preference for the CSS generic families 'serif' and 'sans-serif', and then choose which one is the default.  So if we have a different default font, that implies having a different value for either 'serif' or 'sans-serif', which means that either Web pages that specify:
  font-family: Helvetica, Arial, sans-serif;
or:
  font-family: "Times New Roman", Times, serif;
will display differently, assuming you don't have Helvetica, Arial, Times New Roman, and Times.
It was a "thought-shortcut", don't worry, I know about such situations. The problem is that default font set is different on all platforms, but SVG fonts and downloadable fonts (CSS3) will help it change in future.
And it also affects the case where the Web page specifies only fonts that aren't available, without a generic, like:
  font-family: Helvetica, Arial;
(In reply to comment #17)
> It was a "thought-shortcut", don't worry, I know about such situations. The
> problem is that default font set is different on all platforms, but SVG fonts
> and downloadable fonts (CSS3) will help it change in future.

This is not true for Chinese and Japanese. The downloadable fonts are usable only in some languages which don't have many characters. If many web sites prepare the downloadable fonts for Chinese or Japanese characters, users need to download the large font files on each web sites. The file size is several MB at least.
Now I could say that this is your problem, but I understand that pain, when you can't use your language's own characters when writing a text.

But hey, doesn't China and Japan have fast Internet links? In Poland that could be a problem when we would use Japanese/Chinese characters, because most of our Internet links used by people isn't 1 Mbps, but you have 1 Mbps as minimum, probably, don't you?
(In reply to comment #19)

> This is not true for Chinese and Japanese. The downloadable fonts are usable
> only in some languages which don't have many characters. If many web sites
> prepare the downloadable fonts for Chinese or Japanese characters, users need
> to download the large font files on each web sites. The file size is several MB
> at least.

BTW for this problem you should probably look at bug #467729 Not a transient font download, but actual long-term font installation.
1 Mbps is not much faster for CJ fonts downloading. And such large link speed should not be used for fonts. Note that the downloadable fonts are not realistic by the cost too. E.g., there are few free Japanese fonts. Because the Chinese characters which are used in Japan are very many. (E.g., Joyo Kanji is about 2000 characters, see http://en.wikipedia.org/wiki/J%C5%8Dy%C5%8D_kanji ) Generally, one Japanese font which is for screen is about 10 thousand yen or more... Of course, such fonts cannot be uploaded for downloadable fonts. So, the free Japanese downloadable fonts are not realistic in future too.

I think that the current our font preferences are best solution for CSS rendering. The fonts of web contents are customizable by users and web designers. The gnome font setting didn't assume such customizable contents in applications, probably. So, maybe, we don't need to honor the settings in web contents.
I'm quite sure Japanese users like others have no wish to have fonts working in Firefox but not other apps (or the reverse), so Firefox-level preferences which are different from desktop preferences just double their configuration burden for no win at all
Severity: normal → S3
Component: Graphics → Graphics: Text
You need to log in before you can comment on or make changes to this bug.