Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 83e38a6172c8d9b9fee4d3d5392585ea3f9ee8ae
https://github.com/WebKit/WebKit/commit/83e38a6172c8d9b9fee4d3d5392585ea3f9ee8ae
Author: Richard Robinson <[email protected]>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h
M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.mm
M
Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.h
M
Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
Log Message:
-----------
[AppKit Gestures] Clicking PDF form controls does not always work
https://bugs.webkit.org/show_bug.cgi?id=310510
rdar://173125990
Reviewed by Wenson Hsieh.
Add support for handling synthetic clicks in PDFs to have form controls work
properly.
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h:
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.mm:
(WebKit::PDFPluginBase::navigateToURL):
*
Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.h:
*
Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm:
(WebKit::PDFDataDetectorOverlayController::handleMouseEvent):
- Use Platform* event types instead of Web* event types
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h:
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm:
(WebKit::isContextMenuEvent):
(WebKit::UnifiedPDFPlugin::handleMouseEvent):
(WebKit::UnifiedPDFPlugin::startTrackingAnnotation):
(WebKit::UnifiedPDFPlugin::finishTrackingAnnotation):
(WebKit::UnifiedPDFPlugin::selectionGranularityForMouseEvent const):
(WebKit::UnifiedPDFPlugin::beginTrackingSelection):
(WebKit::AnnotationTrackingState::startAnnotationTracking):
(WebKit::AnnotationTrackingState::finishAnnotationTracking):
(WebKit::UnifiedPDFPlugin::handleSyntheticClick):
- Add a version of `handleMouseEvent` that can accept a `PlatformMouseEvent`,
and refactor the existing overload
of the method to just call into this new one.
- Use Platform* event types instead of Web* event types
- For `Automation` input events, have `handleMouseEvent` get called when
handling a synthetic event. To maintain existing behavior, also return early
afterwards if the event is a MousePressed event
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::completeSyntheticClick):
- Call `handleSyntheticClick` for both pressed and release events
Canonical link: https://commits.webkit.org/309743@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications