[webkit-changes] [WebKit/WebKit] 8b9d4c: [UnifiedPDF] Get initial painting working

Simon Fraser noreply at github.com
Thu Sep 28 14:10:00 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8b9d4c49a75fde19cd57e64783ef6bc912606314
      https://github.com/WebKit/WebKit/commit/8b9d4c49a75fde19cd57e64783ef6bc912606314
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2023-09-28 (Thu, 28 Sep 2023)

  Changed paths:
    M Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h
    M Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm
    M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h
    M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.mm
    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

  Log Message:
  -----------
  [UnifiedPDF] Get initial painting working
https://bugs.webkit.org/show_bug.cgi?id=262311
rdar://116185973

Reviewed by Tim Horton.

Start getting PDF drawing working for Unified PDF. Currently this just draws the first
page via `CGPDFDocumentCreateWithProvider()` and `CGPDFDocumentGetPage()`.

Move two bits of code into PDFPluginBase; first, have it handle `geometryDidChange()` so
we can store the size. Second, because UnifiedPDFPlugin isn't layer-backed, we need to
plumb through a `paint()` function from `PluginView`.

* Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h:
* Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::geometryDidChange):
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h:
(WebKit::PDFPluginBase::paint):
(WebKit::PDFPluginBase::size const):
(WebKit::PDFPluginBase::geometryDidChange): Deleted.
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.mm:
(WebKit::PDFPluginBase::geometryDidChange):
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h:
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm:
(WebKit::UnifiedPDFPlugin::createPDFDocument):
(WebKit::UnifiedPDFPlugin::installPDFDocument):
(WebKit::UnifiedPDFPlugin::paint):
(WebKit::UnifiedPDFPlugin::geometryDidChange):
* Source/WebKit/WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::paint):

Canonical link: https://commits.webkit.org/268610@main




More information about the webkit-changes mailing list