With the latest stable release of their Chrome browser for Linux (43.0.2357.65), Google changed the default UI scaling factor depending on your hardware's display resolution. It's meant to be a feature, but here's the deal: Most of us already use system-wide UI scaling settings to bring all application windows to a convenient size. Therefore, we don't need an application specific setting.
Unfortunately, Google's developers thought otherwise and decided to scale up all of Chrome's UI elements - including pixel graphics - to fit hi-res screens. On my Lenovo Thinkpad X1, the result looks rather hideous. The tab bar is all huge and blurry, and all the tool bar icons and bookmark favicons appear pixelated:
In terms of interface design, this is Frankenstein level. Even lesser talented design students know not to scale up pixel images, because, well … you would see the goddamn pixels!
Get thee behind me, Satan!
To permanently get back to the nice, calming original scaling factor (=1), you need to edit Chrome's desktop file:
sudo nano /usr/share/applications/google-chrome.desktop
Find the line which contains the path to the binary and change it from
Exec=/usr/bin/google-chrome-stable %U
to
Exec=/usr/bin/google-chrome-stable --force-device-scale-factor=1 %U
Save the file (in nano: type ctrl + x
and confirm with y
) and restart Chrome.
Phew - we're back to normal!
This solution was first suggested by a member of the Chromium community.
UPDATE: Ubuntu 15.04
In Ubuntu 15.04, the path of the .desktop file was changed to ~/.local/share/applications/google-chrome.desktop
.
Don't forget to add %U
at the end of the line, as doing otherwise will lead to strange behavior when clicking on hyperlinks in other applications such as your mail program or RSS reader.
UPDATE 2, 13 Oct 2016:
With build 54.0.2840.59, the Chrome developers finally fixed the terrible UI scaling, making the workarounds described in this blog post obsolete.
UPDATE 3, 04 Mar 2017:
Chrome and Chromium developers still fiddle around with these settings. Again they seem to ignore the system-wide UI-scaling, which leads to differently sized UI elements on the same machine:
Chromium's desktop file is located in:
/usr/share/applications/chromium-browser.desktop