haikuwebkit/LayoutTests/css-dark-mode/color-scheme-scrollbar.html

113 lines
3.1 KiB
HTML
Raw Permalink Normal View History

Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<style>
body {
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
color-scheme: light dark;
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
}
#test {
overflow-x: hidden;
overflow-y: scroll;
width: 100px;
height: 50px;
}
#test-content {
width: 100px;
height: 100px;
}
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
</style>
<body><div id="test"><div id="test-content"></div></div></body>
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
<script>
function test_prop(element, prop, expected) {
assert_equals(window.getComputedStyle(element).getPropertyValue(prop), expected);
}
test(function() {
if (!window.internals)
return;
internals.settings.setUseDarkAppearance(true);
}, "Set dark appearance");
test(function() {
if (!window.internals)
return;
internals.setViewIsTransparent(true);
}, "Set view to transparent");
test(function() {
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
test_prop(document.body, "color-scheme", "light dark");
}, "Body Element color scheme is light and dark");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
test(function() {
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
test_prop(document.documentElement, "color-scheme", "auto");
}, "Document Element color scheme is auto");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarOverlayStyle(), "light");
}, "Document scrollbar overlay style is light");
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarUsingDarkAppearance(), true);
}, "Document scrollbar is using dark appearance");
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarOverlayStyle(document.getElementById("test")), "default");
}, "Element scrollbar overlay style is default");
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarUsingDarkAppearance(document.getElementById("test")), true);
}, "Element scrollbar is using dark appearance");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
test(function() {
let styleElement = document.createElement("style");
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
styleElement.textContent = ":root { color-scheme: light }";
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
document.head.appendChild(styleElement);
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
}, "Set color scheme to light on the document element");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
test(function() {
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
test_prop(document.body, "color-scheme", "light dark");
}, "Body Element color scheme is light and dark 2");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
test(function() {
Rename `supported-color-schemes` to `color-scheme`. https://bugs.webkit.org/show_bug.cgi?id=197016 rdar://problem/49980259 Reviewed by Simon Fraser. Source/WebCore: Changed `supported-color-schemes` to `color-scheme` to follow the spec changes being tracked by: https://github.com/w3c/csswg-drafts/issues/3807 The old `supported-color-schemes` is now an alias of `color-scheme` for compatibility. Tests: css-dark-mode/color-scheme-css-parse.html css-dark-mode/color-scheme-css.html css-dark-mode/color-scheme-meta.html css-dark-mode/color-scheme-priority.html css-dark-mode/color-scheme-scrollbar.html css-dark-mode/older-syntax/supported-color-schemes-css.html css-dark-mode/older-syntax/supported-color-schemes-meta.html css-dark-mode/older-systems/color-scheme-css.html css-dark-mode/older-systems/color-scheme-meta.html * WebCore.xcodeproj/project.pbxproj: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::updateColorScheme): (WebCore::StyleBuilderConverter::convertColorScheme): (WebCore::StyleBuilderConverter::updateSupportedColorSchemes): Deleted. (WebCore::StyleBuilderConverter::convertSupportedColorSchemes): Deleted. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueColorScheme): (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): Deleted. * css/StyleResolver.cpp: (WebCore::StyleResolver::applyMatchedProperties): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeColorScheme): (WebCore::CSSPropertyParser::parseSingleValue): (WebCore::consumeSupportedColorSchemes): Deleted. * dom/Document.cpp: (WebCore::processColorSchemeString): (WebCore::Document::processColorScheme): (WebCore::Document::useDarkAppearance const): (WebCore::processColorSchemes): Deleted. (WebCore::Document::processSupportedColorSchemes): Deleted. * dom/Document.h: * html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::process): * page/FrameView.cpp: (WebCore::FrameView::rendererForColorScheme const): (WebCore::FrameView::useDarkAppearance const): (WebCore::FrameView::styleColorOptions const): (WebCore::FrameView::rendererForSupportedColorSchemes const): Deleted. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::colorScheme const): (WebCore::RenderStyle::setHasExplicitlySetColorScheme): (WebCore::RenderStyle::hasExplicitlySetColorScheme const): (WebCore::RenderStyle::setColorScheme): (WebCore::RenderStyle::initialColorScheme): (WebCore::RenderStyle::NonInheritedFlags::operator== const): (WebCore::RenderStyle::supportedColorSchemes const): Deleted. (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Deleted. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Deleted. (WebCore::RenderStyle::setSupportedColorSchemes): Deleted. (WebCore::RenderStyle::initialSupportedColorSchemes): Deleted. * rendering/style/RenderStyleConstants.h: * rendering/style/StyleColorScheme.h: Renamed from Source/WebCore/rendering/style/StyleSupportedColorSchemes.h. (WebCore::StyleColorScheme::StyleColorScheme): (WebCore::StyleColorScheme::operator== const): (WebCore::StyleColorScheme::operator!= const): (WebCore::StyleColorScheme::isAuto const): (WebCore::StyleColorScheme::isOnly const): (WebCore::StyleColorScheme::colorScheme const): (WebCore::StyleColorScheme::add): (WebCore::StyleColorScheme::contains const): (WebCore::StyleColorScheme::setAllowsTransformations): (WebCore::StyleColorScheme::allowsTransformations const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator== const): * rendering/style/StyleRareInheritedData.h: Source/WebInspectorUI: * UserInterface/Views/Main.css: (:root): LayoutTests: * css-dark-mode/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/color-scheme-parse-expected.txt: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes-expected.txt. * css-dark-mode/color-scheme-parse.html: Renamed from LayoutTests/css-dark-mode/parse-supported-color-schemes.html. * css-dark-mode/color-scheme-priority-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority-expected.txt. * css-dark-mode/color-scheme-priority.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-priority.html. * css-dark-mode/color-scheme-scrollbar-expected.txt: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar-expected.txt. * css-dark-mode/color-scheme-scrollbar.html: Renamed from LayoutTests/css-dark-mode/supported-color-schemes-scrollbar.html. * css-dark-mode/older-syntax/supported-color-schemes-css-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-css.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes-css.html. * css-dark-mode/older-syntax/supported-color-schemes-meta-expected.txt: Copied from LayoutTests/css-dark-mode/supported-color-schemes-expected.txt. * css-dark-mode/older-syntax/supported-color-schemes-meta.html: Copied from LayoutTests/css-dark-mode/supported-color-schemes.html. * css-dark-mode/older-systems/color-scheme-css-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css-expected.txt * css-dark-mode/older-systems/color-scheme-css.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-css.html. * css-dark-mode/older-systems/color-scheme-meta-expected.txt: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes-expected.txt. * css-dark-mode/older-systems/color-scheme-meta.html: Renamed from LayoutTests/css-dark-mode/older-systems/supported-color-schemes.html. * fast/css/style-enumerate-properties.html: Updated property count. Canonical link: https://commits.webkit.org/211294@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-04-17 23:15:01 +00:00
test_prop(document.documentElement, "color-scheme", "light");
}, "Document Element color scheme is light");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarOverlayStyle(), "default");
}, "Document scrollbar overlay style is default");
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarUsingDarkAppearance(), false);
}, "Document scrollbar is using light appearance");
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarOverlayStyle(document.getElementById("test")), "default");
}, "Element scrollbar overlay style is default 2");
test(function() {
if (!window.internals)
return;
assert_equals(internals.scrollbarUsingDarkAppearance(document.getElementById("test")), true);
}, "Element scrollbar is using dark appearance 2");
Use a light scrollbar for transparent web views in dark mode. https://bugs.webkit.org/show_bug.cgi?id=191559 rdar://problem/46000489 Reviewed by Dean Jackson. Source/WebCore: Test: css-dark-mode/supported-color-schemes-scrollbar.html * css/CSSProperties.json: Marked supported-color-schemes as a custom Value. * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueSupportedColorSchemes): * editing/cocoa/WebContentReaderCocoa.mm: Use FrameView's useDarkAppearance(). (WebCore::createFragment): * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::paint): Use FrameView's useDarkAppearance(). * page/FrameView.cpp: (WebCore::FrameView::recalculateScrollbarOverlayStyle): Use a light scrollbar for transparent web views in dark mode. (WebCore::FrameView::rendererForSupportedColorSchemes const): Added. Return the body for document element renderer. (WebCore::FrameView::useDarkAppearance const): Use rendererForSupportedColorSchemes. (WebCore::FrameView::styleColorOptions const): Added. Ditto. * page/FrameView.h: * rendering/style/RenderStyle.cpp: (WebCore::rareInheritedDataChangeRequiresRepaint): Drive-by fix. Added supportedColorSchemes. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetSupportedColorSchemes): Added. (WebCore::RenderStyle::hasExplicitlySetSupportedColorSchemes const): Added. (WebCore::RenderStyle::NonInheritedFlags::operator== const): Added supportedColorSchemes. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): Use FrameView's useDarkAppearance(). * testing/Internals.cpp: (WebCore::Internals::setViewIsTransparent): Added. (WebCore::Internals::scrollbarOverlayStyle const): Added. * testing/Internals.h: * testing/Internals.idl: Added setViewIsTransparent and scrollbarOverlayStyle. Source/WebKit: * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: (WebKit::InjectedBundleRangeHandle::renderedImage): Use FrameView's useDarkAppaearance(). * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRect): Ditto. LayoutTests: * css-dark-mode/supported-color-schemes-scrollbar-expected.txt: Added. * css-dark-mode/supported-color-schemes-scrollbar.html: Added. Canonical link: https://commits.webkit.org/206359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-11-14 01:15:24 +00:00
</script>