diff --git a/electron_paks.gni b/electron_paks.gni index 82807df44e..89b93a0d89 100644 --- a/electron_paks.gni +++ b/electron_paks.gni @@ -55,6 +55,7 @@ template("electron_extra_paks") { output = "${invoker.output_dir}/resources.pak" sources = [ "$root_gen_dir/chrome/dev_ui_browser_resources.pak", + "$root_gen_dir/chrome/print_preview_pdf_resources.pak", "$root_gen_dir/components/components_resources.pak", "$root_gen_dir/content/browser/resources/media/media_internals_resources.pak", "$root_gen_dir/content/browser/tracing/tracing_resources.pak", @@ -70,6 +71,7 @@ template("electron_extra_paks") { ] deps = [ "//chrome/browser:dev_ui_browser_resources", + "//chrome/browser/resources:print_preview_pdf_resources", "//components/resources", "//content:content_resources", "//content:dev_ui_content_resources", diff --git a/shell/browser/common_web_contents_delegate.cc b/shell/browser/common_web_contents_delegate.cc index 92dbd63e94..641ea7976c 100644 --- a/shell/browser/common_web_contents_delegate.cc +++ b/shell/browser/common_web_contents_delegate.cc @@ -209,7 +209,7 @@ void CommonWebContentsDelegate::InitWithWebContents( web_contents, std::make_unique()); #endif - // Determien whether the WebContents is offscreen. + // Determine whether the WebContents is offscreen. auto* web_preferences = WebContentsPreferences::From(web_contents); offscreen_ = web_preferences && web_preferences->IsEnabled(options::kOffscreen); diff --git a/shell/browser/extensions/electron_component_extension_resource_manager.cc b/shell/browser/extensions/electron_component_extension_resource_manager.cc index e4a548b4b8..7e1c140f0d 100644 --- a/shell/browser/extensions/electron_component_extension_resource_manager.cc +++ b/shell/browser/extensions/electron_component_extension_resource_manager.cc @@ -5,6 +5,7 @@ #include "shell/browser/extensions/electron_component_extension_resource_manager.h" #include +#include #include "base/logging.h" #include "base/path_service.h" @@ -13,6 +14,12 @@ #include "build/build_config.h" #include "chrome/common/chrome_paths.h" #include "chrome/grit/component_extension_resources_map.h" +#include "electron/buildflags/buildflags.h" + +#if BUILDFLAG(ENABLE_PDF_VIEWER) +#include "chrome/browser/pdf/pdf_extension_util.h" +#include "extensions/common/constants.h" +#endif namespace extensions { @@ -20,6 +27,19 @@ ElectronComponentExtensionResourceManager:: ElectronComponentExtensionResourceManager() { AddComponentResourceEntries(kComponentExtensionResources, kComponentExtensionResourcesSize); +#if BUILDFLAG(ENABLE_PDF_VIEWER) + // Register strings for the PDF viewer, so that $i18n{} replacements work. + base::Value pdf_strings(base::Value::Type::DICTIONARY); + pdf_extension_util::AddStrings( + pdf_extension_util::PdfViewerContext::kPdfViewer, &pdf_strings); + pdf_extension_util::AddAdditionalData(&pdf_strings); + + ui::TemplateReplacements pdf_viewer_replacements; + ui::TemplateReplacementsFromDictionaryValue( + base::Value::AsDictionaryValue(pdf_strings), &pdf_viewer_replacements); + extension_template_replacements_[extension_misc::kPdfExtensionId] = + std::move(pdf_viewer_replacements); +#endif } ElectronComponentExtensionResourceManager::