Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7089525bc66b0c76c16a07c5802d9efb45d1b2ed
https://github.com/WebKit/WebKit/commit/7089525bc66b0c76c16a07c5802d9efb45d1b2ed
Author: Phinehas Fuachie <[email protected]>
Date: 2026-04-01 (Wed, 01 Apr 2026)
Changed paths:
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
Log Message:
-----------
Media controls don't disappear after hitting play/pause on embedded youtube
https://bugs.webkit.org/show_bug.cgi?id=310381
rdar://166727225
Reviewed by Abrar Rahman Protyasha and Wenson Hsieh.
On iPadOS, embedded YouTube player controls in cross-origin iframes would
remain stuck visible
after the first tap. This happened because handleSyntheticClick dispatches a
synthetic mouseover
via the ContentChangeObserver to detect hover-triggered content changes.
YouTube's embed player
reacts to the mouseover by showing controls, and the ContentChangeObserver
detects this visibility
change and consumes the tap as a hover gesture instead of a click. The controls
remain stuck
because no click or mouseout is ever dispatched.
Remove the needsYouTubeMouseOutQuirk gate so mouseout is always dispatched
after a synthetic click
when the content change observer is enabled. This aligns mouse event behavior
with pointer events,
which already unconditionally dispatch pointerout and pointerleave after
pointerup for touch input.
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::completeSyntheticClick):
Canonical link: https://commits.webkit.org/310419@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications