Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8cbb6b66a695b63eb9a16a9f955d37c9c391e176
      
https://github.com/WebKit/WebKit/commit/8cbb6b66a695b63eb9a16a9f955d37c9c391e176
  Author: Anne van Kesteren <[email protected]>
  Date:   2023-12-11 (Mon, 11 Dec 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/mac/controls/SwitchTrackMac.mm
    M Source/WebCore/rendering/RenderTheme.cpp
    M Source/WebCore/rendering/RenderThemeMac.h
    M Source/WebCore/rendering/RenderThemeMac.mm

  Log Message:
  -----------
  Add <input type=checkbox switch> macOS focus ring support
https://bugs.webkit.org/show_bug.cgi?id=266139

Reviewed by Aditya Keerthi.

I discovered that the approach taken in 269869@main to teach
RenderTheme is[State]() checks about switches was wrong. Rather than
changing individual state checks, it should have modified
extractControlStyleForRenderer() instead. By correcting that here the
correct thing will happen in RenderTheme for isFocused().

As a drive-by fix this removes RenderThemeMac::updateFocusedState()
which does not appear to be used and was confusing me.

* Source/WebCore/platform/graphics/mac/controls/SwitchTrackMac.mm:
(WebCore::SwitchTrackMac::draw):
* Source/WebCore/rendering/RenderTheme.cpp:
(WebCore::RenderTheme::extractControlStyleForRenderer const):
(WebCore::RenderTheme::isEnabled const):
(WebCore::RenderTheme::isFocused const):
(WebCore::RenderTheme::isPressed const):
* Source/WebCore/rendering/RenderThemeMac.h:
* Source/WebCore/rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::updateFocusedState): Deleted.

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to