diff --git a/browser/BUILD.gn b/browser/BUILD.gn index e650c020066c..952622485b69 100644 --- a/browser/BUILD.gn +++ b/browser/BUILD.gn @@ -94,6 +94,12 @@ source_set("browser_process") { "//third_party/widevine/cdm:buildflags", ] + if (!is_android) { + deps += [ + "//brave/app:brave_generated_resources_grit", + ] + } + if (bundle_widevine_cdm || enable_widevine_cdm_component) { deps += [ "//brave/browser/widevine" ] } if (is_win && is_official_build) { diff --git a/browser/extensions/BUILD.gn b/browser/extensions/BUILD.gn index 57aedb616a7a..c7beecf8ca9d 100644 --- a/browser/extensions/BUILD.gn +++ b/browser/extensions/BUILD.gn @@ -42,6 +42,7 @@ source_set("extensions") { deps = [ "//base", + "//brave/app:brave_generated_resources_grit", "//brave/common:pref_names", "//brave/common/extensions/api", "//brave/components/brave_extension:static_resources", diff --git a/browser/net/BUILD.gn b/browser/net/BUILD.gn index d78594cbb273..94691738ed64 100644 --- a/browser/net/BUILD.gn +++ b/browser/net/BUILD.gn @@ -39,4 +39,10 @@ source_set("net") { "//extensions/common:common_constants", "//net", ] + + if (!is_android) { + deps += [ + "//brave/app:brave_generated_resources_grit", + ] + } } diff --git a/browser/themes/BUILD.gn b/browser/themes/BUILD.gn index c11f65b40160..aa7f5fd623b9 100644 --- a/browser/themes/BUILD.gn +++ b/browser/themes/BUILD.gn @@ -14,6 +14,7 @@ source_set("themes") { deps = [ "//base", + "//brave/app:brave_generated_resources_grit", "//brave/common", "//chrome/common", "//components/prefs", diff --git a/browser/ui/BUILD.gn b/browser/ui/BUILD.gn index 22e5750934be..09df50a6510f 100644 --- a/browser/ui/BUILD.gn +++ b/browser/ui/BUILD.gn @@ -72,6 +72,8 @@ source_set("ui") { "webui/brave_donate_ui.h", "webui/brave_md_settings_ui.cc", "webui/brave_md_settings_ui.h", + "webui/navigation_bar_data_provider.cc", + "webui/navigation_bar_data_provider.h", "webui/brave_new_tab_ui.cc", "webui/brave_new_tab_ui.h", "webui/brave_web_ui_controller_factory.cc", @@ -144,6 +146,12 @@ source_set("ui") { "//ui/gfx", ] + if (!is_android) { + deps += [ + "//brave/app:brave_generated_resources_grit", + ] + } + if (is_win && is_official_build) { sources += [ "//chrome/browser/ui/webui/help/version_updater_win.cc", diff --git a/browser/ui/webui/brave_md_settings_ui.cc b/browser/ui/webui/brave_md_settings_ui.cc index b8c5d40052b1..805288005676 100644 --- a/browser/ui/webui/brave_md_settings_ui.cc +++ b/browser/ui/webui/brave_md_settings_ui.cc @@ -13,6 +13,7 @@ #include "brave/browser/ui/webui/settings/brave_default_extensions_handler.h" #include "brave/browser/ui/webui/settings/brave_privacy_handler.h" #include "brave/browser/ui/webui/settings/default_brave_shields_handler.h" +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" #include "brave/browser/version_info.h" #include "brave/common/brave_switches.h" #include "chrome/browser/profiles/profile.h" @@ -56,4 +57,5 @@ void BraveMdSettingsUI::AddResources(content::WebUIDataSource* html_source, command_line.HasSwitch(switches::kDisableBraveSync)); html_source->AddString("braveProductVersion", version_info::GetBraveVersionWithoutChromiumMajorVersion()); + NavigationBarDataProvider::Initialize(html_source); } diff --git a/browser/ui/webui/brave_webui_source.cc b/browser/ui/webui/brave_webui_source.cc index 041ae803a175..b9c52392a4d4 100644 --- a/browser/ui/webui/brave_webui_source.cc +++ b/browser/ui/webui/brave_webui_source.cc @@ -12,6 +12,7 @@ #include "content/public/browser/web_ui_data_source.h" #if !defined(OS_ANDROID) +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" #include "brave/components/brave_rewards/resources/grit/brave_rewards_resources.h" #include "components/grit/brave_components_resources.h" #else @@ -45,6 +46,11 @@ void AddResourcePaths(content::WebUIDataSource* html_source, void CustomizeWebUIHTMLSource(const std::string &name, content::WebUIDataSource* source) { +#if !defined(OS_ANDROID) + if (name == "rewards") { + NavigationBarDataProvider::Initialize(source); + } +#endif static std::map > resources = { { std::string("newtab"), { diff --git a/browser/ui/webui/navigation_bar_data_provider.cc b/browser/ui/webui/navigation_bar_data_provider.cc new file mode 100644 index 000000000000..f08ed5563fc6 --- /dev/null +++ b/browser/ui/webui/navigation_bar_data_provider.cc @@ -0,0 +1,23 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" + +#include "chrome/grit/generated_resources.h" +#include "components/strings/grit/components_strings.h" +#include "content/public/browser/web_ui_data_source.h" + +// static +void NavigationBarDataProvider::Initialize(content::WebUIDataSource* source) { + source->AddLocalizedString( + "brToolbarSettingsTitle", IDS_SETTINGS_SETTINGS); + source->AddLocalizedString( + "brToolbarBookmarksTitle", IDS_BOOKMARK_MANAGER_TITLE); + source->AddLocalizedString( + "brToolbarDownloadsTitle", IDS_DOWNLOAD_TITLE); + source->AddLocalizedString( + "brToolbarHistoryTitle", IDS_HISTORY_TITLE); +} + diff --git a/browser/ui/webui/navigation_bar_data_provider.h b/browser/ui/webui/navigation_bar_data_provider.h new file mode 100644 index 000000000000..db431bbc23df --- /dev/null +++ b/browser/ui/webui/navigation_bar_data_provider.h @@ -0,0 +1,20 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#ifndef BRAVE_BROWSER_UI_WEBUI_NAVIGATION_BAR_DATA_PROVIDER_H +#define BRAVE_BROWSER_UI_WEBUI_NAVIGATION_BAR_DATA_PROVIDER_H + +namespace content { +class WebUIDataSource; +} + +class NavigationBarDataProvider { + public: + // Sets load-time constants on |source|. This handles a flicker-free initial + // page load (i.e. loadTimeData.getString('brToolbarSettingsTitle')). + static void Initialize(content::WebUIDataSource* source); +}; + +#endif diff --git a/browser/widevine/BUILD.gn b/browser/widevine/BUILD.gn index 264c2719a5fb..47cc2cb3672a 100644 --- a/browser/widevine/BUILD.gn +++ b/browser/widevine/BUILD.gn @@ -5,6 +5,7 @@ assert(bundle_widevine_cdm || enable_widevine_cdm_component) source_set("widevine") { deps = [ "//base", + "//brave/app:brave_generated_resources_grit", "//components/content_settings/core/common", "//content/public/browser", "//content/public/common", diff --git a/chromium_src/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc b/chromium_src/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc new file mode 100644 index 000000000000..ee3a704ee741 --- /dev/null +++ b/chromium_src/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc @@ -0,0 +1,17 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" + +namespace { + +void BraveCustomizeBookmarksDataSource(content::WebUIDataSource* source) { + NavigationBarDataProvider::Initialize(source); +} + +} // namespace + +#include "../../../../../../chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc" + diff --git a/chromium_src/chrome/browser/ui/webui/downloads/downloads_ui.cc b/chromium_src/chrome/browser/ui/webui/downloads/downloads_ui.cc new file mode 100644 index 000000000000..a4f8b17d815e --- /dev/null +++ b/chromium_src/chrome/browser/ui/webui/downloads/downloads_ui.cc @@ -0,0 +1,17 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" + +namespace { + +void BraveCustomizeDownloadsDataSource(content::WebUIDataSource* source) { + NavigationBarDataProvider::Initialize(source); +} + +} // namespace + +#include "../../../../../../chrome/browser/ui/webui/downloads/downloads_ui.cc" // NOLINT + diff --git a/chromium_src/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chromium_src/chrome/browser/ui/webui/extensions/extensions_ui.cc index 17bc69d02250..c2531d8a47a4 100644 --- a/chromium_src/chrome/browser/ui/webui/extensions/extensions_ui.cc +++ b/chromium_src/chrome/browser/ui/webui/extensions/extensions_ui.cc @@ -5,6 +5,7 @@ #include "brave/browser/resources/md_extensions/grit/brave_extensions_resources.h" #include "brave/browser/resources/md_extensions/grit/brave_extensions_resources_map.h" +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" #include "brave/grit/brave_generated_resources.h" #include "chrome/common/buildflags.h" #include "chrome/grit/generated_resources.h" @@ -23,6 +24,7 @@ void BraveAddExtensionsResources(content::WebUIDataSource* source) { kBraveExtensionsResources[i].value); } #endif + NavigationBarDataProvider::Initialize(source); } } // namespace diff --git a/chromium_src/chrome/browser/ui/webui/history_ui.cc b/chromium_src/chrome/browser/ui/webui/history_ui.cc new file mode 100644 index 000000000000..e24e6f19e7fa --- /dev/null +++ b/chromium_src/chrome/browser/ui/webui/history_ui.cc @@ -0,0 +1,17 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#include "brave/browser/ui/webui/navigation_bar_data_provider.h" + +namespace { + +void BraveCustomizeHistoryDataSource(content::WebUIDataSource* source) { + NavigationBarDataProvider::Initialize(source); +} + +} // namespace + +#include "../../../../../chrome/browser/ui/webui/history_ui.cc" + diff --git a/chromium_src/ui/base/webui/web_ui_util.cc b/chromium_src/ui/base/webui/web_ui_util.cc index c9ddfa85009a..f6cb6cae6e6d 100644 --- a/chromium_src/ui/base/webui/web_ui_util.cc +++ b/chromium_src/ui/base/webui/web_ui_util.cc @@ -3,46 +3,11 @@ #include "brave/ui/webui/resources/grit/brave_webui_resources.h" #include "ui/resources/grit/webui_resources.h" -#define SetLoadTimeDataDefaults SetLoadTimeDataDefaults_ChromiumImpl +// Replace text_defaults.css with brave's text_defaults.css +// which is defined in brave_webui_resources.grd. #define IDR_WEBUI_CSS_TEXT_DEFAULTS_MD_PREVIOUS IDR_WEBUI_CSS_TEXT_DEFAULTS_MD #undef IDR_WEBUI_CSS_TEXT_DEFAULTS_MD #define IDR_WEBUI_CSS_TEXT_DEFAULTS_MD IDR_BRAVE_WEBUI_CSS_TEXT_DEFAULTS #include "../../../../../ui/base/webui/web_ui_util.cc" -#undef SetLoadTimeDataDefaults #undef IDR_WEBUI_CSS_TEXT_DEFAULTS_MD #define IDR_WEBUI_CSS_TEXT_DEFAULTS_MD IDR_WEBUI_CSS_TEXT_DEFAULTS_MD_PREVIOUS - -#include "chrome/grit/generated_resources.h" -#include "components/strings/grit/components_strings.h" -#include "ui/base/l10n/l10n_util.h" - -namespace webui { - -void SetLoadTimeDataDefaults(const std::string& app_locale, - base::DictionaryValue* localized_strings) { - - SetLoadTimeDataDefaults_ChromiumImpl(app_locale, localized_strings); - localized_strings->SetString( - "brToolbarSettingsTitle", - l10n_util::GetStringUTF16(IDS_SETTINGS_SETTINGS) - ); - localized_strings->SetString( - "brToolbarBookmarksTitle", - l10n_util::GetStringUTF16(IDS_BOOKMARK_MANAGER_TITLE) - ); - localized_strings->SetString( - "brToolbarDownloadsTitle", - l10n_util::GetStringUTF16(IDS_DOWNLOAD_TITLE) - ); - localized_strings->SetString( - "brToolbarHistoryTitle", - l10n_util::GetStringUTF16(IDS_HISTORY_TITLE) - ); -} - -void SetLoadTimeDataDefaults(const std::string& app_locale, - ui::TemplateReplacements* replacements) { - SetLoadTimeDataDefaults_ChromiumImpl(app_locale, replacements); -} - -} \ No newline at end of file diff --git a/patches/chrome-browser-ui-webui-bookmarks-bookmarks_ui.cc.patch b/patches/chrome-browser-ui-webui-bookmarks-bookmarks_ui.cc.patch new file mode 100644 index 000000000000..e99155a43643 --- /dev/null +++ b/patches/chrome-browser-ui-webui-bookmarks-bookmarks_ui.cc.patch @@ -0,0 +1,12 @@ +diff --git a/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc b/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc +index 0542e022aeaedc240cf0bc79b9acebfe121fcc4d..ac9fe90cb2d96fa9850c066ae33630a60bf4ba22 100644 +--- a/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc ++++ b/chrome/browser/ui/webui/bookmarks/bookmarks_ui.cc +@@ -45,6 +45,7 @@ content::WebUIDataSource* CreateBookmarksUIHTMLSource(Profile* profile) { + content::WebUIDataSource* source = + content::WebUIDataSource::Create(chrome::kChromeUIBookmarksHost); + ++ BraveCustomizeBookmarksDataSource(source); + // Build an Accelerator to describe undo shortcut + // NOTE: the undo shortcut is also defined in bookmarks/command_manager.js + // TODO(b/893033): de-duplicate shortcut by moving all shortcut definitions diff --git a/patches/chrome-browser-ui-webui-downloads-downloads_ui.cc.patch b/patches/chrome-browser-ui-webui-downloads-downloads_ui.cc.patch new file mode 100644 index 000000000000..de3889b873b9 --- /dev/null +++ b/patches/chrome-browser-ui-webui-downloads-downloads_ui.cc.patch @@ -0,0 +1,12 @@ +diff --git a/chrome/browser/ui/webui/downloads/downloads_ui.cc b/chrome/browser/ui/webui/downloads/downloads_ui.cc +index 9f595a7bbb7adc1e42fd7eac31d0b8819deda532..41bfbeddcc010e8c76cf198c64d428d274b44137 100644 +--- a/chrome/browser/ui/webui/downloads/downloads_ui.cc ++++ b/chrome/browser/ui/webui/downloads/downloads_ui.cc +@@ -47,6 +47,7 @@ content::WebUIDataSource* CreateDownloadsUIHTMLSource(Profile* profile) { + content::WebUIDataSource* source = + content::WebUIDataSource::Create(chrome::kChromeUIDownloadsHost); + ++ BraveCustomizeDownloadsDataSource(source); + source->AddLocalizedString("title", IDS_DOWNLOAD_TITLE); + source->AddLocalizedString("searchResultsPlural", IDS_SEARCH_RESULTS_PLURAL); + source->AddLocalizedString("searchResultsSingular", diff --git a/patches/chrome-browser-ui-webui-history_ui.cc.patch b/patches/chrome-browser-ui-webui-history_ui.cc.patch new file mode 100644 index 000000000000..e7561c7bad1d --- /dev/null +++ b/patches/chrome-browser-ui-webui-history_ui.cc.patch @@ -0,0 +1,12 @@ +diff --git a/chrome/browser/ui/webui/history_ui.cc b/chrome/browser/ui/webui/history_ui.cc +index b6b6f4f7aa79a1c3a44a187c1f618e10194442bd..09a0d991a87ff90c84678ac0f6325a8e5076560a 100644 +--- a/chrome/browser/ui/webui/history_ui.cc ++++ b/chrome/browser/ui/webui/history_ui.cc +@@ -56,6 +56,7 @@ content::WebUIDataSource* CreateHistoryUIHTMLSource(Profile* profile) { + content::WebUIDataSource* source = + content::WebUIDataSource::Create(chrome::kChromeUIHistoryHost); + ++ BraveCustomizeHistoryDataSource(source); + // Localized strings (alphabetical order). + source->AddLocalizedString("actionMenuDescription", + IDS_HISTORY_ACTION_MENU_DESCRIPTION); diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn index b55cbb0940fb..b8502264cb17 100644 --- a/ui/base/BUILD.gn +++ b/ui/base/BUILD.gn @@ -1,6 +1,5 @@ group("chromium_deps") { deps = [ "//brave/ui/webui/resources", - "//brave/app:brave_generated_resources_grit", ] }