Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 586566172f22dcf68ded6de69a84b02bec239d5c
      
https://github.com/WebKit/WebKit/commit/586566172f22dcf68ded6de69a84b02bec239d5c
  Author: Aditya Keerthi <[email protected]>
  Date:   2025-02-18 (Tue, 18 Feb 2025)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WebCore/rendering/cocoa/RenderThemeCocoa.h
    M Source/WebCore/rendering/cocoa/RenderThemeCocoa.mm
    M Source/WebCore/rendering/ios/RenderThemeIOS.mm
    M Source/WebCore/rendering/mac/RenderThemeMac.mm

  Log Message:
  -----------
  [macOS] Add infrastructure for drawing vector-based form controls
https://bugs.webkit.org/show_bug.cgi?id=287853
rdar://145032318

Reviewed by Abrar Rahman Protyasha and Wenson Hsieh.

Introduce an experiment to draw vector-based controls on macOS, rather than
cell-based drawing via AppKit.

This is desirable for two reasons:
- Cells can only be rendered at fixed sizes, resulting in web compat issues
- Cell drawing can be expensive

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/rendering/cocoa/RenderThemeCocoa.h:
* Source/WebCore/rendering/cocoa/RenderThemeCocoa.mm:
(WebCore::RenderThemeCocoa::adjustCheckboxStyle const):
(WebCore::RenderThemeCocoa::paintCheckbox):
(WebCore::RenderThemeCocoa::adjustRadioStyle const):
(WebCore::RenderThemeCocoa::paintRadio):
(WebCore::RenderThemeCocoa::adjustButtonStyle const):
(WebCore::RenderThemeCocoa::paintButton):
(WebCore::RenderThemeCocoa::adjustColorWellStyle const):
(WebCore::RenderThemeCocoa::paintColorWell):
(WebCore::RenderThemeCocoa::paintColorWellDecorations):
(WebCore::RenderThemeCocoa::adjustInnerSpinButtonStyle const):
(WebCore::RenderThemeCocoa::adjustTextFieldStyle const):
(WebCore::RenderThemeCocoa::paintTextField):
(WebCore::RenderThemeCocoa::paintTextFieldDecorations):
(WebCore::RenderThemeCocoa::adjustTextAreaStyle const):
(WebCore::RenderThemeCocoa::paintTextArea):
(WebCore::RenderThemeCocoa::paintTextAreaDecorations):
(WebCore::RenderThemeCocoa::adjustMenuListStyle const):
(WebCore::RenderThemeCocoa::paintMenuList):
(WebCore::RenderThemeCocoa::paintMenuListDecorations):
(WebCore::RenderThemeCocoa::adjustMenuListButtonStyle const):
(WebCore::RenderThemeCocoa::paintMenuListButtonDecorations):
(WebCore::RenderThemeCocoa::adjustMeterStyle const):
(WebCore::RenderThemeCocoa::paintMeter):
(WebCore::RenderThemeCocoa::adjustListButtonStyle const):
(WebCore::RenderThemeCocoa::paintListButton):
(WebCore::RenderThemeCocoa::adjustProgressBarStyle const):
(WebCore::RenderThemeCocoa::paintProgressBar):
(WebCore::RenderThemeCocoa::adjustSliderTrackStyle const):
(WebCore::RenderThemeCocoa::paintSliderTrack):
(WebCore::RenderThemeCocoa::adjustSliderThumbStyle const):
(WebCore::RenderThemeCocoa::paintSliderThumb):
(WebCore::RenderThemeCocoa::adjustSearchFieldStyle const):
(WebCore::RenderThemeCocoa::paintSearchField):
(WebCore::RenderThemeCocoa::paintSearchFieldDecorations):
(WebCore::RenderThemeCocoa::adjustSearchFieldCancelButtonStyle const):
(WebCore::RenderThemeCocoa::paintSearchFieldCancelButton):
(WebCore::RenderThemeCocoa::adjustSearchFieldDecorationPartStyle const):
(WebCore::RenderThemeCocoa::paintSearchFieldDecorationPart):
(WebCore::RenderThemeCocoa::adjustSearchFieldResultsDecorationPartStyle const):
(WebCore::RenderThemeCocoa::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeCocoa::adjustSearchFieldResultsButtonStyle const):
(WebCore::RenderThemeCocoa::paintSearchFieldResultsButton):
(WebCore::RenderThemeCocoa::adjustSwitchStyle const):
(WebCore::RenderThemeCocoa::paintSwitchThumb):
(WebCore::RenderThemeCocoa::paintSwitchTrack):
* Source/WebCore/rendering/ios/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::adjustSliderTrackStyle const):
(WebCore::RenderThemeIOS::adjustSearchFieldStyle const):
* Source/WebCore/rendering/mac/RenderThemeMac.mm:
(WebCore::RenderThemeMac::canCreateControlPartForRenderer const):
(WebCore::RenderThemeMac::canCreateControlPartForBorderOnly const):
(WebCore::RenderThemeMac::canCreateControlPartForDecorations const):
(WebCore::RenderThemeMac::adjustMenuListStyle const):
(WebCore::RenderThemeMac::adjustSliderThumbStyle const):

Canonical link: https://commits.webkit.org/290539@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to