[webkit-changes] [WebKit/WebKit] a7330e: Port ControlPart related controls to the new IPC s...
Gavin
noreply at github.com
Thu Nov 9 06:47:45 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a7330e04e7107c53fc208a5cf3b7a79e7f80a7b2
https://github.com/WebKit/WebKit/commit/a7330e04e7107c53fc208a5cf3b7a79e7f80a7b2
Author: Gavin Phillips <gavin.p at apple.com>
Date: 2023-11-09 (Thu, 09 Nov 2023)
Changed paths:
M Source/WebCore/Headers.cmake
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/accessibility/AccessibilityRenderObject.cpp
M Source/WebCore/css/CSSPrimitiveValueMappings.h
M Source/WebCore/platform/graphics/cocoa/controls/ApplePayButtonCocoa.h
M Source/WebCore/platform/graphics/cocoa/controls/ApplePayButtonCocoa.mm
M Source/WebCore/platform/graphics/cocoa/controls/ControlFactoryCocoa.h
M Source/WebCore/platform/graphics/cocoa/controls/ControlFactoryCocoa.mm
A Source/WebCore/platform/graphics/controls/ApplePayButtonAppearance.cpp
A Source/WebCore/platform/graphics/controls/ApplePayButtonAppearance.h
R Source/WebCore/platform/graphics/controls/ApplePayButtonPart.cpp
R Source/WebCore/platform/graphics/controls/ApplePayButtonPart.h
A Source/WebCore/platform/graphics/controls/ButtonAppearance.h
R Source/WebCore/platform/graphics/controls/ButtonPart.h
A Source/WebCore/platform/graphics/controls/ColorWellAppearance.h
R Source/WebCore/platform/graphics/controls/ColorWellPart.h
A Source/WebCore/platform/graphics/controls/ControlAppearance.h
M Source/WebCore/platform/graphics/controls/ControlFactory.h
M Source/WebCore/platform/graphics/controls/ControlPart.cpp
M Source/WebCore/platform/graphics/controls/ControlPart.h
A Source/WebCore/platform/graphics/controls/ImageControlsButtonAppearance.h
R Source/WebCore/platform/graphics/controls/ImageControlsButtonPart.h
A Source/WebCore/platform/graphics/controls/InnerSpinButtonAppearance.h
R Source/WebCore/platform/graphics/controls/InnerSpinButtonPart.h
A Source/WebCore/platform/graphics/controls/MenuListAppearance.h
A Source/WebCore/platform/graphics/controls/MenuListButtonAppearance.h
R Source/WebCore/platform/graphics/controls/MenuListButtonPart.h
R Source/WebCore/platform/graphics/controls/MenuListPart.h
A Source/WebCore/platform/graphics/controls/MeterAppearance.cpp
A Source/WebCore/platform/graphics/controls/MeterAppearance.h
R Source/WebCore/platform/graphics/controls/MeterPart.cpp
R Source/WebCore/platform/graphics/controls/MeterPart.h
M Source/WebCore/platform/graphics/controls/PlatformControl.h
A Source/WebCore/platform/graphics/controls/ProgressBarAppearance.cpp
A Source/WebCore/platform/graphics/controls/ProgressBarAppearance.h
R Source/WebCore/platform/graphics/controls/ProgressBarPart.cpp
R Source/WebCore/platform/graphics/controls/ProgressBarPart.h
A Source/WebCore/platform/graphics/controls/SearchFieldAppearance.h
A Source/WebCore/platform/graphics/controls/SearchFieldCancelButtonAppearance.h
R Source/WebCore/platform/graphics/controls/SearchFieldCancelButtonPart.h
R Source/WebCore/platform/graphics/controls/SearchFieldPart.h
A Source/WebCore/platform/graphics/controls/SearchFieldResultsAppearance.h
R Source/WebCore/platform/graphics/controls/SearchFieldResultsPart.h
A Source/WebCore/platform/graphics/controls/SliderThumbAppearance.h
R Source/WebCore/platform/graphics/controls/SliderThumbPart.h
A Source/WebCore/platform/graphics/controls/SliderTrackAppearance.cpp
A Source/WebCore/platform/graphics/controls/SliderTrackAppearance.h
R Source/WebCore/platform/graphics/controls/SliderTrackPart.cpp
R Source/WebCore/platform/graphics/controls/SliderTrackPart.h
A Source/WebCore/platform/graphics/controls/SwitchThumbAppearance.h
R Source/WebCore/platform/graphics/controls/SwitchThumbPart.h
A Source/WebCore/platform/graphics/controls/SwitchTrackAppearance.h
R Source/WebCore/platform/graphics/controls/SwitchTrackPart.h
A Source/WebCore/platform/graphics/controls/TextAreaAppearance.h
R Source/WebCore/platform/graphics/controls/TextAreaPart.h
A Source/WebCore/platform/graphics/controls/TextFieldAppearance.h
R Source/WebCore/platform/graphics/controls/TextFieldPart.h
A Source/WebCore/platform/graphics/controls/ToggleButtonAppearance.h
R Source/WebCore/platform/graphics/controls/ToggleButtonPart.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/ButtonMac.h
M Source/WebCore/platform/graphics/mac/controls/ButtonMac.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/graphics/mac/controls/ImageControlsButtonMac.h
M Source/WebCore/platform/graphics/mac/controls/ImageControlsButtonMac.mm
M Source/WebCore/platform/graphics/mac/controls/InnerSpinButtonMac.h
M Source/WebCore/platform/graphics/mac/controls/InnerSpinButtonMac.mm
M Source/WebCore/platform/graphics/mac/controls/MenuListButtonMac.h
M Source/WebCore/platform/graphics/mac/controls/MenuListButtonMac.mm
M Source/WebCore/platform/graphics/mac/controls/MenuListMac.h
M Source/WebCore/platform/graphics/mac/controls/MenuListMac.mm
M Source/WebCore/platform/graphics/mac/controls/MeterMac.h
M Source/WebCore/platform/graphics/mac/controls/MeterMac.mm
M Source/WebCore/platform/graphics/mac/controls/ProgressBarMac.h
M Source/WebCore/platform/graphics/mac/controls/ProgressBarMac.mm
M Source/WebCore/platform/graphics/mac/controls/SearchFieldCancelButtonMac.h
M Source/WebCore/platform/graphics/mac/controls/SearchFieldCancelButtonMac.mm
M Source/WebCore/platform/graphics/mac/controls/SearchFieldMac.h
M Source/WebCore/platform/graphics/mac/controls/SearchFieldMac.mm
M Source/WebCore/platform/graphics/mac/controls/SearchFieldResultsMac.h
M Source/WebCore/platform/graphics/mac/controls/SearchFieldResultsMac.mm
M Source/WebCore/platform/graphics/mac/controls/SliderThumbMac.h
M Source/WebCore/platform/graphics/mac/controls/SliderThumbMac.mm
M Source/WebCore/platform/graphics/mac/controls/SliderTrackMac.h
M Source/WebCore/platform/graphics/mac/controls/SliderTrackMac.mm
M Source/WebCore/platform/graphics/mac/controls/SwitchThumbMac.h
M Source/WebCore/platform/graphics/mac/controls/SwitchThumbMac.mm
M Source/WebCore/platform/graphics/mac/controls/SwitchTrackMac.h
M Source/WebCore/platform/graphics/mac/controls/SwitchTrackMac.mm
M Source/WebCore/platform/graphics/mac/controls/TextAreaMac.h
M Source/WebCore/platform/graphics/mac/controls/TextAreaMac.mm
M Source/WebCore/platform/graphics/mac/controls/TextFieldMac.h
M Source/WebCore/platform/graphics/mac/controls/TextFieldMac.mm
M Source/WebCore/platform/graphics/mac/controls/ToggleButtonMac.h
M Source/WebCore/platform/graphics/mac/controls/ToggleButtonMac.mm
M Source/WebCore/rendering/RenderMenuList.cpp
M Source/WebCore/rendering/RenderTheme.cpp
M Source/WebCore/rendering/RenderTheme.h
M Source/WebCore/rendering/RenderThemeCocoa.mm
M Source/WebCore/rendering/RenderThemeIOS.h
M Source/WebCore/rendering/RenderThemeIOS.mm
M Source/WebCore/rendering/RenderThemeMac.h
M Source/WebCore/rendering/RenderThemeMac.mm
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebKit/Shared/WebCoreArgumentCoders.cpp
M Source/WebKit/Shared/WebCoreArgumentCoders.h
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
Log Message:
-----------
Port ControlPart related controls to the new IPC serialization format
https://bugs.webkit.org/show_bug.cgi?id=261819
rdar://115781032
Reviewed by Aditya Keerthi and Said Abou-Hallawa.
This change ports ControlPart and it's related appearances to the new IPC
serialization format. In order to do this, we've had to extract the
ControlPartAppearance out of the ControlPart class itself. ControlPart now
acts as a wrapper around the the ControlPartAppearance, the ControlFactory,
and the PlatformControl. It's the responsibility of the ControlPartAppearance
to perform appearance specific operations on behald of the ControlPart. This
includes instantiating the appearance specific PlatformControl.
This change also adds the all of the new ControlPartAppearance to the
.serialization.in files, allowing them to be serialized within a
ControlPart. This includes:
- ApplePayButtonAppearance,
- ButtonAppearance,
- ColorWellAppearance,
- DefaultButtonAppearance,
- ImageControlsButtonAppearance,
- InnerSpinButtonAppearance,
- MenuListButtonAppearance,
- MenuListAppearance,
- MeterAppearance,
- ProgressBarAppearance,
- PushButtonAppearance,
- SearchFieldCancelButtonAppearance,
- SearchFieldAppearance,
- SearchFieldResultsButtonAppearance,
- SearchFieldResultsDecorationAppearance,
- SliderThumbHorizontalAppearance,
- SliderThumbVerticalAppearance,
- SliderTrackHorizontalAppearance,
- SliderTrackVerticalAppearance,
- SquareButtonAppearance,
- ListBoxAppearance,
- TextAreaAppearance,
- TextFieldAppearance,
- CheckboxAppearance,
- RadioAppearance
* Source/WebCore/platform/graphics/cocoa/controls/ApplePayButtonCocoa.h:
* Source/WebCore/platform/graphics/cocoa/controls/ApplePayButtonCocoa.mm:
(WebCore::ApplePayButtonCocoa::ApplePayButtonCocoa):
(WebCore::ApplePayButtonCocoa::draw):
* Source/WebCore/platform/graphics/cocoa/controls/ControlFactoryCocoa.h:
* Source/WebCore/platform/graphics/cocoa/controls/ControlFactoryCocoa.mm:
(WebCore::ControlFactoryCocoa::createPlatformApplePayButton):
* Source/WebCore/platform/graphics/controls/ApplePayButtonPart.cpp:
(WebCore::ApplePayButtonPart::ApplePayButtonPart):
(WebCore::ApplePayButtonPart::createPlatformControl):
(WebCore::ApplePayButtonPart::create): Deleted.
* Source/WebCore/platform/graphics/controls/ApplePayButtonPart.h:
* Source/WebCore/platform/graphics/controls/ButtonPart.h:
(WebCore::ButtonPart::createPlatformControl):
* Source/WebCore/platform/graphics/controls/ColorWellPart.h:
* Source/WebCore/platform/graphics/controls/ControlFactory.h:
* Source/WebCore/platform/graphics/controls/ControlPart.cpp:
(WebCore::ControlPart::create):
(WebCore::ControlPart::ControlPart):
(WebCore::ControlPart::createPlatformControl):
(WebCore::ControlPart::style const):
(WebCore::ControlPart::type const):
* Source/WebCore/platform/graphics/controls/ControlPart.h:
(WebCore::ControlPart::type const): Deleted.
* Source/WebCore/platform/graphics/controls/ImageControlsButtonPart.h:
* Source/WebCore/platform/graphics/controls/InnerSpinButtonPart.h:
* Source/WebCore/platform/graphics/controls/MenuListButtonPart.h:
* Source/WebCore/platform/graphics/controls/MenuListPart.h:
* Source/WebCore/platform/graphics/controls/MeterPart.cpp:
(WebCore::MeterPart::MeterPart):
(WebCore::MeterPart::createPlatformControl):
(WebCore::MeterPart::create): Deleted.
* Source/WebCore/platform/graphics/controls/MeterPart.h:
* Source/WebCore/platform/graphics/controls/PlatformControl.h:
(WebCore::PlatformControl::owningPart const):
* Source/WebCore/platform/graphics/controls/ProgressBarPart.cpp:
(WebCore::ProgressBarPart::ProgressBarPart):
(WebCore::ProgressBarPart::createPlatformControl):
(WebCore::ProgressBarPart::create): Deleted.
* Source/WebCore/platform/graphics/controls/ProgressBarPart.h:
(WebCore::ProgressBarPart::position const): Deleted.
(WebCore::ProgressBarPart::setPosition): Deleted.
(WebCore::ProgressBarPart::animationStartTime const): Deleted.
(WebCore::ProgressBarPart::setAnimationStartTime): Deleted.
* Source/WebCore/platform/graphics/controls/SearchFieldCancelButtonPart.h:
* Source/WebCore/platform/graphics/controls/SearchFieldPart.h:
* Source/WebCore/platform/graphics/controls/SearchFieldResultsPart.h:
(WebCore::SearchFieldResultsPart::createPlatformControl):
* Source/WebCore/platform/graphics/controls/SliderThumbPart.h:
(WebCore::SliderThumbPart::createPlatformControl):
* Source/WebCore/platform/graphics/controls/SliderTrackPart.cpp:
(WebCore::SliderTrackHorizontalPart::SliderTrackHorizontalPart):
(WebCore::SliderTrackVerticalPart::SliderTrackVerticalPart):
(WebCore::SliderTrackPart::SliderTrackPart):
(WebCore::SliderTrackHorizontalPart::drawTicks const):
(WebCore::SliderTrackVerticalPart::drawTicks const):
(WebCore::SliderTrackPart::createPlatformControl):
(WebCore::SliderTrackPart::create): Deleted.
(WebCore::SliderTrackPart::drawTicks const): Deleted.
* Source/WebCore/platform/graphics/controls/SliderTrackPart.h:
(isType): Deleted.
* Source/WebCore/platform/graphics/controls/TextAreaPart.h:
(WebCore::TextAreaPart::createPlatformControl):
* Source/WebCore/platform/graphics/controls/TextFieldPart.h:
* Source/WebCore/platform/graphics/controls/ToggleButtonPart.h:
(WebCore::ToggleButtonPart::createPlatformControl):
* Source/WebCore/platform/graphics/ios/controls/ControlFactoryIOS.h:
* Source/WebCore/platform/graphics/ios/controls/ControlFactoryIOS.mm:
(WebCore::ControlFactoryIOS::createPlatformButton):
(WebCore::ControlFactoryIOS::createPlatformColorWell):
(WebCore::ControlFactoryIOS::createPlatformInnerSpinButton):
(WebCore::ControlFactoryIOS::createPlatformMenuList):
(WebCore::ControlFactoryIOS::createPlatformMenuListButton):
(WebCore::ControlFactoryIOS::createPlatformMeter):
(WebCore::ControlFactoryIOS::createPlatformProgressBar):
(WebCore::ControlFactoryIOS::createPlatformSearchField):
(WebCore::ControlFactoryIOS::createPlatformSearchFieldCancelButton):
(WebCore::ControlFactoryIOS::createPlatformSearchFieldResults):
(WebCore::ControlFactoryIOS::createPlatformSliderThumb):
(WebCore::ControlFactoryIOS::createPlatformSliderTrack):
(WebCore::ControlFactoryIOS::createPlatformTextArea):
(WebCore::ControlFactoryIOS::createPlatformTextField):
(WebCore::ControlFactoryIOS::createPlatformToggleButton):
* Source/WebCore/platform/graphics/mac/controls/ButtonMac.h:
* Source/WebCore/platform/graphics/mac/controls/ButtonMac.mm:
(WebCore::ButtonMac::ButtonMac):
* Source/WebCore/platform/graphics/mac/controls/ColorWellMac.h:
* Source/WebCore/platform/graphics/mac/controls/ColorWellMac.mm:
(WebCore::ColorWellMac::ColorWellMac):
* Source/WebCore/platform/graphics/mac/controls/ControlFactoryMac.h:
* Source/WebCore/platform/graphics/mac/controls/ControlFactoryMac.mm:
(WebCore::ControlFactoryMac::createPlatformButton):
(WebCore::ControlFactoryMac::createPlatformColorWell):
(WebCore::ControlFactoryMac::createPlatformImageControlsButton):
(WebCore::ControlFactoryMac::createPlatformInnerSpinButton):
(WebCore::ControlFactoryMac::createPlatformMenuList):
(WebCore::ControlFactoryMac::createPlatformMenuListButton):
(WebCore::ControlFactoryMac::createPlatformMeter):
(WebCore::ControlFactoryMac::createPlatformProgressBar):
(WebCore::ControlFactoryMac::createPlatformSearchField):
(WebCore::ControlFactoryMac::createPlatformSearchFieldCancelButton):
(WebCore::ControlFactoryMac::createPlatformSearchFieldResults):
(WebCore::ControlFactoryMac::createPlatformSliderThumb):
(WebCore::ControlFactoryMac::createPlatformSliderTrack):
(WebCore::ControlFactoryMac::createPlatformTextArea):
(WebCore::ControlFactoryMac::createPlatformTextField):
(WebCore::ControlFactoryMac::createPlatformToggleButton):
* Source/WebCore/platform/graphics/mac/controls/ImageControlsButtonMac.h:
* Source/WebCore/platform/graphics/mac/controls/ImageControlsButtonMac.mm:
(WebCore::ImageControlsButtonMac::ImageControlsButtonMac):
* Source/WebCore/platform/graphics/mac/controls/InnerSpinButtonMac.h:
* Source/WebCore/platform/graphics/mac/controls/InnerSpinButtonMac.mm:
(WebCore::InnerSpinButtonMac::InnerSpinButtonMac):
* Source/WebCore/platform/graphics/mac/controls/MenuListButtonMac.h:
* Source/WebCore/platform/graphics/mac/controls/MenuListButtonMac.mm:
(WebCore::MenuListButtonMac::MenuListButtonMac):
* Source/WebCore/platform/graphics/mac/controls/MenuListMac.h:
* Source/WebCore/platform/graphics/mac/controls/MenuListMac.mm:
(WebCore::MenuListMac::MenuListMac):
* Source/WebCore/platform/graphics/mac/controls/MeterMac.h:
* Source/WebCore/platform/graphics/mac/controls/MeterMac.mm:
(WebCore::MeterMac::MeterMac):
(WebCore::MeterMac::updateCellStates):
* Source/WebCore/platform/graphics/mac/controls/ProgressBarMac.h:
* Source/WebCore/platform/graphics/mac/controls/ProgressBarMac.mm:
(WebCore::ProgressBarMac::ProgressBarMac):
(WebCore::ProgressBarMac::draw):
* Source/WebCore/platform/graphics/mac/controls/SearchFieldCancelButtonMac.h:
* Source/WebCore/platform/graphics/mac/controls/SearchFieldCancelButtonMac.mm:
(WebCore::SearchFieldCancelButtonMac::SearchFieldCancelButtonMac):
* Source/WebCore/platform/graphics/mac/controls/SearchFieldMac.h:
* Source/WebCore/platform/graphics/mac/controls/SearchFieldMac.mm:
(WebCore::SearchFieldMac::SearchFieldMac):
* Source/WebCore/platform/graphics/mac/controls/SearchFieldResultsMac.h:
* Source/WebCore/platform/graphics/mac/controls/SearchFieldResultsMac.mm:
(WebCore::SearchFieldResultsMac::SearchFieldResultsMac):
* Source/WebCore/platform/graphics/mac/controls/SliderThumbMac.h:
* Source/WebCore/platform/graphics/mac/controls/SliderThumbMac.mm:
(WebCore::SliderThumbMac::SliderThumbMac):
* Source/WebCore/platform/graphics/mac/controls/SliderTrackMac.h:
* Source/WebCore/platform/graphics/mac/controls/SliderTrackMac.mm:
(WebCore::SliderTrackMac::SliderTrackMac):
(WebCore::SliderTrackMac::rectForBounds const):
(WebCore::SliderTrackMac::draw):
* Source/WebCore/platform/graphics/mac/controls/TextAreaMac.h:
* Source/WebCore/platform/graphics/mac/controls/TextAreaMac.mm:
(WebCore::TextAreaMac::TextAreaMac):
* Source/WebCore/platform/graphics/mac/controls/TextFieldMac.h:
* Source/WebCore/platform/graphics/mac/controls/TextFieldMac.mm:
(WebCore::TextFieldMac::TextFieldMac):
* Source/WebCore/platform/graphics/mac/controls/ToggleButtonMac.h:
* Source/WebCore/platform/graphics/mac/controls/ToggleButtonMac.mm:
(WebCore::ToggleButtonMac::ToggleButtonMac):
* Source/WebCore/rendering/RenderTheme.cpp:
(WebCore::RenderTheme::createControlPart const):
(WebCore::RenderTheme::updateControlPartForRenderer const):
* Source/WebKit/Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ControlPart>::encode): Deleted.
(IPC::ArgumentCoder<ControlPart>::decode): Deleted.
* Source/WebKit/Shared/WebCoreArgumentCoders.h:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
Canonical link: https://commits.webkit.org/270445@main
More information about the webkit-changes
mailing list