Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 94e2e0c433d20ef173dd08f404c1d3603b29c0db https://github.com/WebKit/WebKit/commit/94e2e0c433d20ef173dd08f404c1d3603b29c0db Author: Abrar Rahman Protyasha <a_protya...@apple.com> Date: 2024-03-18 (Mon, 18 Mar 2024)
Changed paths: 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.mm Log Message: ----------- [UnifiedPDF] Only update platform highlight data for page(s) of interest https://bugs.webkit.org/show_bug.cgi?id=271203 rdar://124976470 Reviewed by Simon Fraser. DDHighlightData is required for hit testing and to reflect zooming or scrolling. As such, we only care about updating platform highlight data on the page where we need to handle a mouse event, or on the page where a zoom or scroll operation occurred. This patch updates didInvalidateHighlightOverlayRects to accept an optional page index to limit which page's platform highlight data requires updating. If the caller fails to provide an index, or if that index does not already exist in our highlight map, we fallback to the existing behavior of updating the highlight data on all pages. This is a performance optimization for large PDF files since we avoid unnecessarily iterating through all pages containing data detector results. * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.h: * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm: (WebKit::PDFDataDetectorOverlayController::handleMouseEvent): (WebKit::PDFDataDetectorOverlayController::updatePlatformHighlightData): (WebKit::PDFDataDetectorOverlayController::didInvalidateHighlightOverlayRects): * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm: (WebKit::UnifiedPDFPlugin::didChangeScrollOffset): Canonical link: https://commits.webkit.org/276329@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes