
Update PDFiumEngine to apply Ink strokes to the in-memory PDF, and to update the stroke active state for undo/redo/erase actions. With visible strokes now existing in the PDF document, they will be drawn automatically along with the rest of the other PDF page objects. Remove the explicit drawing of finished strokes from PdfInkModule, and instead make a client call to invalidate the area for a newly finished stroke. Since PDFiumEngine now tracks PDF page objects for each stroke, add page unload preventers to ensure that pages with Ink strokes do not get unloaded and cause PDFiumEngine to have dangling pointers. Bug: 335517469 Change-Id: Icc7e78996bf328381138e24f96cc9bf41db4346c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6003785 Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com> Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Alan Screen <awscreen@chromium.org> Cr-Commit-Position: refs/heads/main@{#1380766}
//pdf
contains the PDF plugin, its Blink-based replacement, as well as PDF
utility functions that leverage PDFium. It can use low-level components that
live below the content layer, as well as other foundational code like
//printing
. It should not use //content
or anything in //components
that
lives above the content layer. Code that lives above the content layer should
live in //components/pdf
, or in the embedder. All the code here should run in
sandboxed child processes.
TODO(crbug.com/40186598): Remove existing //content
dependencies.