Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: be4588f1fb254d36603c59d981fa0dfc44143020 https://github.com/WebKit/WebKit/commit/be4588f1fb254d36603c59d981fa0dfc44143020 Author: Aditya Keerthi <akeer...@apple.com> Date: 2023-03-27 (Mon, 27 Mar 2023)
Changed paths: M Source/WebCore/platform/graphics/mac/controls/ControlMac.mm Log Message: ----------- [GPU Process] Focus outline is off on <select> on wpt.fyi/interop-2023 https://bugs.webkit.org/show_bug.cgi?id=254472 rdar://107165828 Reviewed by Simon Fraser. WebKit uses a flipped context to draw `NSCell`s. However, when cells are drawn without a control view (as is the case with GPU Process enabled), AppKit does not check the flippedness of the context, and unconditionally assumes an unflipped context. A workaround for this behavior was applied for cell drawing in 261085@main, but was not extended to cell focus ring drawing. Note that support for viewless cell focus ring drawing was only added by AppKit in rdar://105249508. To fix, bring the same logic from 261085@main over to cell focus ring drawing. * Source/WebCore/platform/graphics/mac/controls/ControlMac.mm: (WebCore::performDrawingWithUnflippedContext): Add a helper method to draw with an unflipped context. (WebCore::drawSliderCell): (WebCore::drawViewlessCell): (WebCore::drawViewlessCellFocusRing): (WebCore::drawCellFocusRingInView): (WebCore::ControlMac::drawCellFocusRingInternal): Canonical link: https://commits.webkit.org/262183@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes