[webkit-changes] [WebKit/WebKit] 0474d6: Factor PDF JS evaluation out of PDFPlugin
Tim Horton
noreply at github.com
Fri Jan 5 14:36:04 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0474d6003056297ae8a98eff1172eae36be468c7
https://github.com/WebKit/WebKit/commit/0474d6003056297ae8a98eff1172eae36be468c7
Author: Tim Horton <timothy_horton at apple.com>
Date: 2024-01-05 (Fri, 05 Jan 2024)
Changed paths:
A LayoutTests/compositing/plugins/pdf/pdf-plugin-printing-expected.txt
A LayoutTests/compositing/plugins/pdf/pdf-plugin-printing.html
A LayoutTests/resources/auto-print.pdf
M Source/WebKit/SourcesCocoa.txt
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
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
A Source/WebKit/WebProcess/Plugins/PDF/PDFPluginScriptEvaluator.mm
A Source/WebKit/WebProcess/Plugins/PDF/PDFScriptEvaluator.h
A Source/WebKit/WebProcess/Plugins/PDF/PDFScriptEvaluator.mm
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteHost.mm
M Tools/MiniBrowser/mac/WK2BrowserWindowController.m
Log Message:
-----------
Factor PDF JS evaluation out of PDFPlugin
https://bugs.webkit.org/show_bug.cgi?id=267091
rdar://118550726
Reviewed by Simon Fraser.
Separate PDF JS evaluation code (for auto-printing) out of PDFPlugin.
By virtue of doing this, also enable it in UnifiedPDFPlugin.
And add a test! And make window.print work in MiniBrowser!
* LayoutTests/compositing/plugins/pdf/pdf-plugin-printing-expected.txt: Added.
* LayoutTests/compositing/plugins/pdf/pdf-plugin-printing.html: Added.
* LayoutTests/resources/auto-print.pdf: Added.
* Source/WebKit/SourcesCocoa.txt:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h:
* Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::appendValuesInPDFNameSubtreeToVector): Deleted.
(WebKit::getAllValuesInPDFNameTree): Deleted.
(WebKit::getAllScriptsInPDFDocument): Deleted.
(WebKit::jsPDFDocInitialize): Deleted.
(WebKit::jsPDFDocFinalize): Deleted.
(WebKit::PDFPlugin::jsPDFDocClass): Deleted.
(WebKit::PDFPlugin::jsPDFDocPrint): Deleted.
(WebKit::PDFPlugin::makeJSPDFDoc): Deleted.
(WebKit::PDFPlugin::tryRunScriptsInPDFDocument): Deleted.
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h:
(WebKit::PDFPluginBase::tryRunScriptsInPDFDocument): Deleted.
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.mm:
(WebKit::PDFPluginBase::tryRunScriptsInPDFDocument):
(WebKit::PDFPluginBase::print):
Avoid double-running PDF scripts with a "did run" bit (this appears to be broken in shipping Safari).
* Source/WebKit/WebProcess/Plugins/PDF/PDFScriptEvaluator.h: Added.
(WebKit::PDFScriptEvaluator::PDFScriptEvaluator):
(WebKit::PDFScriptEvaluator::create):
* Source/WebKit/WebProcess/Plugins/PDF/PDFScriptEvaluator.mm: Added.
(WebKit::appendValuesInPDFNameSubtreeToVector):
(WebKit::getAllValuesInPDFNameTree):
(WebKit::getAllScriptsInPDFDocument):
(WebKit::jsPDFDocInitialize):
(WebKit::jsPDFDocFinalize):
(WebKit::PDFScriptEvaluator::jsPDFDocClass):
(WebKit::PDFScriptEvaluator::jsPDFDocPrint):
(WebKit::PDFScriptEvaluator::runScripts):
(WebKit::PDFScriptEvaluator::print):
Factor this code out of PDFPlugin.
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteHost.mm:
(WebKit::PlatformCALayerRemoteHost::create):
Unified sources fixes.
* Tools/MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController _webView:printFrame:pdfFirstPageSize:completionHandler:]):
Hook up the printing UI delegate in MiniBrowser.
Canonical link: https://commits.webkit.org/272706@main
More information about the webkit-changes
mailing list