1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-22 16:18:08 +02:00

[api-minor] Deprecate the PDFDocumentProxy.getJavaScript method

This method is very old, however with the exception of the auto-print hack (when scripting is disabled) in the viewer it's never actually been used.

Most likely the idea with `PDFDocumentProxy.getJavaScript` was that it'd be useful if scripting support was added, however it turned out that it was a bit too simplistic and instead a number of new methods were added for the scripting use-cases.
This commit is contained in:
Jonas Jenwald 2023-08-01 09:02:05 +02:00
parent 5b8f680480
commit 64e8557fb5
5 changed files with 42 additions and 58 deletions

View file

@ -1543,9 +1543,9 @@ const PDFViewerApplication = {
* @private
*/
async _initializeAutoPrint(pdfDocument, openActionPromise) {
const [openAction, javaScript] = await Promise.all([
const [openAction, jsActions] = await Promise.all([
openActionPromise,
!this.pdfViewer.enableScripting ? pdfDocument.getJavaScript() : null,
!this.pdfViewer.enableScripting ? pdfDocument.getJSActions() : null,
]);
if (pdfDocument !== this.pdfDocument) {
@ -1556,25 +1556,18 @@ const PDFViewerApplication = {
if (openAction?.action === "Print") {
triggerAutoPrint = true;
}
if (javaScript) {
javaScript.some(js => {
if (!js) {
// Don't warn/fallback for empty JavaScript actions.
return false;
}
console.warn("Warning: JavaScript support is not enabled");
return true;
});
if (!triggerAutoPrint) {
// Hack to support auto printing.
for (const js of javaScript) {
if (js && AutoPrintRegExp.test(js)) {
triggerAutoPrint = true;
break;
}
if (jsActions) {
for (const name in jsActions) {
if (jsActions[name]) {
console.warn("Warning: JavaScript support is not enabled");
break;
}
}
// Hack to support auto printing.
triggerAutoPrint ||= !!(
jsActions.OpenAction && AutoPrintRegExp.test(jsActions.OpenAction)
);
}
if (triggerAutoPrint) {