зеркало из https://github.com/electron/electron.git
fix: pdf viewer missing resources (#27499)
* fix: pdf viewer missing resources * test: add simple regression test * 2638992: PDF Viewer: Stop respecting the PDFViewerUpdate flag. https://chromium-review.googlesource.com/c/chromium/src/+/2638992 * 2439433: PDF Viewer Update: Add aria-label for thumbnails https://chromium-review.googlesource.com/c/chromium/src/+/2439433
This commit is contained in:
Родитель
e94f97f2c9
Коммит
bf6a50c538
1
BUILD.gn
1
BUILD.gn
|
@ -648,6 +648,7 @@ source_set("electron_lib") {
|
|||
}
|
||||
if (enable_pdf_viewer) {
|
||||
deps += [
|
||||
"//chrome/browser/resources/pdf:pdf_resources",
|
||||
"//components/pdf/browser",
|
||||
"//components/pdf/renderer",
|
||||
"//pdf:pdf_ppapi",
|
||||
|
|
|
@ -96,6 +96,10 @@ template("electron_extra_paks") {
|
|||
"$root_gen_dir/ui/resources/webui_generated_resources.pak",
|
||||
]
|
||||
deps += [ "//content/browser/devtools:devtools_resources" ]
|
||||
if (enable_pdf_viewer) {
|
||||
sources += [ "$root_gen_dir/chrome/pdf_resources.pak" ]
|
||||
deps += [ "//chrome/browser/resources/pdf:pdf_resources" ]
|
||||
}
|
||||
if (enable_print_preview) {
|
||||
sources += [ "$root_gen_dir/chrome/print_preview_resources.pak" ]
|
||||
deps +=
|
||||
|
|
|
@ -39,6 +39,7 @@ void AddStringsForPdf(base::DictionaryValue* dict) {
|
|||
{"passwordDialogTitle", IDS_PDF_PASSWORD_DIALOG_TITLE},
|
||||
{"passwordPrompt", IDS_PDF_NEED_PASSWORD},
|
||||
{"passwordSubmit", IDS_PDF_PASSWORD_SUBMIT},
|
||||
{"thumbnailPageAriaLabel", IDS_PDF_THUMBNAIL_PAGE_ARIA_LABEL},
|
||||
{"passwordInvalid", IDS_PDF_PASSWORD_INVALID},
|
||||
{"pageLoading", IDS_PDF_PAGE_LOADING},
|
||||
{"pageLoadFailed", IDS_PDF_PAGE_LOAD_FAILED},
|
||||
|
@ -66,11 +67,9 @@ void AddAdditionalDataForPdf(base::DictionaryValue* dict) {
|
|||
dict->SetKey("pdfFormSaveEnabled",
|
||||
base::Value(base::FeatureList::IsEnabled(
|
||||
chrome_pdf::features::kSaveEditedPDFForm)));
|
||||
dict->SetStringKey(
|
||||
"pdfViewerUpdateEnabledAttribute",
|
||||
base::FeatureList::IsEnabled(chrome_pdf::features::kPDFViewerUpdate)
|
||||
? "pdf-viewer-update-enabled"
|
||||
: "");
|
||||
dict->SetKey("documentPropertiesEnabled",
|
||||
base::Value(base::FeatureList::IsEnabled(
|
||||
chrome_pdf::features::kPdfViewerDocumentProperties)));
|
||||
dict->SetKey("presentationModeEnabled",
|
||||
base::Value(base::FeatureList::IsEnabled(
|
||||
chrome_pdf::features::kPdfViewerPresentationMode)));
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
#if BUILDFLAG(ENABLE_PDF_VIEWER)
|
||||
#include "chrome/browser/pdf/pdf_extension_util.h" // nogncheck
|
||||
#include "chrome/grit/pdf_resources_map.h"
|
||||
#include "extensions/common/constants.h"
|
||||
#endif
|
||||
|
||||
|
@ -28,6 +29,8 @@ ElectronComponentExtensionResourceManager::
|
|||
AddComponentResourceEntries(kComponentExtensionResources,
|
||||
kComponentExtensionResourcesSize);
|
||||
#if BUILDFLAG(ENABLE_PDF_VIEWER)
|
||||
AddComponentResourceEntries(kPdfResources, kPdfResourcesSize);
|
||||
|
||||
// Register strings for the PDF viewer, so that $i18n{} replacements work.
|
||||
base::Value pdf_strings(base::Value::Type::DICTIONARY);
|
||||
pdf_extension_util::AddStrings(
|
||||
|
|
|
@ -1280,6 +1280,13 @@ describe('chromium features', () => {
|
|||
slashes: true
|
||||
});
|
||||
|
||||
it('successfully loads a PDF file', async () => {
|
||||
const w = new BrowserWindow({ show: false });
|
||||
|
||||
w.loadURL(pdfSource);
|
||||
await emittedOnce(w.webContents, 'did-finish-load');
|
||||
});
|
||||
|
||||
it('opens when loading a pdf resource as top level navigation', async () => {
|
||||
const w = new BrowserWindow({ show: false });
|
||||
w.loadURL(pdfSource);
|
||||
|
|
Загрузка…
Ссылка в новой задаче