Closed birdie-github closed 4 years ago
The most recent update insists on using custom fonts for all the UI elements of the add-on.
Metropolis for High DPI devices and Inter for Low DPI devices.
Such requests for visual options which are not beneficial for majority of users are straying too far from the main goal of uBO: be an efficient content blocker and inform as best as possible users about where their browser connects. These options have a maintenance burden cost too which I am not willing to keep taking on. So I prefer to decline.
@birdie-github What is the specific reason for wanting to use system fonts?
@gorhill I wanted to post a similar request but birdie-github already did it. The reason I would appreciate this option is because the new font isn't rendered properly on my side. I'm not sure whether it's uBlock, Firefox or OS issue. I tried to troubleshoot (resetting and changing OS clear type settings, FX font rendering settings ect) but without effect. I don't see this issue on any other addon UI, FX UI, or web pages. I use FX 68 ESR, and Windows 7 x64.
@Altsinn,
For comparison, can you post similar screenshots for when using system fonts? You can either un-check the font-family
property from the body
element in the browser's DOM inspector, or just install a pre-1.27.0 version of uBO from the Releases section.
@gorhill Below are screenshots from version 1.26.2 I have installed on FX Nightly.
I am going to need more feedback from more people on this. From the screenshots, I am not sure what the issue is precisely. You say the "new font isn't rendered properly on my side", can you be more precise because I am not seeing anything obvious when compared to the system font in the screenshot from uBO 1.26.2.
I don't see this issue on any other addon UI
About this part, I checked and I can see that both ABP and AdGuard use font faces from their own package, i.e. they also do not use system fonts.
These [Altsinn] fonts really looks weird. For example top curves on o
or on digits are "pointy", and a
had this "dent" on bowl (? belly?). Looks like completely different font.
Looks different/good on my side:
Inter
Metropolis
Unchecked on <body>
, defaults to Noto sans
From the screenshots, I am not sure what the issue is precisely
Maybe it's nit-picking but in my opinion the rendering of the new font is worse than the system font. It's less sharp, some letters are jagged, the thickness is uneven.
I checked and I can see that both ABP and AdGuard use font faces from their own package, i.e. they also do not use system fonts.
I had just addons installed on my FX in mind, not all other addons/content-blockers. Sorry for not being precise.
Maybe it's about ttf vs otf? Or Win 7 vs Linux.
What I am trying to decide here is whether it's such a widespread issue that I should revert to system font by default for all, a common-enough issue that an advanced setting is worth it, or such a rare issue that it's not worth the effort. An advanced setting is not trivial because then it would mean all HTML document pages in uBO need to get the fix.
Maybe it's about ttf vs otf?
I checked and both ABP and AdGuard uses woff2
format. I figure if they use woff2
surely it must be because there is a consensus that it should be fine on all platforms.
Relevant to this issue, there was an issue raised with the Metropolis font in the past: https://github.com/gorhill/uBlock/commit/5bee33253f4549df7853823fba268d2003d120ae#commitcomment-38664270.
Note that I imported the font from the "Inter Web" folder in uBO, but in the package I also see a folder named "Inter Hinted for Windows/Web". Could the solution be that I use the "Inter Hinted for Windows/Web" versions?
I tested the new advanced setting and it works very well. The UI appearance is much better now on my side. Thank you very much for the quick fix!
I'm now running uBlock Origin 1.27.8 in Firefox and I cannot find this setting.
I've enabled I am an advanced user (required reading)
and proceed over there and there's no setting with this name and if I enter it manually it disappears on applying.
@Altsinn @gorhill how exactly does it work? Thank you!
It's in the dev build. Please refer to release notes to find out what is fixed or not in any given version.
FWIW Chrome has always been known to render web fonts poorly on a standard single-density display due to a lack of support for embedded font hinting (https://crbug.com/173207) whereas most of the standard system fonts in Windows have good manual hinting. There's also a problem with variable fonts in Windows 7 and 8 (https://crbug.com/953447 was kinda fixed only for Windows 10).
FWIW Chrome has always been known to render web fonts poorly on a standard single-density display due to a lack of support for embedded font hinting (https://crbug.com/173207) whereas most of the standard system fonts in Windows have good manual hinting.
It is not only Chrome. In general, fonts need to be manually hinted to look sharp in Windows, especially when not using ClearType (e.g. when the screen is rotated 90°). However, almost none of the freely available Web fonts have been manually hinted. The fonts with manual hinting usually cost a lot of money, probably because the hinting requires actual work, and takes a lot of time too.
I personally use the --disable-remote-fonts
flag to disable all Web fonts in Chromium, as their blurriness simply hurts my eyes. This switch also forces uBlock to use the system fonts as well.
@tomasz1986
I used this option in the past when the web wasn't as crazily broken as it is now but lots of websites nowadays use web fonts for control elements on the web page which means disabling them makes browsing certain websites impossible.
I used this option in the past when the web wasn't as crazily broken as it is now but lots of websites nowadays use web fonts for control elements on the web page which means disabling them makes browsing certain websites impossible.
I had this problem too, but recently more and more websites seems to be finally switching to SVG graphics instead of icon fonts (including GitHub itself). Personally, I am now able to browser ~95% of all websites I visit without any major issues, which was not the case 2 or 3 years ago. Also, the major sites (news, shopping, banking, etc.) seem to have never even used icon fonts anyway, as doing so would likely get them in trouble with Web accessibility organisations. Of course, the experience may vary, probably depending much on where you live.
I have set uiStyles
to font-family: Ubuntu; font-weight: 300
but this only affects the tabs and the buttons still use Metropolis.
The use of consistent fonts throughout the UI is important for me. In fact, one of the reasons I use a content blocker is to prevent sites from forcing their fonts on me (and have to punch holes in that rule for any icon fonts). Having non-system fonts in the UI of the extension that I use for blocking non-system fonts is kinda offensive.
I can change the font-family
for the elements @yurikhan is talking about, but I can’t change the letter-spacing
because it’s defined on .tabButton
and button
…
It looks horrible on my computer. It messes up the kerning (see how -oj and -aj look almost separate from the rest of word in «Agordoj», «Listoj», «Miaj» and «Filtriloj»):
Same thing in the «Advanced Settings» screen… Should I open a new issue or is this still considered to be relevant to this one?
Edit: relevant Firefox issue.
Try using !important
:
letter-spacing: unset !important;
Using !important
doesn’t work. Apparently, it doesn’t override declarations made on child elements. Anyway, changing the default letter-spacing
usually makes text harder to read, because the kerning is of the font is made to look good with the default letter spacing.
If you don’t feel that the letter-spacing
is particularly important, many other types of styling are available. You could always make texts a bit more bold (doesn’t seem to work with Inter though) or use more padding for these elements (tab titles and buttons).
What exact CSS string did you use for Never mind, I can see it does not work -- not sure why since the property is inherited.uiStyles
?
The letter spacing was not a choice of mine, this was from this feedback thread, and more specifically this panel.
Ok, looking at the linked design pane above, I realize that the letter-spaced instances were all applying to text that was meant to be bold, and that might have been the primary reason for this. Since in the desktop version of uBO the bold text has been dropped, I guess I should also probably drop the letter-spacing
change.
Thanks a lot!
The most recent update insists on using custom fonts for all the UI elements of the add-on. Is it too much to ask to add an option to be able to use default system fonts for the text inside the add-on?
Thank you!