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

Reply via email to