[webkit-changes] [WebKit/WebKit] 830bbb: Remove ENABLE_INPUT_TYPE_COLOR directive
Anne van Kesteren
noreply at github.com
Tue Jan 14 23:24:56 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 830bbb74107ec7cd2453bf576d5ccefa12d805e9
https://github.com/WebKit/WebKit/commit/830bbb74107ec7cd2453bf576d5ccefa12d805e9
Author: Anne van Kesteren <annevk at annevk.nl>
Date: 2025-01-14 (Tue, 14 Jan 2025)
Changed paths:
M LayoutTests/platform/wpe/accessibility/color-well-legacy-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt
R LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/focus-visible-003-expected.txt
R LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/focus-visible-004-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/dom/elements/global-attributes/dir-auto-form-associated.window-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/rendering/non-replaced-elements/form-controls/resets-expected.txt
R LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end-extra-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/show-picker-disabled-readonly-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-weekmonth-expected.txt
R LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WTF/wtf/PlatformEnable.h
M Source/WebCore/accessibility/AccessibilityNodeObject.cpp
M Source/WebCore/css/CSSPrimitiveValueMappings.h
M Source/WebCore/css/html.css
M Source/WebCore/html/ColorInputType.cpp
M Source/WebCore/html/ColorInputType.h
M Source/WebCore/html/HTMLInputElement.cpp
M Source/WebCore/html/HTMLInputElement.h
M Source/WebCore/html/HTMLInputElement.idl
M Source/WebCore/html/InputType.cpp
M Source/WebCore/loader/EmptyClients.cpp
M Source/WebCore/loader/EmptyClients.h
M Source/WebCore/page/Chrome.cpp
M Source/WebCore/page/Chrome.h
M Source/WebCore/page/ChromeClient.h
M Source/WebCore/page/DragActions.h
M Source/WebCore/page/DragActions.serialization.in
M Source/WebCore/page/DragController.cpp
M Source/WebCore/page/EventHandler.cpp
M Source/WebCore/platform/ColorChooser.h
M Source/WebCore/platform/ColorChooserClient.h
M Source/WebCore/platform/StyleAppearance.cpp
M Source/WebCore/platform/StyleAppearance.h
M Source/WebCore/platform/graphics/adwaita/ControlFactoryAdwaita.cpp
M Source/WebCore/platform/graphics/adwaita/ControlFactoryAdwaita.h
M Source/WebCore/platform/graphics/controls/ColorWellPart.h
M Source/WebCore/platform/graphics/controls/ControlFactory.h
M Source/WebCore/platform/graphics/controls/EmptyControlFactory.cpp
M Source/WebCore/platform/graphics/controls/EmptyControlFactory.h
M Source/WebCore/platform/graphics/ios/controls/ControlFactoryIOS.h
M Source/WebCore/platform/graphics/ios/controls/ControlFactoryIOS.mm
M Source/WebCore/platform/graphics/mac/controls/ColorWellMac.h
M Source/WebCore/platform/graphics/mac/controls/ColorWellMac.mm
M Source/WebCore/platform/graphics/mac/controls/ControlFactoryMac.h
M Source/WebCore/platform/graphics/mac/controls/ControlFactoryMac.mm
M Source/WebCore/platform/mac/ThemeMac.mm
M Source/WebCore/rendering/RenderTheme.cpp
M Source/WebCore/rendering/RenderTheme.h
M Source/WebCore/rendering/adwaita/RenderThemeAdwaita.cpp
M Source/WebCore/rendering/ios/RenderThemeIOS.h
M Source/WebCore/rendering/ios/RenderThemeIOS.mm
M Source/WebCore/rendering/mac/RenderThemeMac.mm
M Source/WebCore/style/InspectorCSSOMWrappers.cpp
M Source/WebCore/style/UserAgentStyle.cpp
M Source/WebCore/style/UserAgentStyle.h
M Source/WebCore/testing/Internals.cpp
M Source/WebKit/Shared/FocusedElementInformation.h
M Source/WebKit/Shared/FocusedElementInformation.serialization.in
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
M Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp
M Source/WebKit/UIProcess/API/gtk/PageClientImpl.h
M Source/WebKit/UIProcess/API/gtk/WebKitColorChooser.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitColorChooser.h
M Source/WebKit/UIProcess/API/gtk/WebKitColorChooserRequest.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitColorChooserRequestPrivate.h
M Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp
M Source/WebKit/UIProcess/API/wpe/PageClientImpl.h
M Source/WebKit/UIProcess/PageClient.h
M Source/WebKit/UIProcess/WebColorPicker.cpp
M Source/WebKit/UIProcess/WebColorPicker.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebPageProxy.messages.in
M Source/WebKit/UIProcess/WebPageProxyInternals.h
M Source/WebKit/UIProcess/gtk/WebColorPickerGtk.cpp
M Source/WebKit/UIProcess/gtk/WebColorPickerGtk.h
M Source/WebKit/UIProcess/ios/DragDropInteractionState.mm
M Source/WebKit/UIProcess/ios/PageClientImplIOS.h
M Source/WebKit/UIProcess/ios/PageClientImplIOS.mm
M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
M Source/WebKit/UIProcess/ios/forms/WKFormColorControl.h
M Source/WebKit/UIProcess/ios/forms/WKFormColorControl.mm
M Source/WebKit/UIProcess/mac/PageClientImplMac.h
M Source/WebKit/UIProcess/mac/PageClientImplMac.mm
M Source/WebKit/UIProcess/mac/WebColorPickerMac.h
M Source/WebKit/UIProcess/mac/WebColorPickerMac.mm
M Source/WebKit/UIProcess/playstation/PageClientImpl.cpp
M Source/WebKit/UIProcess/playstation/PageClientImpl.h
M Source/WebKit/UIProcess/win/PageClientImpl.cpp
M Source/WebKit/UIProcess/win/PageClientImpl.h
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
M Source/WebKit/WebProcess/WebCoreSupport/WebColorChooser.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebColorChooser.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Source/WebKit/WebProcess/WebPage/WebPage.messages.in
M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
M Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.mm
M Source/WebKitLegacy/mac/WebView/WebView.mm
M Source/cmake/OptionsGTK.cmake
M Source/cmake/OptionsMac.cmake
M Source/cmake/OptionsWin.cmake
M Source/cmake/WebKitFeatures.cmake
M Tools/Scripts/webkitperl/FeatureList.pm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsTextField.mm
M Tools/TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm
Log Message:
-----------
Remove ENABLE_INPUT_TYPE_COLOR directive
https://bugs.webkit.org/show_bug.cgi?id=281797
rdar://138223384
Reviewed by Michael Catanzaro and Aditya Keerthi.
It really ought to be redundant with the InputTypeColorEnabled
preference. Let's make it so. Also mark InputTypeColorEnabled as mature
as it has shipped for many years and there is no need to toggle its
behavior.
This adds a no-op PageClientImpl::createColorPicker to WPE and
PlayStation, equivalent to the Windows port (though Windows never had
the directive enabled), which ought to not be reachable as
ColorInputType is never instantiated when InputTypeColorEnabled is
false.
However, apparently these ports enable all features for testing.
Therefore we add a branch in WebPageProxy.cpp to return early for these
ports so they do not crash while testing. We also reset test
expectations for WPE.
* LayoutTests/platform/wpe/accessibility/color-well-legacy-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/focus-visible-003-expected.txt: Removed.
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/focus-visible-004-expected.txt: Removed.
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/dom/elements/global-attributes/dir-auto-form-associated.window-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/rendering/non-replaced-elements/form-controls/resets-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end-extra-expected.txt: Removed.
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/show-picker-disabled-readonly-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-weekmonth-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt: Removed.
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WTF/wtf/PlatformEnable.h:
* Source/WebCore/accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::roleFromInputElement const):
* Source/WebCore/css/CSSPrimitiveValueMappings.h:
(WebCore::toCSSValueID):
* Source/WebCore/css/html.css:
(#endif):
(#endif // defined(ENABLE_INPUT_TYPE_COLOR) && ENABLE_INPUT_TYPE_COLOR): Deleted.
* Source/WebCore/html/ColorInputType.cpp:
* Source/WebCore/html/ColorInputType.h:
* Source/WebCore/html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::attributeChanged):
(WebCore::HTMLInputElement::setColorSpace):
(WebCore::HTMLInputElement::resumeFromDocumentSuspension):
(WebCore::HTMLInputElement::prepareForDocumentSuspension):
(WebCore::HTMLInputElement::valueAsColor const):
(WebCore::HTMLInputElement::selectColor):
(WebCore::HTMLInputElement::suggestedColors const):
(WebCore::HTMLInputElement::isColorControl const):
* Source/WebCore/html/HTMLInputElement.h:
* Source/WebCore/html/HTMLInputElement.idl:
* Source/WebCore/html/InputType.cpp:
(WebCore::createInputTypeFactoryMap):
(WebCore::InputType::isValidValue const):
(WebCore::InputType::isInvalid const):
* Source/WebCore/loader/EmptyClients.cpp:
* Source/WebCore/loader/EmptyClients.h:
* Source/WebCore/page/Chrome.cpp:
* Source/WebCore/page/Chrome.h:
* Source/WebCore/page/ChromeClient.h:
* Source/WebCore/page/DragActions.h:
(WebCore::anyDragSourceAction):
* Source/WebCore/page/DragActions.serialization.in:
* Source/WebCore/page/DragController.cpp:
(WebCore::isEnabledColorInput):
(WebCore::DragController::concludeEditDrag):
(WebCore::DragController::canProcessDrag):
(WebCore::DragController::draggableElement const):
(WebCore::DragController::startDrag):
* Source/WebCore/page/EventHandler.cpp:
(WebCore::EventHandler::dragHysteresisExceeded const):
* Source/WebCore/platform/ColorChooser.h:
* Source/WebCore/platform/ColorChooserClient.h:
* Source/WebCore/platform/StyleAppearance.cpp:
(WebCore::operator<<):
* Source/WebCore/platform/StyleAppearance.h:
* Source/WebCore/platform/graphics/adwaita/ControlFactoryAdwaita.cpp:
(WebCore::ControlFactoryAdwaita::createPlatformColorWell):
* Source/WebCore/platform/graphics/adwaita/ControlFactoryAdwaita.h:
* Source/WebCore/platform/graphics/controls/ColorWellPart.h:
* Source/WebCore/platform/graphics/controls/ControlFactory.h:
* Source/WebCore/platform/graphics/controls/EmptyControlFactory.cpp:
(WebCore::EmptyControlFactory::createPlatformColorWell):
* Source/WebCore/platform/graphics/controls/EmptyControlFactory.h:
* Source/WebCore/platform/graphics/ios/controls/ControlFactoryIOS.h:
* Source/WebCore/platform/graphics/ios/controls/ControlFactoryIOS.mm:
(WebCore::ControlFactoryIOS::createPlatformColorWell):
* Source/WebCore/platform/graphics/mac/controls/ColorWellMac.h:
* Source/WebCore/platform/graphics/mac/controls/ColorWellMac.mm:
* Source/WebCore/platform/graphics/mac/controls/ControlFactoryMac.h:
* Source/WebCore/platform/graphics/mac/controls/ControlFactoryMac.mm:
(WebCore::ControlFactoryMac::createPlatformColorWell):
* Source/WebCore/platform/mac/ThemeMac.mm:
(WebCore::ThemeMac::minimumControlSize const):
(WebCore::ThemeMac::controlBorder const):
* Source/WebCore/rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustStyle):
(WebCore::RenderTheme::autoAppearanceForElement const):
(WebCore::RenderTheme::createControlPart const):
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::paintBorderOnly):
(WebCore::RenderTheme::paintDecorations):
(WebCore::RenderTheme::isControlStyled const):
(WebCore::RenderTheme::adjustButtonOrCheckboxOrColorWellOrInnerSpinButtonOrRadioStyle const):
(WebCore::RenderTheme::adjustColorWellStyle const):
* Source/WebCore/rendering/RenderTheme.h:
(WebCore::RenderTheme::paintColorWellDecorations):
* Source/WebCore/rendering/adwaita/RenderThemeAdwaita.cpp:
(WebCore::RenderThemeAdwaita::canCreateControlPartForRenderer const):
* Source/WebCore/rendering/ios/RenderThemeIOS.h:
* Source/WebCore/rendering/ios/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::adjustButtonStyle const):
* Source/WebCore/rendering/mac/RenderThemeMac.mm:
(WebCore::RenderThemeMac::canPaint const):
(WebCore::RenderThemeMac::canCreateControlPartForRenderer const):
* Source/WebCore/style/InspectorCSSOMWrappers.cpp:
(WebCore::Style::InspectorCSSOMWrappers::collectDocumentWrappers):
* Source/WebCore/style/UserAgentStyle.cpp:
(WebCore::Style::UserAgentStyle::ensureDefaultStyleSheetsForElement):
* Source/WebCore/style/UserAgentStyle.h:
* Source/WebCore/testing/Internals.cpp:
* Source/WebKit/Shared/FocusedElementInformation.h:
* Source/WebKit/Shared/FocusedElementInformation.serialization.in:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorPicker):
* Source/WebKit/UIProcess/API/gtk/PageClientImpl.h:
* Source/WebKit/UIProcess/API/gtk/WebKitColorChooser.cpp:
* Source/WebKit/UIProcess/API/gtk/WebKitColorChooser.h:
* Source/WebKit/UIProcess/API/gtk/WebKitColorChooserRequest.cpp:
(webkit_color_chooser_request_get_element_rectangle):
(webkit_color_chooser_request_cancel):
(webkitColorChooserRequestCreate):
* Source/WebKit/UIProcess/API/gtk/WebKitColorChooserRequestPrivate.h:
* Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorPicker):
* Source/WebKit/UIProcess/API/wpe/PageClientImpl.h:
* Source/WebKit/UIProcess/PageClient.h:
* Source/WebKit/UIProcess/WebColorPicker.cpp:
* Source/WebKit/UIProcess/WebColorPicker.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::showColorPicker):
(WebKit::WebPageProxy::closeOverlayedViews):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/UIProcess/WebPageProxyInternals.h:
* Source/WebKit/UIProcess/gtk/WebColorPickerGtk.cpp:
* Source/WebKit/UIProcess/gtk/WebColorPickerGtk.h:
* Source/WebKit/UIProcess/ios/DragDropInteractionState.mm:
(WebKit::shouldUseDragImageToCreatePreviewForDragSource):
(WebKit::shouldUseVisiblePathToCreatePreviewForDragSource):
(WebKit::canUpdatePreviewForActiveDragSource):
(WebKit::DragDropInteractionState::updatePreviewsForActiveDragSources):
* Source/WebKit/UIProcess/ios/PageClientImplIOS.h:
* Source/WebKit/UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::createColorPicker):
* Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:
(-[WKFocusedElementInfo initWithFocusedElementInformation:isUserInitiated:userObject:]):
(-[WKContentView _shouldShowAutomaticKeyboardUIIgnoringInputMode]):
(-[WKContentView _elementTypeRequiresAccessoryView:]):
(-[WKContentView _updateTextInputTraits:]):
(mayContainSelectableText):
(createInputPeripheralWithView):
(-[WKContentView actionNameForFocusedFormControlView:]):
* Source/WebKit/UIProcess/ios/forms/WKFormColorControl.h:
* Source/WebKit/UIProcess/ios/forms/WKFormColorControl.mm:
* Source/WebKit/UIProcess/mac/PageClientImplMac.h:
* Source/WebKit/UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::createColorPicker):
* Source/WebKit/UIProcess/mac/WebColorPickerMac.h:
* Source/WebKit/UIProcess/mac/WebColorPickerMac.mm:
* Source/WebKit/UIProcess/playstation/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorPicker):
* Source/WebKit/UIProcess/playstation/PageClientImpl.h:
* Source/WebKit/UIProcess/win/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorPicker):
* Source/WebKit/UIProcess/win/PageClientImpl.h:
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h:
* Source/WebKit/WebProcess/WebCoreSupport/WebColorChooser.cpp:
* Source/WebKit/WebProcess/WebCoreSupport/WebColorChooser.h:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::isAssistableElement):
(WebKit::WebPage::focusedElementInformation):
* Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.h:
* Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.mm:
* Source/WebKitLegacy/mac/WebView/WebView.mm:
(kit):
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsMac.cmake:
* Source/cmake/OptionsWin.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Tools/Scripts/webkitperl/FeatureList.pm:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsTextField.mm:
(-[InjectedBundleNodeHandleIsTextField webProcessPlugIn:didCreateBrowserContextController:]):
* Tools/TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
(TEST(DragAndDropTests, DropColor)):
Canonical link: https://commits.webkit.org/288918@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list