diff --git chrome/browser/ui/webui/about/about_ui.cc chrome/browser/ui/webui/about/about_ui.cc index b706f12d1b945..cd7ef560047ee 100644 --- chrome/browser/ui/webui/about/about_ui.cc +++ chrome/browser/ui/webui/about/about_ui.cc @@ -86,6 +86,10 @@ #include "third_party/zlib/google/compression_utils.h" #endif +#if BUILDFLAG(ENABLE_CEF) +#include "cef/grit/cef_resources.h" +#endif + using content::BrowserThread; namespace { @@ -441,6 +445,11 @@ AboutUIConfigBase::AboutUIConfigBase(std::string_view host) CreditsUIConfig::CreditsUIConfig() : AboutUIConfigBase(chrome::kChromeUICreditsHost) {} +#if BUILDFLAG(ENABLE_CEF) +ChromeUILicenseConfig::ChromeUILicenseConfig() + : AboutUIConfigBase(chrome::kChromeUILicenseHost) {} +#endif + #if !BUILDFLAG(IS_ANDROID) TermsUIConfig::TermsUIConfig() : AboutUIConfigBase(chrome::kChromeUITermsHost) {} @@ -540,6 +549,16 @@ void AboutUIHTMLSource::StartDataRequest( IDS_TERMS_HTML); #endif } +#if BUILDFLAG(ENABLE_CEF) + else if (source_name_ == chrome::kChromeUILicenseHost) { + response = + "CEF License" + "
" +
+        ui::ResourceBundle::GetSharedInstance().LoadDataResourceString(
+            IDR_CEF_LICENSE_TXT) +
+        "
"; + } +#endif FinishDataRequest(response, std::move(callback)); } diff --git chrome/browser/ui/webui/about/about_ui.h chrome/browser/ui/webui/about/about_ui.h index f633265e3d207..7d759d8559222 100644 --- chrome/browser/ui/webui/about/about_ui.h +++ chrome/browser/ui/webui/about/about_ui.h @@ -11,6 +11,7 @@ #include "base/memory/raw_ptr.h" #include "build/build_config.h" +#include "cef/libcef/features/features.h" #include "content/public/browser/url_data_source.h" #include "content/public/browser/web_ui_controller.h" #include "content/public/browser/webui_config.h" @@ -35,6 +36,13 @@ class CreditsUIConfig : public AboutUIConfigBase { CreditsUIConfig(); }; +#if BUILDFLAG(ENABLE_CEF) +class ChromeUILicenseConfig : public AboutUIConfigBase { + public: + ChromeUILicenseConfig(); +}; +#endif + #if !BUILDFLAG(IS_ANDROID) // chrome://terms class TermsUIConfig : public AboutUIConfigBase { diff --git chrome/browser/ui/webui/chrome_web_ui_configs.cc chrome/browser/ui/webui/chrome_web_ui_configs.cc index f740a1880ae9f..738d461125bfc 100644 --- chrome/browser/ui/webui/chrome_web_ui_configs.cc +++ chrome/browser/ui/webui/chrome_web_ui_configs.cc @@ -6,6 +6,7 @@ #include "build/android_buildflags.h" #include "build/build_config.h" +#include "cef/libcef/features/features.h" #include "chrome/browser/optimization_guide/optimization_guide_internals_ui.h" #include "chrome/browser/ui/webui/about/about_ui.h" #include "chrome/browser/ui/webui/accessibility/accessibility_ui.h" @@ -222,6 +223,9 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); +#if BUILDFLAG(ENABLE_CEF) + map.AddWebUIConfig(std::make_unique()); +#endif map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); diff --git chrome/common/webui_url_constants.cc chrome/common/webui_url_constants.cc index e5e724a22d015..fcb15d234483f 100644 --- chrome/common/webui_url_constants.cc +++ chrome/common/webui_url_constants.cc @@ -96,6 +96,9 @@ base::span ChromeURLHosts() { kChromeUIHistoryHost, history_clusters_internals::kChromeUIHistoryClustersInternalsHost, kChromeUIInterstitialHost, +#if BUILDFLAG(ENABLE_CEF) + kChromeUILicenseHost, +#endif kChromeUILocalStateHost, #if !BUILDFLAG(IS_ANDROID) kChromeUIManagementHost, diff --git chrome/common/webui_url_constants.h chrome/common/webui_url_constants.h index c35d5252a52ee..b505fc38a2c53 100644 --- chrome/common/webui_url_constants.h +++ chrome/common/webui_url_constants.h @@ -18,6 +18,7 @@ #include "build/android_buildflags.h" #include "build/branding_buildflags.h" #include "build/build_config.h" +#include "cef/libcef/features/features.h" #include "chrome/common/buildflags.h" #include "components/signin/public/base/signin_buildflags.h" #include "content/public/common/url_constants.h" @@ -162,6 +163,10 @@ inline constexpr char kChromeUIInterstitialHost[] = "interstitials"; inline constexpr char kChromeUIInterstitialURL[] = "chrome://interstitials/"; inline constexpr char kChromeUIKillHost[] = "kill"; inline constexpr char kChromeUILauncherInternalsHost[] = "launcher-internals"; +#if BUILDFLAG(ENABLE_CEF) +inline constexpr char kChromeUILicenseHost[] = "license"; +inline constexpr char kChromeUILicenseURL[] = "chrome://license/"; +#endif inline constexpr char kChromeUILocalStateHost[] = "local-state"; inline constexpr char kChromeUILocalStateURL[] = "chrome://local-state"; inline constexpr char kChromeUILocationInternalsHost[] = "location-internals";