Intent to Ship: Used color scheme root scrollbars

805 views
Skip to first unread message

Yaroslav Shalivskyy

unread,
Feb 29, 2024, 4:12:23 PMFeb 29
to blin...@chromium.org, fla...@chromium.org, fut...@chromium.org, Olga Gerchikov

Contact emails

Explainer

None

Specification

Summary

Makes the browser use the user's preferred color scheme to render the viewport scrollbars if the value of "page’s supported color schemes" is 'normal' or not specified, and the computed value of the color-scheme for the root element is 'normal'. Viewport scrollbars can be considered to be outside the web content. Therefore, the user agents should honor the user's preferred color scheme when rendering viewport scrollbars if page authors have not explicitly specified support for color schemes.



Blink component

TAG review

None

TAG review status

Not applicable

Risks


Interoperability and Compatibility

None



Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

None



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

Yes

Is this feature fully tested by web-platform-tests?

No

Flag name on chrome://flags

None

Finch feature name

UsedColorSchemeRootScrollbars

Requires code in //chrome?

False

Tracking bug

Measurement

Added a use counter UsedColorSchemeRootScrollbarsDark. The counter tracks the number of users who have dark mode root scrollbars due to the feature. Adoption in Edge Stable population based on this metric is approximately 13%.

Availability expectation

Initially available in Chromium browsers.

Adoption expectation

This feature immediately affects specific use cases upon launch.

Adoption plan

This feature has been through origin trials on Edge. Other browsers adopt this feature to fix specific use cases.

Non-OSS dependencies

Does the feature depend on any code or APIs outside the Chromium open source repository and its open-source dependencies to function?

No.

Estimated milestones

Shipping on desktop
124
DevTrial on desktop
121


Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).

None

Link to entry on the Chrome Platform Status

Links to previous Intent discussions

This intent message was generated by Chrome Platform Status.

Mike Taylor

unread,
Mar 1, 2024, 8:52:55 AMMar 1
to Yaroslav Shalivskyy, blin...@chromium.org, fla...@chromium.org, fut...@chromium.org, Olga Gerchikov

Hi there,


Would you mind requesting reviews for the various review gates in your chromestatus entry?


On 2/29/24 4:12 PM, 'Yaroslav Shalivskyy' via blink-dev wrote:

Contact emails

Explainer

None

Specification

Summary

Makes the browser use the user's preferred color scheme to render the viewport scrollbars if the value of "page’s supported color schemes" is 'normal' or not specified, and the computed value of the color-scheme for the root element is 'normal'. Viewport scrollbars can be considered to be outside the web content. Therefore, the user agents should honor the user's preferred color scheme when rendering viewport scrollbars if page authors have not explicitly specified support for color schemes.



Blink component

TAG review

None

TAG review status

Not applicable
Any reason you think this is N/A, or have you just not requested TAG review?


Risks


Interoperability and Compatibility

None



Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals:
Could we request signals please?
Any details or feedback you can share from the Origin Trial?

Non-OSS dependencies

Does the feature depend on any code or APIs outside the Chromium open source repository and its open-source dependencies to function?

No.

Estimated milestones

Shipping on desktop
124
DevTrial on desktop
121


Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).

None

Link to entry on the Chrome Platform Status

Links to previous Intent discussions

This intent message was generated by Chrome Platform Status.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/LV3PR00MB17488611D88C9E41AC6A806BA95F2%40LV3PR00MB1748.namprd00.prod.outlook.com.

Yaroslav Shalivskyy

unread,
Mar 1, 2024, 3:10:51 PMMar 1
to blink-dev, mike...@chromium.org, Yaroslav Shalivskyy, fla...@chromium.org, Rune Lillesveen, gerc...@microsoft.com

Hello Mike,

Thank you for taking a look!

I am seeking consensus on how to approach the feature from a standardization perspective. I think the feature can be considered a browser UI change, which is why I haven't requested a TAG review or signals from other engines. However, I am open to doing so if necessary.

I apologize for any confusion. We did the general experimentation in Edge (not the "origin trials" as I mentioned in the email). Retention reports were neutral, and we observed no regressions in scorecards. Also, we have not received any negative user feedback thus far.

I am working on requesting reviews for my chromestatus entry. Thanks for pointing this out!

Thanks,
Yaroslav

Daniel Bratell

unread,
Mar 2, 2024, 1:10:24 PMMar 2
to Yaroslav Shalivskyy, blink-dev, mike...@chromium.org, Rune Lillesveen, gerc...@microsoft.com

Mike didn't refer to the TAG review or browser signals, but the review steps in chromestatus. The intent should request, privacy, security, enterprise, and the other steps there.

I agree that this lives in the borderland between user agent UI and a web visible change so some shortcuts might be possible to motivate, but you still need to click the the appropriate buttons in the chromestatus tool.

/Daniel

Mike Taylor

unread,
Mar 4, 2024, 3:08:23 PMMar 4
to Daniel Bratell, Yaroslav Shalivskyy, blink-dev, Rune Lillesveen, gerc...@microsoft.com

Thanks for the summary of the experiment results on Edge - sounds positive.

If this is purely a browser UI change, then we don't really need the blink-dev process at all. However, if we're relying on concepts defined in a CSSWG draft, and devs can change the outcome w/ some CSS (or maybe here, the lack of CSS to result in non-`normal` computed value...) it would be if there were interoperability in UI choices across browsers. I don't necessarily think we should block on the outcome, but requesting vendor positions could be useful.

(and Daniel, if you scroll down a bit - I did ask about TAG and browser signals. :))

Yaroslav Shalivskyy

unread,
Mar 5, 2024, 5:33:33 PMMar 5
to blink-dev, mike...@chromium.org, fla...@chromium.org, Rune Lillesveen, Daniel Bratell, Yaroslav Shalivskyy
Mike and Daniel, thank you for the suggestions!

I requested browser vendor positions as well as reviews for chromestatus entry.

Mozilla: [css-color-adjust-1] Root non-overlay scrollbars used color scheme · Issue #995 · mozilla/standards-positions (github.com)
WebKit: [css-color-adjust-1] Root non-overlay scrollbars used color scheme · Issue #326 · WebKit/standards-positions (github.com)

I updated the chromestatus entry with these links as well.

William Smith

unread,
Mar 6, 2024, 11:54:37 PMMar 6
to blink-dev, Yaroslav Shalivskyy, mike...@chromium.org, fla...@chromium.org, Rune Lillesveen, Daniel Bratell
Apologies if this isn't the correct place to ask this but I have this working in Chrome Canary and as fantastic as it is, they behavior on some websites has me confused: on https://en.wikipedia.org/wiki/Main_Page and amazon.com the scrollbar is dark, but neither of those webpages have a dark mode in any way. Is this a bug in the feature or is it working as intended?  

Yaroslav Shalivskyy

unread,
Mar 7, 2024, 5:22:14 PMMar 7
to blink-dev, William Smith, Yaroslav Shalivskyy, mike...@chromium.org, fla...@chromium.org, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com
Hello William! Thank you for selfhosting the feature!

For the pages you mentioned, the feature is working as indented. If you enable the dark mode in OS settings (e.g., refer to the screenshot attached from the Windows device), root scrollbars will follow the OS settings unless page authors have explicitly specified page’s supported color schemes.

However, I recently discovered a bug related to Chrome browser Appearance > Mode setting. The setting doesn't impact the calculation of web contents' used color scheme, resulting in inconsistent behavior. For more details, please see: [UsedColorSchemeRootScrollbars] Root scrollbars are dark when the browser color theme setting is "Light" and the OS theme settings is "Dark" [328102503] - Chromium. I am currently prioritizing work on the CL to fix this issue.
windows-example.png

William Smith

unread,
Mar 7, 2024, 6:23:02 PMMar 7
to blink-dev, Yaroslav Shalivskyy, William Smith, mike...@chromium.org, fla...@chromium.org, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com
Thank you! And just to be clear, I personally don't see it as a problem at all, I was only curious. I actually think this should have shipped along with dark mode back in 2019, but better late than never. 

Yaroslav Shalivskyy

unread,
Mar 7, 2024, 6:52:58 PMMar 7
to blink-dev, William Smith, Yaroslav Shalivskyy, mike...@chromium.org, fla...@chromium.org, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com
Thanks for taking a look and your feedback! Please let me know if you have any other questions or concerns.

Yoav Weiss (@Shopify)

unread,
Mar 18, 2024, 4:51:43 AMMar 18
to blink-dev, yshal...@microsoft.com, William Smith, Mike Taylor, Robert Flack, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com
Great to see a positive position from Mozilla on this.

Is the above mentioned bug a blocker here?

Yaroslav Shalivskyy

unread,
Mar 18, 2024, 2:56:52 PMMar 18
to blink-dev, yoav...@chromium.org, Yaroslav Shalivskyy, William Smith, mike...@chromium.org, fla...@chromium.org, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com
Yes, I believe the bug [1] is a blocker.

[1] https://issues.chromium.org/issues/328102503.

Yoav Weiss (@Shopify)

unread,
Mar 26, 2024, 1:25:35 PMMar 26
to blink-dev, yshal...@microsoft.com, Yoav Weiss, William Smith, Mike Taylor, Robert Flack, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com
LGTM1 once the fix to the above issue lands.

Mike Taylor

unread,
Mar 26, 2024, 3:45:08 PMMar 26
to Yoav Weiss (@Shopify), blink-dev, yshal...@microsoft.com, William Smith, Robert Flack, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com

LGTM2

Domenic Denicola

unread,
Mar 26, 2024, 10:41:43 PMMar 26
to blink-dev, Mike Taylor, yshal...@microsoft.com, William Smith, Robert Flack, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com, Yoav Weiss
LGTM3

William Smith

unread,
Apr 30, 2024, 10:21:48 PMApr 30
to blink-dev, Domenic Denicola, Mike Taylor, yshal...@microsoft.com, William Smith, Robert Flack, Rune Lillesveen, Daniel Bratell, gerc...@microsoft.com, Yoav Weiss
Hey another nice bonus with this excellent change is: the YouTube desktop website no longer has to use their dreadful custom scrollbar (see attached screenshot) which has quite a few issues and downsides compared to the standard Chrome scrollbar. Finally they can do away with that and just use the standard Chrome scrollbar! If anyone at Google or YouTube is reading this, please let the relevant people on the YouTube desktop team know!Youtubescrollbar.png
Reply all
Reply to author
Forward
0 new messages