Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a83a068ce4deea7c97d93f22b98084197cf3367f https://github.com/WebKit/WebKit/commit/a83a068ce4deea7c97d93f22b98084197cf3367f Author: Abrar Rahman Protyasha <a_protya...@apple.com> Date: 2024-03-16 (Sat, 16 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.h M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm Log Message: ----------- [UnifiedPDF] Data detector highlight painting should be optimized by specifying dirty rects https://bugs.webkit.org/show_bug.cgi?id=271091 rdar://124719471 Reviewed by Sammy Gill. Currently we paint the entire page overlay when we think a data detector highlight needs to be painted. Instead, we should specify which rects (in content space) we want to have painted. This patch: 1. Keeps track of both the active DDHighlight as well as the PDFDataDetectorItem it's paired to. This allows us to be able to read the associated PDF selection object. 1. Keeps track of the "just-deactivated" stale highlight data. This allows us to ask for the stale data to be (re)painted away, if needed. 2. Introduces a helper utility on UnifiedPDFPlugin that returns the content space bounds for a PDF Selection. 3. Queries said utility with the selections for both the active and the stale highlight, painting the resulting rects as necessary. * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.h: * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm: (WebKit::PDFDataDetectorOverlayController::handleMouseEvent): (WebKit::PDFDataDetectorOverlayController::didInvalidateHighlightOverlayRects): * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h: * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm: (WebKit::UnifiedPDFPlugin::selectionBoundsAcrossDocumentInContentSpace const): Canonical link: https://commits.webkit.org/276239@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