Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c6cea2e84c60e501acecfe1555b8301728c9d693
https://github.com/WebKit/WebKit/commit/c6cea2e84c60e501acecfe1555b8301728c9d693
Author: Abrar Rahman Protyasha <[email protected]>
Date: 2026-02-16 (Mon, 16 Feb 2026)
Changed paths:
M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm
M Source/WebKit/WebProcess/Plugins/PluginView.cpp
M Source/WebKit/WebProcess/Plugins/PluginView.h
Log Message:
-----------
Refactor PDF code supporting two-phase clicks to use feature flag instead of
platform guard
https://bugs.webkit.org/show_bug.cgi?id=307938
rdar://170419372
Reviewed by Wenson Hsieh.
Generally, our PDF code that supports two-phase clicks do not have a
reason to be gated behind iOS family.
In this patch, we decouple said code from a platform guard to the
ENABLE_TWO_PHASE_CLICKS feature flag. In doing so, we also nest required
PLATFORM(IOS_FAMILY) guards inside ENABLE(TWO_PHASE_CLICKS) blocks for
iOS-specific PDF plugin functionality (selection handling,
DocumentEditingContext, EditorState). This allows shared link, highlight,
and cursor handling while not pulling in iOS text interaction infra.
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h:
(WebKit::PDFPluginBase::cursorContext const):
(WebKit::PDFPluginBase::setSelectionRange):
(WebKit::PDFPluginBase::handleSyntheticClick):
(WebKit::PDFPluginBase::clearSelection):
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h:
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm:
(WebKit::UnifiedPDFPlugin::selectionBetweenPoints const):
(WebKit::UnifiedPDFPlugin::selectionAtPoint const):
(WebKit::UnifiedPDFPlugin::selectionCaretPointInPage const):
(WebKit::UnifiedPDFPlugin::clearSelection):
(WebKit::UnifiedPDFPlugin::handleSyntheticClick):
* Source/WebKit/WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::linkURLAndBoundsAtPoint const):
(WebKit::PluginView::linkDataAtPoint):
(WebKit::PluginView::highlightRectForTapAtPoint const):
(WebKit::PluginView::cursorContext const):
(WebKit::PluginView::handleSyntheticClick):
(WebKit::PluginView::setSelectionRange):
(WebKit::PluginView::moveSelectionEndpoint):
(WebKit::PluginView::extendInitialSelection):
(WebKit::PluginView::documentEditingContext const):
* Source/WebKit/WebProcess/Plugins/PluginView.h:
Canonical link: https://commits.webkit.org/307653@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications