Brave can't render colours on 30 bit colour depth displays (or 10 bits/color)

Description of the issue:
Colors on 30-bit color depth displays have undefined bluish cast. The problem is on the entire browser including menus and toolbars.
Chromium renders correctly so it is something specific to Brave
Perhaps for performance reasons brave is not using compositing?
If it is still based on Electron then it is obvious that it will never work on 32 bit color displays until Electron fixes that.

Steps to Reproduce (add as many as necessary): 1. 2. 3.
Start the browser and compare colors with Chromium

Actual Result (gifs and screenshots are welcome!):

Expected result:
Correct colors

Reproduces how often:
happens every time

Operating System and Brave Version(See the About Brave page in the main menu):
Brave: Version 0.65.77 Chromium: 74.0.3729.108 (Official Build) (64-bit)
OS Debian Stretch 64 bit on all the window managers: KDE, LXDE, XFCE, Gnome

It appears that the problem is not related to the desktop used.

Additional Information:
It must be some flag you use because by default Chromium does not have this problem. This is the single most issues that prevents me of using Brave as my default browser.

@bhlevca,
Can you try disabling Hardware Acceleration and see if this resolves the issue?

Settings --> Advanced --> System --> Hardware Acceleration

I got this request before and I will repeat:
Use Hardware acceleration when available is OFF

I don’t think that HW acceleration has anything to do with this problem. It is all about the canvas you are using and how you use compositing if ever.

BTW, I use HW acceleration in Chrome and it is just fine as you can see in the attachment.

There was a bug in the code base of chromium. If you move to 80.0 or higher this problems is solved.
Please do that as soon as possible to allow linux users on 10 bit/color.

It was a hard battle, but I manged to convince them to do it. Now is your time :slight_smile:

I am on Chromium Version 81.0.4021.2 (Official Build) dev (64-bit) and all is fine