[HowTo] Google Chrome Tweaks for 76.0.3809.100 (or newer) | 20190817


This is my recommendation for best experience with Google Chrome. Feel free debate about options.

Create FILE ~/.config/chrome-flags.conf

nano ~/.config/chrome-flags.conf


--flag-switches-begin --force-dark-mode --high-dpi-support=1 --force-device-scale-factor=1.2 --enable-gpu-rasterization --enable-quic --enable-zero-copy --enable-native-gpu-memory-buffers --ignore-gpu-blacklist --enable-smooth-scrolling --enable-features=MarkHttpAs,StrictOriginIsolation --disable-features=HardwareMediaKeyHandling,OmniboxUIExperimentHideSteadyStateUrlPathQueryAndRef,OmniboxUIExperimentHideSteadyStateUrlScheme,OmniboxUIExperimentHideSteadyStateUrlTrivialSubdomains,ShowManagedUi --flag-switches-end

Restart browser for applying changes.

Check chrome://gpu for details enabled GPU rendering features.

If you have issues with GPU remove from chrome-flags.conf file:

--enable-gpu-rasterization --enable-zero-copy --enable-native-gpu-memory-buffers

--high-dpi-support=1 --force-device-scale-factor=1.2 is designed for HiDPI scalling issue

--force-dark-mode forcing native dark mode GUI


I like it, ‘cause there’s nuthin’ like tryin’ to tweak a “proprietary/closed/blob” app.?

1 Like

Thanks, bspwm edition uses chromium by default, and this might be helpful in developing settings for it.

Ooh, I discovered that you can also set overlay scrollbars from here. It’s going to take me a while to find out how to package these :smiley:

How do we feel about
(can speed loading of images?)

And TCP Fast Open?
"… enables the option to send some extra authentication information in the initial SYN packet for a previously connected client, allowing faster data send start"

I also use
"… runs a tab’s onunload js handler independently of the GUI."

  • following original descriptions.
  • added new flags

EDIT 20180212

  • removed #overlayscrollbars due issues with text areas.

Can all of these switches be enabled via --arguments in front of the executable?

Yep. For example:

/opt/google/chrome/google-chrome --flag-switches-begin --enable-experimental-canvas-features --enable-fast-unload --javascript-harmony --enabled-new-style-notification --enable-quic --site-per-process --enable-tcp-fastopen --ignore-gpu-blacklist --save-page-as-mhtml --enable-smooth-scrolling --enable-features=MaterialDesignExtensions,OmniboxDisplayTitleForCurrentUrl,OmniboxTailSuggestions,OmniboxUIExperimentShowSuggestionFavicons,OmniboxUIExperimentVerticalLayout,SecondaryUiMd --disable-features=MaterialDesignBookmarks --flag-switches-end

1 Like

Do you know how to enable them with a settings file? I would like to package some of them


In my previous post I shared command line options from chrome://version site.
See (wiersz poleceń = command line):

1 Like

I found that to have all the remaining options green enabled in chrome://gpu requires:

@ryanmusante I followed by this:

--flag-switches-begin --enable-experimental-canvas-features --enable-fast-unload --javascript-harmony --enabled-new-style-notification --enable-quic --site-per-process --enable-tcp-fastopen --ignore-gpu-blacklist --save-page-as-mhtml --enable-smooth-scrolling -–enable-zero-copy -–enable-gpu-rasterization --enable-native-gpu-memory-buffers --enable-features=CheckerImaging,MaterialDesignExtensions,OmniboxDisplayTitleForCurrentUrl,OmniboxTailSuggestions,OmniboxUIExperimentShowSuggestionFavicons,OmniboxUIExperimentVerticalLayout,SecondaryUiMd --disable-features=MaterialDesignBookmarks --flag-switches-end

So, for ENABLE full GPU boost you need add CheckerImaging in enable-features flag:
And Other flags:

-–enable-zero-copy -–enable-gpu-rasterization --enable-native-gpu-memory-buffers



I updated 1st main topic with GPU tweaks

How do I enable a similar conf file for Vivaldi browser?

Please ask directly here: https://forum.vivaldi.net/category/35/vivaldi-browser-for-linux

I found JSON database with settings, but this is HARDCORE :scream:

Oh gosh. I’ll just put the arguments in front of the executable, much easier. :smile:


Updated, revised. Please follow NEW guide in 1st comment.


See this funny bug for a funny flag:


OK, I think I see why the flag has no effect. By default, subpixel positioning was enabled: https://chromium.googlesource.com/codesearch/chromium/src/+/bcaef32a5863/ui/gfx/font_render_params.h#58

Next, if no command line flag was supplied, font_render_params_linux.cc was overwriting that default value for desktop Linux case using the device scale factor check result: https://chromium.googlesource.com/codesearch/chromium/src/+/bcaef32a5863/ui/gfx/font_render_params_linux.cc#289

With the command line flag it would do nothing in this block and use the default value (true), so funnily, in the current release of Chromium/Chrome, adding the --disable-font-subpixel-positioning flag has the effect of enabling subpixel positioning (aka same effect as my patches), the complete opposite to flag's name, for all the wrong reasons :smiley:

Forum kindly sponsored by Bytemark