summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-19 23:05:16 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-19 23:05:16 +0000
commit3dbd64d89febbe85df9b53ad16fbdca06ecdeb9a (patch)
tree497b5736983f6159222aeb802c5f44621640a292
parent5ffe3cdb7f90c26b25646eead5bc764198e271bc (diff)
downloadchromium_src-3dbd64d89febbe85df9b53ad16fbdca06ecdeb9a.zip
chromium_src-3dbd64d89febbe85df9b53ad16fbdca06ecdeb9a.tar.gz
chromium_src-3dbd64d89febbe85df9b53ad16fbdca06ecdeb9a.tar.bz2
Switch users of ChromeWebUIDataSource to use the content::WebUIDataSource instead. This is in anticipation of moving the implementation inside content.
BUG=169170 Review URL: https://codereview.chromium.org/11871022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177854 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/ui/webui/certificate_viewer_ui.cc16
-rw-r--r--chrome/browser/ui/webui/chrome_url_data_manager.cc8
-rw-r--r--chrome/browser/ui/webui/chrome_url_data_manager.h7
-rw-r--r--chrome/browser/ui/webui/chrome_web_ui_data_source.cc28
-rw-r--r--chrome/browser/ui/webui/chrome_web_ui_data_source.h77
-rw-r--r--chrome/browser/ui/webui/chrome_web_ui_data_source_unittest.cc10
-rw-r--r--chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc16
-rw-r--r--chrome/browser/ui/webui/chromeos/cryptohome_ui.cc14
-rw-r--r--chrome/browser/ui/webui/chromeos/diagnostics/diagnostics_ui.cc20
-rw-r--r--chrome/browser/ui/webui/chromeos/drive_internals_ui.cc12
-rw-r--r--chrome/browser/ui/webui/chromeos/imageburner/imageburner_ui.cc14
-rw-r--r--chrome/browser/ui/webui/chromeos/keyboard_overlay_ui.cc16
-rw-r--r--chrome/browser/ui/webui/chromeos/ui_account_tweaks.cc3
-rw-r--r--chrome/browser/ui/webui/chromeos/ui_account_tweaks.h7
-rw-r--r--chrome/browser/ui/webui/conflicts_ui.cc16
-rw-r--r--chrome/browser/ui/webui/crashes_ui.cc17
-rw-r--r--chrome/browser/ui/webui/downloads_ui.cc20
-rw-r--r--chrome/browser/ui/webui/extensions/command_handler.cc16
-rw-r--r--chrome/browser/ui/webui/extensions/command_handler.h9
-rw-r--r--chrome/browser/ui/webui/extensions/extension_activity_ui.cc14
-rw-r--r--chrome/browser/ui/webui/extensions/extension_info_ui.cc19
-rw-r--r--chrome/browser/ui/webui/extensions/extension_info_ui.h7
-rw-r--r--chrome/browser/ui/webui/extensions/extension_settings_handler.cc87
-rw-r--r--chrome/browser/ui/webui/extensions/extension_settings_handler.h6
-rw-r--r--chrome/browser/ui/webui/extensions/extensions_ui.cc32
-rw-r--r--chrome/browser/ui/webui/extensions/install_extension_handler.cc8
-rw-r--r--chrome/browser/ui/webui/extensions/install_extension_handler.h6
-rw-r--r--chrome/browser/ui/webui/extensions/pack_extension_handler.cc27
-rw-r--r--chrome/browser/ui/webui/extensions/pack_extension_handler.h6
-rw-r--r--chrome/browser/ui/webui/feedback_ui.cc18
-rw-r--r--chrome/browser/ui/webui/flags_ui.cc16
-rw-r--r--chrome/browser/ui/webui/flash_ui.cc16
-rw-r--r--chrome/browser/ui/webui/gesture_config_ui.cc12
-rw-r--r--chrome/browser/ui/webui/gpu_internals_ui.cc14
-rw-r--r--chrome/browser/ui/webui/help/help_handler.cc30
-rw-r--r--chrome/browser/ui/webui/help/help_handler.h8
-rw-r--r--chrome/browser/ui/webui/help/help_ui.cc22
-rw-r--r--chrome/browser/ui/webui/history_ui.cc18
-rw-r--r--chrome/browser/ui/webui/inspect_ui.cc15
-rw-r--r--chrome/browser/ui/webui/instant_ui.cc18
-rw-r--r--chrome/browser/ui/webui/local_omnibox_popup/local_omnibox_popup_ui.cc44
-rw-r--r--chrome/browser/ui/webui/media/media_internals_ui.cc14
-rw-r--r--chrome/browser/ui/webui/nacl_ui.cc18
-rw-r--r--chrome/browser/ui/webui/net_internals/net_internals_ui.cc22
-rw-r--r--chrome/browser/ui/webui/omnibox/omnibox_ui.cc12
-rw-r--r--chrome/browser/ui/webui/performance_monitor/performance_monitor_ui.cc24
-rw-r--r--chrome/browser/ui/webui/plugins_ui.cc17
-rw-r--r--chrome/browser/ui/webui/policy_ui.cc18
-rw-r--r--chrome/browser/ui/webui/predictors/predictors_ui.cc14
-rw-r--r--chrome/browser/ui/webui/print_preview/print_preview_ui.cc45
-rw-r--r--chrome/browser/ui/webui/profiler_ui.cc14
-rw-r--r--chrome/browser/ui/webui/quota_internals_ui.cc18
-rw-r--r--chrome/browser/ui/webui/set_as_default_browser_ui.cc12
-rw-r--r--chrome/browser/ui/webui/signin_internals_ui.cc14
-rw-r--r--chrome/browser/ui/webui/suggestions_internals/suggestions_internals_ui.cc16
-rw-r--r--chrome/browser/ui/webui/sync_internals_ui.cc51
-rw-r--r--chrome/browser/ui/webui/sync_promo/sync_promo_ui.cc18
-rw-r--r--chrome/browser/ui/webui/tab_modal_confirm_dialog_webui.cc8
-rw-r--r--chrome/browser/ui/webui/task_manager/task_manager_ui.cc33
-rw-r--r--chrome/browser/ui/webui/tracing_ui.cc14
-rw-r--r--chrome/browser/ui/webui/uber/uber_ui.cc34
-rw-r--r--chrome/browser/ui/webui/user_actions/user_actions_ui.cc12
-rw-r--r--chrome/browser/ui/webui/version_ui.cc20
-rw-r--r--chrome/browser/ui/webui/webrtc_internals_ui.cc16
-rw-r--r--chrome/browser/ui/webui/welcome_ui_android.cc16
-rw-r--r--content/content_browser.gypi1
-rw-r--r--content/public/browser/web_ui_data_source.h71
67 files changed, 708 insertions, 613 deletions
diff --git a/chrome/browser/ui/webui/certificate_viewer_ui.cc b/chrome/browser/ui/webui/certificate_viewer_ui.cc
index dec3dea6..32f40c4 100644
--- a/chrome/browser/ui/webui/certificate_viewer_ui.cc
+++ b/chrome/browser/ui/webui/certificate_viewer_ui.cc
@@ -16,11 +16,11 @@
CertificateViewerUI::CertificateViewerUI(content::WebUI* web_ui)
: ConstrainedWebDialogUI(web_ui) {
// Set up the chrome://view-cert source.
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUICertificateViewerHost);
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUICertificateViewerHost);
// Localized strings.
- html_source->set_use_json_js_format_v2();
+ html_source->SetUseJsonJSFormatV2();
html_source->AddLocalizedString("general", IDS_CERT_INFO_GENERAL_TAB_LABEL);
html_source->AddLocalizedString("details", IDS_CERT_INFO_DETAILS_TAB_LABEL);
html_source->AddLocalizedString("close", IDS_CLOSE);
@@ -49,17 +49,17 @@ CertificateViewerUI::CertificateViewerUI(content::WebUI* web_ui)
IDS_CERT_DETAILS_CERTIFICATE_FIELDS_LABEL);
html_source->AddLocalizedString("certFieldVal",
IDS_CERT_DETAILS_CERTIFICATE_FIELD_VALUE_LABEL);
- html_source->set_json_path("strings.js");
+ html_source->SetJsonPath("strings.js");
// Add required resources.
- html_source->add_resource_path("certificate_viewer.js",
+ html_source->AddResourcePath("certificate_viewer.js",
IDR_CERTIFICATE_VIEWER_JS);
- html_source->add_resource_path("certificate_viewer.css",
+ html_source->AddResourcePath("certificate_viewer.css",
IDR_CERTIFICATE_VIEWER_CSS);
- html_source->set_default_resource(IDR_CERTIFICATE_VIEWER_HTML);
+ html_source->SetDefaultResource(IDR_CERTIFICATE_VIEWER_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
}
CertificateViewerUI::~CertificateViewerUI() {
diff --git a/chrome/browser/ui/webui/chrome_url_data_manager.cc b/chrome/browser/ui/webui/chrome_url_data_manager.cc
index 6398540..269f4f3 100644
--- a/chrome/browser/ui/webui/chrome_url_data_manager.cc
+++ b/chrome/browser/ui/webui/chrome_url_data_manager.cc
@@ -17,6 +17,7 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/webui/chrome_url_data_manager_factory.h"
#include "chrome/browser/ui/webui/chrome_url_data_manager_backend.h"
+#include "chrome/browser/ui/webui/chrome_web_ui_data_source.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/url_data_source.h"
@@ -104,9 +105,10 @@ void ChromeURLDataManager::AddDataSource(
}
// static
-void ChromeURLDataManager::AddDataSourceImpl(Profile* profile,
- URLDataSourceImpl* source) {
- ChromeURLDataManagerFactory::GetForProfile(profile)->AddDataSource(source);
+void ChromeURLDataManager::AddWebUIDataSource(Profile* profile,
+ content::WebUIDataSource* source) {
+ ChromeWebUIDataSource* impl = static_cast<ChromeWebUIDataSource*>(source);
+ ChromeURLDataManagerFactory::GetForProfile(profile)->AddDataSource(impl);
}
// static
diff --git a/chrome/browser/ui/webui/chrome_url_data_manager.h b/chrome/browser/ui/webui/chrome_url_data_manager.h
index 68a4d73..810be78 100644
--- a/chrome/browser/ui/webui/chrome_url_data_manager.h
+++ b/chrome/browser/ui/webui/chrome_url_data_manager.h
@@ -24,6 +24,7 @@ class RefCountedMemory;
namespace content {
class URLDataSource;
+class WebUIDataSource;
}
class URLDataSourceImpl;
@@ -61,9 +62,9 @@ class ChromeURLDataManager : public ProfileKeyedService {
static void AddDataSource(Profile* profile,
content::URLDataSource* source);
- // Like above, but takes a URLDataSourceImpl directly.
- static void AddDataSourceImpl(Profile* profile,
- URLDataSourceImpl* source);
+ // Adds a WebUI data source to |profile|'s |ChromeURLDataManager|.
+ static void AddWebUIDataSource(Profile* profile,
+ content::WebUIDataSource* source);
private:
friend class URLDataSourceImpl;
diff --git a/chrome/browser/ui/webui/chrome_web_ui_data_source.cc b/chrome/browser/ui/webui/chrome_web_ui_data_source.cc
index 1b969b6..e9f5e30 100644
--- a/chrome/browser/ui/webui/chrome_web_ui_data_source.cc
+++ b/chrome/browser/ui/webui/chrome_web_ui_data_source.cc
@@ -43,6 +43,11 @@ class ChromeWebUIDataSource::InternalDataSource
ChromeWebUIDataSource* parent_;
};
+content::WebUIDataSource* ChromeWebUIDataSource::Create(
+ const std::string& source_name) {
+ return new ChromeWebUIDataSource(source_name);
+}
+
ChromeWebUIDataSource::ChromeWebUIDataSource(const std::string& source_name)
: URLDataSourceImpl(
source_name,
@@ -75,8 +80,29 @@ void ChromeWebUIDataSource::AddLocalizedStrings(
localized_strings_.MergeDictionary(&localized_strings);
}
+void ChromeWebUIDataSource::AddBoolean(const std::string& name, bool value) {
+ localized_strings_.SetBoolean(name, value);
+}
+
+void ChromeWebUIDataSource::SetJsonPath(const std::string& path) {
+ json_path_ = path;
+}
+
+void ChromeWebUIDataSource::SetUseJsonJSFormatV2() {
+ json_js_format_v2_ = true;
+}
+
+void ChromeWebUIDataSource::AddResourcePath(const std::string &path,
+ int resource_id) {
+ path_to_idr_map_[path] = resource_id;
+}
+
+void ChromeWebUIDataSource::SetDefaultResource(int resource_id) {
+ default_resource_ = resource_id;
+}
+
void ChromeWebUIDataSource::SetRequestFilter(
- const HandleRequestCallback& callback) {
+ const content::WebUIDataSource::HandleRequestCallback& callback) {
filter_callback_ = callback;
}
diff --git a/chrome/browser/ui/webui/chrome_web_ui_data_source.h b/chrome/browser/ui/webui/chrome_web_ui_data_source.h
index c98c992..f30db89 100644
--- a/chrome/browser/ui/webui/chrome_web_ui_data_source.h
+++ b/chrome/browser/ui/webui/chrome_web_ui_data_source.h
@@ -14,63 +14,32 @@
#include "base/values.h"
#include "chrome/browser/ui/webui/chrome_url_data_manager.h"
#include "content/public/browser/url_data_source.h"
+#include "content/public/browser/web_ui_data_source.h"
// A data source that can help with implementing the common operations
// needed by the chrome WEBUI settings/history/downloads pages.
// DO NOT DERIVE FROM THIS CLASS! http://crbug.com/169170
-class ChromeWebUIDataSource : public URLDataSourceImpl {
+class ChromeWebUIDataSource : public URLDataSourceImpl,
+ public content::WebUIDataSource {
public:
- // Used as a parameter to GotDataCallback. The caller has to run this callback
- // with the result for the path that they filtered, passing ownership of the
- // memory.
- typedef base::Callback<void(base::RefCountedMemory*)> GotDataCallback;
-
- // Used by SetRequestFilter. The string parameter is the path of the request.
- // If the callee doesn't want to handle the data, false is returned. Otherwise
- // true is returned and the GotDataCallback parameter is called either then or
- // asynchronously with the response.
- typedef base::Callback<bool(const std::string&, const GotDataCallback&)>
- HandleRequestCallback;
-
- explicit ChromeWebUIDataSource(const std::string& source_name);
-
- // Adds a string keyed to its name to our dictionary.
- void AddString(const std::string& name, const string16& value);
-
- // Adds a string keyed to its name to our dictionary.
- void AddString(const std::string& name, const std::string& value);
-
- // Adds a localized string with resource |ids| keyed to its name to our
- // dictionary.
- void AddLocalizedString(const std::string& name, int ids);
-
- // Add strings from |localized_strings| to our dictionary.
- void AddLocalizedStrings(const DictionaryValue& localized_strings);
-
- // Allows a caller to add a filter for URL requests.
- void SetRequestFilter(const HandleRequestCallback& callback);
-
- // Accessor for |localized_strings_|.
- DictionaryValue* localized_strings() {
- return &localized_strings_;
- }
-
- // Sets the path which will return the JSON strings.
- void set_json_path(const std::string& path) { json_path_ = path; }
-
- // Sets the data source to use a slightly different format for json data. Some
- // day this should become the default.
- void set_use_json_js_format_v2() { json_js_format_v2_ = true; }
-
- // Adds a mapping between a path name and a resource to return.
- void add_resource_path(const std::string &path, int resource_id) {
- path_to_idr_map_[path] = resource_id;
- }
-
- // Sets the resource to returned when no other paths match.
- void set_default_resource(int resource_id) {
- default_resource_ = resource_id;
- }
+ static content::WebUIDataSource* Create(const std::string& source_name);
+
+ // content::WebUIDataSource implementation:
+ virtual void AddString(const std::string& name,
+ const string16& value) OVERRIDE;
+ virtual void AddString(const std::string& name,
+ const std::string& value) OVERRIDE;
+ virtual void AddLocalizedString(const std::string& name, int ids) OVERRIDE;
+ virtual void AddLocalizedStrings(
+ const DictionaryValue& localized_strings) OVERRIDE;
+ virtual void AddBoolean(const std::string& name, bool value) OVERRIDE;
+ virtual void SetJsonPath(const std::string& path) OVERRIDE;
+ virtual void SetUseJsonJSFormatV2() OVERRIDE;
+ virtual void AddResourcePath(const std::string &path,
+ int resource_id) OVERRIDE;
+ virtual void SetDefaultResource(int resource_id) OVERRIDE;
+ virtual void SetRequestFilter(
+ const content::WebUIDataSource::HandleRequestCallback& callback) OVERRIDE;
protected:
virtual ~ChromeWebUIDataSource();
@@ -88,6 +57,8 @@ class ChromeWebUIDataSource : public URLDataSourceImpl {
friend class InternalDataSource;
friend class MockChromeWebUIDataSource;
+ explicit ChromeWebUIDataSource(const std::string& source_name);
+
// Methods that match content::URLDataSource which are called by
// InternalDataSource.
std::string GetSource();
@@ -106,7 +77,7 @@ class ChromeWebUIDataSource : public URLDataSourceImpl {
std::string json_path_;
std::map<std::string, int> path_to_idr_map_;
DictionaryValue localized_strings_;
- HandleRequestCallback filter_callback_;
+ content::WebUIDataSource::HandleRequestCallback filter_callback_;
DISALLOW_COPY_AND_ASSIGN(ChromeWebUIDataSource);
};
diff --git a/chrome/browser/ui/webui/chrome_web_ui_data_source_unittest.cc b/chrome/browser/ui/webui/chrome_web_ui_data_source_unittest.cc
index 1963d60..d6330c6 100644
--- a/chrome/browser/ui/webui/chrome_web_ui_data_source_unittest.cc
+++ b/chrome/browser/ui/webui/chrome_web_ui_data_source_unittest.cc
@@ -57,7 +57,7 @@ class ChromeWebUIDataSourceTest : public testing::Test {
};
TEST_F(ChromeWebUIDataSourceTest, EmptyStrings) {
- source()->set_json_path("strings.js");
+ source()->SetJsonPath("strings.js");
source()->StartDataRequest("strings.js");
std::string result(reinterpret_cast<const char*>(
source()->result_data_->front()), source()->result_data_->size());
@@ -66,7 +66,7 @@ TEST_F(ChromeWebUIDataSourceTest, EmptyStrings) {
}
TEST_F(ChromeWebUIDataSourceTest, SomeStrings) {
- source()->set_json_path("strings.js");
+ source()->SetJsonPath("strings.js");
source()->AddString("planet", ASCIIToUTF16("pluto"));
source()->AddLocalizedString("button", IDS_OK);
source()->StartDataRequest("strings.js");
@@ -77,7 +77,7 @@ TEST_F(ChromeWebUIDataSourceTest, SomeStrings) {
}
TEST_F(ChromeWebUIDataSourceTest, DefaultResource) {
- source()->set_default_resource(IDR_WEBUI_I18N_PROCESS_JS);
+ source()->SetDefaultResource(IDR_WEBUI_I18N_PROCESS_JS);
source()->StartDataRequest("foobar" );
std::string result(
reinterpret_cast<const char*>(source()->result_data_->front()),
@@ -91,8 +91,8 @@ TEST_F(ChromeWebUIDataSourceTest, DefaultResource) {
}
TEST_F(ChromeWebUIDataSourceTest, NamedResource) {
- source()->set_default_resource(IDR_WEBUI_I18N_PROCESS_JS);
- source()->add_resource_path("foobar", IDR_WEBUI_I18N_TEMPLATE_JS);
+ source()->SetDefaultResource(IDR_WEBUI_I18N_PROCESS_JS);
+ source()->AddResourcePath("foobar", IDR_WEBUI_I18N_TEMPLATE_JS);
source()->StartDataRequest("foobar");
std::string result(
reinterpret_cast<const char*>(source()->result_data_->front()),
diff --git a/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc b/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc
index cfd7299..b62117b 100644
--- a/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc
@@ -48,9 +48,9 @@ const char kOperatorNameProperty[] = "operatorName";
const char kStatusProperty[] = "status";
const char kTechnologyProperty[] = "technology";
-ChromeWebUIDataSource* CreateChooseMobileNetworkUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIChooseMobileNetworkHost);
+content::WebUIDataSource* CreateChooseMobileNetworkUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIChooseMobileNetworkHost);
source->AddLocalizedString("chooseNetworkTitle",
IDS_NETWORK_CHOOSE_MOBILE_NETWORK);
@@ -63,10 +63,10 @@ ChromeWebUIDataSource* CreateChooseMobileNetworkUIHTMLSource() {
source->AddLocalizedString("connect", IDS_OPTIONS_SETTINGS_CONNECT);
source->AddLocalizedString("cancel", IDS_CANCEL);
- source->set_json_path("strings.js");
- source->add_resource_path("choose_mobile_network.js",
- IDR_CHOOSE_MOBILE_NETWORK_JS);
- source->set_default_resource(IDR_CHOOSE_MOBILE_NETWORK_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("choose_mobile_network.js",
+ IDR_CHOOSE_MOBILE_NETWORK_JS);
+ source->SetDefaultResource(IDR_CHOOSE_MOBILE_NETWORK_HTML);
return source;
}
@@ -215,7 +215,7 @@ ChooseMobileNetworkUI::ChooseMobileNetworkUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(handler);
// Set up the "chrome://choose-mobile-network" source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
profile, CreateChooseMobileNetworkUIHTMLSource());
}
diff --git a/chrome/browser/ui/webui/chromeos/cryptohome_ui.cc b/chrome/browser/ui/webui/chromeos/cryptohome_ui.cc
index bbe31a0..7c14c16 100644
--- a/chrome/browser/ui/webui/chromeos/cryptohome_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/cryptohome_ui.cc
@@ -16,11 +16,11 @@ namespace chromeos {
namespace {
// Returns HTML data source for chrome://cryptohome.
-ChromeWebUIDataSource* CreateCryptohomeUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUICryptohomeHost);
- source->add_resource_path("cryptohome.js", IDR_CRYPTOHOME_JS);
- source->set_default_resource(IDR_CRYPTOHOME_HTML);
+content::WebUIDataSource* CreateCryptohomeUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUICryptohomeHost);
+ source->AddResourcePath("cryptohome.js", IDR_CRYPTOHOME_JS);
+ source->SetDefaultResource(IDR_CRYPTOHOME_HTML);
return source;
}
@@ -30,8 +30,8 @@ CryptohomeUI::CryptohomeUI(content::WebUI* web_ui) : WebUIController(web_ui) {
web_ui->AddMessageHandler(new CryptohomeWebUIHandler());
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateCryptohomeUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateCryptohomeUIHTMLSource());
}
} // namespace chromeos
diff --git a/chrome/browser/ui/webui/chromeos/diagnostics/diagnostics_ui.cc b/chrome/browser/ui/webui/chromeos/diagnostics/diagnostics_ui.cc
index de32e12..f541e42 100644
--- a/chrome/browser/ui/webui/chromeos/diagnostics/diagnostics_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/diagnostics/diagnostics_ui.cc
@@ -135,14 +135,14 @@ DiagnosticsUI::DiagnosticsUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
web_ui->AddMessageHandler(new DiagnosticsWebUIHandler());
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIDiagnosticsHost);
- source->set_json_path("strings.js");
- source->add_resource_path("main.css", IDR_DIAGNOSTICS_MAIN_CSS);
- source->add_resource_path("main.js", IDR_DIAGNOSTICS_MAIN_JS);
- source->add_resource_path("fail.png", IDR_DIAGNOSTICS_IMAGES_FAIL);
- source->add_resource_path("tick.png", IDR_DIAGNOSTICS_IMAGES_TICK);
- source->add_resource_path("warning.png", IDR_DIAGNOSTICS_IMAGES_WARNING);
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIDiagnosticsHost);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("main.css", IDR_DIAGNOSTICS_MAIN_CSS);
+ source->AddResourcePath("main.js", IDR_DIAGNOSTICS_MAIN_JS);
+ source->AddResourcePath("fail.png", IDR_DIAGNOSTICS_IMAGES_FAIL);
+ source->AddResourcePath("tick.png", IDR_DIAGNOSTICS_IMAGES_TICK);
+ source->AddResourcePath("warning.png", IDR_DIAGNOSTICS_IMAGES_WARNING);
source->AddLocalizedString("diagnostics", IDS_DIAGNOSTICS_DIAGNOSTICS_TITLE);
source->AddLocalizedString("refresh", IDS_DIAGNOSTICS_REFRESH);
source->AddLocalizedString("choose-adapter", IDS_DIAGNOSTICS_CHOOSE_ADAPTER);
@@ -175,10 +175,10 @@ DiagnosticsUI::DiagnosticsUI(content::WebUI* web_ui)
IDS_DIAGNOSTICS_FIX_NO_IP_3G);
source->AddLocalizedString("fix-gateway-connection",
IDS_DIAGNOSTICS_FIX_GATEWAY_CONNECTION);
- source->set_default_resource(IDR_DIAGNOSTICS_MAIN_HTML);
+ source->SetDefaultResource(IDR_DIAGNOSTICS_MAIN_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, source);
}
} // namespace chromeos
diff --git a/chrome/browser/ui/webui/chromeos/drive_internals_ui.cc b/chrome/browser/ui/webui/chromeos/drive_internals_ui.cc
index 508dcee..7fd2dce 100644
--- a/chrome/browser/ui/webui/chromeos/drive_internals_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/drive_internals_ui.cc
@@ -683,14 +683,14 @@ DriveInternalsUI::DriveInternalsUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
web_ui->AddMessageHandler(new DriveInternalsWebUIHandler());
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIDriveInternalsHost);
- source->add_resource_path("drive_internals.css", IDR_DRIVE_INTERNALS_CSS);
- source->add_resource_path("drive_internals.js", IDR_DRIVE_INTERNALS_JS);
- source->set_default_resource(IDR_DRIVE_INTERNALS_HTML);
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIDriveInternalsHost);
+ source->AddResourcePath("drive_internals.css", IDR_DRIVE_INTERNALS_CSS);
+ source->AddResourcePath("drive_internals.js", IDR_DRIVE_INTERNALS_JS);
+ source->SetDefaultResource(IDR_DRIVE_INTERNALS_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, source);
}
} // namespace chromeos
diff --git a/chrome/browser/ui/webui/chromeos/imageburner/imageburner_ui.cc b/chrome/browser/ui/webui/chromeos/imageburner/imageburner_ui.cc
index d709337..dc3ce9d 100644
--- a/chrome/browser/ui/webui/chromeos/imageburner/imageburner_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/imageburner/imageburner_ui.cc
@@ -39,9 +39,9 @@ const char kPropertyDeviceType[] = "type";
const char kMoreInfoLink[] =
"http://www.chromium.org/chromium-os/chromiumos-design-docs/recovery-mode";
-ChromeWebUIDataSource* CreateImageburnerUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIImageBurnerHost);
+content::WebUIDataSource* CreateImageburnerUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIImageBurnerHost);
source->AddLocalizedString("headerTitle", IDS_IMAGEBURN_HEADER_TITLE);
source->AddLocalizedString("headerDescription",
@@ -80,9 +80,9 @@ ChromeWebUIDataSource* CreateImageburnerUIHTMLSource() {
source->AddLocalizedString("retryButton", IDS_IMAGEBURN_RETRY_BUTTON);
source->AddString("moreInfoLink", ASCIIToUTF16(kMoreInfoLink));
- source->set_json_path("strings.js");
- source->add_resource_path("image_burner.js", IDR_IMAGEBURNER_JS);
- source->set_default_resource(IDR_IMAGEBURNER_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("image_burner.js", IDR_IMAGEBURNER_JS);
+ source->SetDefaultResource(IDR_IMAGEBURNER_HTML);
return source;
}
@@ -329,6 +329,6 @@ ImageBurnUI::ImageBurnUI(content::WebUI* web_ui) : WebUIController(web_ui) {
web_ui->AddMessageHandler(handler);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
profile, chromeos::imageburner::CreateImageburnerUIHTMLSource());
}
diff --git a/chrome/browser/ui/webui/chromeos/keyboard_overlay_ui.cc b/chrome/browser/ui/webui/chromeos/keyboard_overlay_ui.cc
index 3c56e08..8e6df36 100644
--- a/chrome/browser/ui/webui/chromeos/keyboard_overlay_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/keyboard_overlay_ui.cc
@@ -235,9 +235,9 @@ std::string ModifierKeyToLabel(ModifierKey modifier) {
return "";
}
-ChromeWebUIDataSource* CreateKeyboardOverlayUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIKeyboardOverlayHost);
+content::WebUIDataSource* CreateKeyboardOverlayUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIKeyboardOverlayHost);
for (size_t i = 0; i < arraysize(kI18nContentToMessage); ++i) {
source->AddLocalizedString(kI18nContentToMessage[i].i18n_content,
@@ -250,10 +250,10 @@ ChromeWebUIDataSource* CreateKeyboardOverlayUIHTMLSource() {
switches::kHasChromeOSDiamondKey) ? "true" : "false";
source->AddString("keyboardOverlayHasChromeOSDiamondKey",
has_diamond_key_value);
- source->set_json_path("strings.js");
- source->set_use_json_js_format_v2();
- source->add_resource_path("keyboard_overlay.js", IDR_KEYBOARD_OVERLAY_JS);
- source->set_default_resource(IDR_KEYBOARD_OVERLAY_HTML);
+ source->SetJsonPath("strings.js");
+ source->SetUseJsonJSFormatV2();
+ source->AddResourcePath("keyboard_overlay.js", IDR_KEYBOARD_OVERLAY_JS);
+ source->SetDefaultResource(IDR_KEYBOARD_OVERLAY_HTML);
return source;
}
@@ -366,6 +366,6 @@ KeyboardOverlayUI::KeyboardOverlayUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(handler);
// Set up the chrome://keyboardoverlay/ source.
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
profile, CreateKeyboardOverlayUIHTMLSource());
}
diff --git a/chrome/browser/ui/webui/chromeos/ui_account_tweaks.cc b/chrome/browser/ui/webui/chromeos/ui_account_tweaks.cc
index b59a788..015e3a3 100644
--- a/chrome/browser/ui/webui/chromeos/ui_account_tweaks.cc
+++ b/chrome/browser/ui/webui/chromeos/ui_account_tweaks.cc
@@ -9,6 +9,7 @@
#include "chrome/browser/chromeos/login/user_manager.h"
#include "chrome/browser/chromeos/settings/cros_settings.h"
#include "chrome/browser/chromeos/settings/cros_settings_names.h"
+#include "content/public/browser/web_ui_data_source.h"
namespace chromeos {
@@ -31,7 +32,7 @@ void AddAccountUITweaksLocalizedValues(
}
void AddAccountUITweaksLocalizedValues(
- ChromeWebUIDataSource* source) {
+ content::WebUIDataSource* source) {
DCHECK(source);
DictionaryValue dict;
AddAccountUITweaksLocalizedValues(&dict);
diff --git a/chrome/browser/ui/webui/chromeos/ui_account_tweaks.h b/chrome/browser/ui/webui/chromeos/ui_account_tweaks.h
index 84f3b16..25a7f73 100644
--- a/chrome/browser/ui/webui/chromeos/ui_account_tweaks.h
+++ b/chrome/browser/ui/webui/chromeos/ui_account_tweaks.h
@@ -7,7 +7,10 @@
#include "base/values.h"
#include "base/compiler_specific.h"
-#include "chrome/browser/ui/webui/chrome_web_ui_data_source.h"
+
+namespace content {
+class WebUIDataSource;
+}
namespace chromeos {
@@ -25,7 +28,7 @@ void AddAccountUITweaksLocalizedValues(
* @param source non-null ui data source which localized values dictionary will
* be filled.
*/
-void AddAccountUITweaksLocalizedValues(ChromeWebUIDataSource* source);
+void AddAccountUITweaksLocalizedValues(content::WebUIDataSource* source);
} // namespace chromeos
diff --git a/chrome/browser/ui/webui/conflicts_ui.cc b/chrome/browser/ui/webui/conflicts_ui.cc
index 345d125..43b68ae 100644
--- a/chrome/browser/ui/webui/conflicts_ui.cc
+++ b/chrome/browser/ui/webui/conflicts_ui.cc
@@ -41,9 +41,9 @@ using content::WebUIMessageHandler;
namespace {
-ChromeWebUIDataSource* CreateConflictsUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIConflictsHost);
+content::WebUIDataSource* CreateConflictsUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIConflictsHost);
source->AddLocalizedString("loadingMessage", IDS_CONFLICTS_LOADING_MESSAGE);
source->AddLocalizedString("modulesLongTitle",
@@ -63,9 +63,9 @@ ChromeWebUIDataSource* CreateConflictsUIHTMLSource() {
source->AddLocalizedString("headerLocation", IDS_CONFLICTS_HEADER_LOCATION);
source->AddLocalizedString("headerVersion", IDS_CONFLICTS_HEADER_VERSION);
source->AddLocalizedString("headerHelpTip", IDS_CONFLICTS_HEADER_HELP_TIP);
- source->set_json_path("strings.js");
- source->add_resource_path("conflicts.js", IDR_ABOUT_CONFLICTS_JS);
- source->set_default_resource(IDR_ABOUT_CONFLICTS_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("conflicts.js", IDR_ABOUT_CONFLICTS_JS);
+ source->SetDefaultResource(IDR_ABOUT_CONFLICTS_HTML);
return source;
}
@@ -167,8 +167,8 @@ ConflictsUI::ConflictsUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the about:conflicts source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateConflictsUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateConflictsUIHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/crashes_ui.cc b/chrome/browser/ui/webui/crashes_ui.cc
index 072571f..72c6ae6f 100644
--- a/chrome/browser/ui/webui/crashes_ui.cc
+++ b/chrome/browser/ui/webui/crashes_ui.cc
@@ -40,10 +40,10 @@ using content::WebUIMessageHandler;
namespace {
-ChromeWebUIDataSource* CreateCrashesUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUICrashesHost);
- source->set_use_json_js_format_v2();
+content::WebUIDataSource* CreateCrashesUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUICrashesHost);
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("crashesTitle", IDS_CRASHES_TITLE);
source->AddLocalizedString("crashCountFormat",
@@ -56,9 +56,9 @@ ChromeWebUIDataSource* CreateCrashesUIHTMLSource() {
IDS_CRASHES_NO_CRASHES_MESSAGE);
source->AddLocalizedString("disabledHeader", IDS_CRASHES_DISABLED_HEADER);
source->AddLocalizedString("disabledMessage", IDS_CRASHES_DISABLED_MESSAGE);
- source->set_json_path("strings.js");
- source->add_resource_path("crashes.js", IDR_CRASHES_JS);
- source->set_default_resource(IDR_CRASHES_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("crashes.js", IDR_CRASHES_JS);
+ source->SetDefaultResource(IDR_CRASHES_HTML);
return source;
}
@@ -165,7 +165,8 @@ CrashesUI::CrashesUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the chrome://crashes/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateCrashesUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateCrashesUIHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/downloads_ui.cc b/chrome/browser/ui/webui/downloads_ui.cc
index 832adf9..6fd041b 100644
--- a/chrome/browser/ui/webui/downloads_ui.cc
+++ b/chrome/browser/ui/webui/downloads_ui.cc
@@ -32,9 +32,9 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateDownloadsUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIDownloadsHost);
+content::WebUIDataSource* CreateDownloadsUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIDownloadsHost);
source->AddLocalizedString("title", IDS_DOWNLOAD_TITLE);
source->AddLocalizedString("searchbutton", IDS_DOWNLOAD_SEARCH_BUTTON);
@@ -71,11 +71,11 @@ ChromeWebUIDataSource* CreateDownloadsUIHTMLSource() {
source->AddLocalizedString("control_removefromlist",
IDS_DOWNLOAD_LINK_REMOVE);
- source->set_json_path("strings.js");
- source->add_resource_path("downloads.css", IDR_DOWNLOADS_CSS);
- source->add_resource_path("downloads.js", IDR_DOWNLOADS_JS);
- source->set_default_resource(IDR_DOWNLOADS_HTML);
- source->set_use_json_js_format_v2();
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("downloads.css", IDR_DOWNLOADS_CSS);
+ source->AddResourcePath("downloads.js", IDR_DOWNLOADS_JS);
+ source->SetDefaultResource(IDR_DOWNLOADS_HTML);
+ source->SetUseJsonJSFormatV2();
return source;
}
@@ -96,8 +96,8 @@ DownloadsUI::DownloadsUI(content::WebUI* web_ui) : WebUIController(web_ui) {
web_ui->AddMessageHandler(handler);
// Set up the chrome://downloads/ source.
- ChromeWebUIDataSource* source = CreateDownloadsUIHTMLSource();
- ChromeURLDataManager::AddDataSourceImpl(profile, source);
+ content::WebUIDataSource* source = CreateDownloadsUIHTMLSource();
+ ChromeURLDataManager::AddWebUIDataSource(profile, source);
#if defined(ENABLE_THEMES)
ThemeSource* theme = new ThemeSource(profile);
ChromeURLDataManager::AddDataSource(profile, theme);
diff --git a/chrome/browser/ui/webui/extensions/command_handler.cc b/chrome/browser/ui/webui/extensions/command_handler.cc
index 59edb78..a3aec9d 100644
--- a/chrome/browser/ui/webui/extensions/command_handler.cc
+++ b/chrome/browser/ui/webui/extensions/command_handler.cc
@@ -15,6 +15,7 @@
#include "chrome/common/extensions/extension_manifest_constants.h"
#include "chrome/common/extensions/extension_set.h"
#include "content/public/browser/web_ui.h"
+#include "content/public/browser/web_ui_data_source.h"
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
@@ -26,19 +27,18 @@ CommandHandler::CommandHandler(Profile* profile) : profile_(profile) {
CommandHandler::~CommandHandler() {
}
-void CommandHandler::GetLocalizedValues(DictionaryValue* localized_strings) {
- DCHECK(localized_strings);
- localized_strings->SetString("extensionCommandsOverlay",
+void CommandHandler::GetLocalizedValues(content::WebUIDataSource* source) {
+ source->AddString("extensionCommandsOverlay",
l10n_util::GetStringUTF16(IDS_EXTENSION_COMMANDS_DIALOG_TITLE));
- localized_strings->SetString("extensionCommandsEmpty",
+ source->AddString("extensionCommandsEmpty",
l10n_util::GetStringUTF16(IDS_EXTENSION_COMMANDS_EMPTY));
- localized_strings->SetString("extensionCommandsInactive",
+ source->AddString("extensionCommandsInactive",
l10n_util::GetStringUTF16(IDS_EXTENSION_COMMANDS_INACTIVE));
- localized_strings->SetString("extensionCommandsStartTyping",
+ source->AddString("extensionCommandsStartTyping",
l10n_util::GetStringUTF16(IDS_EXTENSION_TYPE_SHORTCUT));
- localized_strings->SetString("extensionCommandsDelete",
+ source->AddString("extensionCommandsDelete",
l10n_util::GetStringUTF16(IDS_EXTENSION_DELETE_SHORTCUT));
- localized_strings->SetString("ok", l10n_util::GetStringUTF16(IDS_OK));
+ source->AddString("ok", l10n_util::GetStringUTF16(IDS_OK));
}
void CommandHandler::RegisterMessages() {
diff --git a/chrome/browser/ui/webui/extensions/command_handler.h b/chrome/browser/ui/webui/extensions/command_handler.h
index e9dafb0..0b43f1a 100644
--- a/chrome/browser/ui/webui/extensions/command_handler.h
+++ b/chrome/browser/ui/webui/extensions/command_handler.h
@@ -15,6 +15,10 @@ class DictionaryValue;
class ListValue;
}
+namespace content {
+class WebUIDataSource;
+}
+
namespace extensions {
class Command;
class CommandService;
@@ -32,9 +36,8 @@ class CommandHandler : public content::WebUIMessageHandler,
explicit CommandHandler(Profile* profile);
virtual ~CommandHandler();
- // Fetches the localized values for the page and deposits them into
- // |localized_strings|.
- void GetLocalizedValues(base::DictionaryValue* localized_strings);
+ // Fetches the localized values for the page and deposits them into |source|.
+ void GetLocalizedValues(content::WebUIDataSource* source);
// WebUIMessageHandler implementation.
virtual void RegisterMessages() OVERRIDE;
diff --git a/chrome/browser/ui/webui/extensions/extension_activity_ui.cc b/chrome/browser/ui/webui/extensions/extension_activity_ui.cc
index 27e4993..955d528 100644
--- a/chrome/browser/ui/webui/extensions/extension_activity_ui.cc
+++ b/chrome/browser/ui/webui/extensions/extension_activity_ui.cc
@@ -24,8 +24,8 @@ ExtensionActivityUI::ExtensionActivityUI(content::WebUI* web_ui)
web_ui->OverrideTitle(l10n_util::GetStringUTF16(
IDS_EXTENSION_ACTIVITY_TITLE));
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIExtensionActivityHost);
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIExtensionActivityHost);
// Localized strings.
source->AddLocalizedString("extensionActivity", IDS_EXTENSION_ACTIVITY_TITLE);
@@ -35,14 +35,14 @@ ExtensionActivityUI::ExtensionActivityUI(content::WebUI* web_ui)
IDS_EXTENSION_ACTIVITY_API_BLOCK);
source->AddLocalizedString("extensionActivityContentScript",
IDS_EXTENSION_ACTIVITY_CONTENT_SCRIPT);
- source->set_use_json_js_format_v2();
- source->set_json_path("strings.js");
+ source->SetUseJsonJSFormatV2();
+ source->SetJsonPath("strings.js");
// Resources.
- source->add_resource_path("extension_activity.js", IDR_EXTENSION_ACTIVITY_JS);
- source->set_default_resource(IDR_EXTENSION_ACTIVITY_HTML);
+ source->AddResourcePath("extension_activity.js", IDR_EXTENSION_ACTIVITY_JS);
+ source->SetDefaultResource(IDR_EXTENSION_ACTIVITY_HTML);
profile_ = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile_, source);
+ ChromeURLDataManager::AddWebUIDataSource(profile_, source);
ChromeURLDataManager::AddDataSource(
profile_, new SharedResourcesDataSource());
diff --git a/chrome/browser/ui/webui/extensions/extension_info_ui.cc b/chrome/browser/ui/webui/extensions/extension_info_ui.cc
index 35ce654..c58d453 100644
--- a/chrome/browser/ui/webui/extensions/extension_info_ui.cc
+++ b/chrome/browser/ui/webui/extensions/extension_info_ui.cc
@@ -24,22 +24,23 @@
ExtensionInfoUI::ExtensionInfoUI(content::WebUI* web_ui, const GURL& url)
: content::WebUIController(web_ui),
- source_(new ChromeWebUIDataSource(chrome::kChromeUIExtensionInfoHost)) {
+ source_(ChromeWebUIDataSource::Create(
+ chrome::kChromeUIExtensionInfoHost)) {
AddExtensionDataToSource(url.path().substr(1));
source_->AddLocalizedString("isRunning",
IDS_EXTENSION_SCRIPT_POPUP_IS_RUNNING);
source_->AddLocalizedString("lastUpdated",
IDS_EXTENSION_SCRIPT_POPUP_LAST_UPDATED);
- source_->set_use_json_js_format_v2();
- source_->set_json_path("strings.js");
+ source_->SetUseJsonJSFormatV2();
+ source_->SetJsonPath("strings.js");
- source_->add_resource_path("extension_info.css", IDR_EXTENSION_INFO_CSS);
- source_->add_resource_path("extension_info.js", IDR_EXTENSION_INFO_JS);
- source_->set_default_resource(IDR_EXTENSION_INFO_HTML);
+ source_->AddResourcePath("extension_info.css", IDR_EXTENSION_INFO_CSS);
+ source_->AddResourcePath("extension_info.js", IDR_EXTENSION_INFO_JS);
+ source_->SetDefaultResource(IDR_EXTENSION_INFO_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, source_);
+ ChromeURLDataManager::AddWebUIDataSource(profile, source_);
}
ExtensionInfoUI::~ExtensionInfoUI() {
@@ -60,7 +61,9 @@ void ExtensionInfoUI::AddExtensionDataToSource(
if (!extension)
return;
- extension->GetBasicInfo(true, source_->localized_strings());
+ DictionaryValue extension_data;
+ extension->GetBasicInfo(true, &extension_data);
+ source_->AddLocalizedStrings(extension_data);
// Set the icon URL.
GURL icon =
diff --git a/chrome/browser/ui/webui/extensions/extension_info_ui.h b/chrome/browser/ui/webui/extensions/extension_info_ui.h
index 46a928c..fd54e31 100644
--- a/chrome/browser/ui/webui/extensions/extension_info_ui.h
+++ b/chrome/browser/ui/webui/extensions/extension_info_ui.h
@@ -8,12 +8,15 @@
#include "content/public/browser/web_ui_controller.h"
#include "googleurl/src/gurl.h"
-class ChromeWebUIDataSource;
namespace base {
class ListValue;
}
+namespace content {
+class WebUIDataSource;
+}
+
// WebUI controller for the informative bubble shown on clicking a script badge.
class ExtensionInfoUI : public content::WebUIController {
public:
@@ -28,7 +31,7 @@ class ExtensionInfoUI : public content::WebUIController {
// Load details about the extension into source_. Called during construction.
void AddExtensionDataToSource(const std::string& extension_id);
- ChromeWebUIDataSource* source_;
+ content::WebUIDataSource* source_;
DISALLOW_COPY_AND_ASSIGN(ExtensionInfoUI);
};
diff --git a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
index 7d9d1db..dd7a496 100644
--- a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
+++ b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
@@ -60,6 +60,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_view.h"
#include "content/public/browser/web_ui.h"
+#include "content/public/browser/web_ui_data_source.h"
#include "extensions/common/constants.h"
#include "grit/browser_resources.h"
#include "grit/chromium_strings.h"
@@ -248,97 +249,97 @@ DictionaryValue* ExtensionSettingsHandler::CreateExtensionDetailValue(
}
void ExtensionSettingsHandler::GetLocalizedValues(
- DictionaryValue* localized_strings) {
- localized_strings->SetString("extensionSettings",
+ content::WebUIDataSource* source) {
+ source->AddString("extensionSettings",
l10n_util::GetStringUTF16(IDS_MANAGE_EXTENSIONS_SETTING_WINDOWS_TITLE));
- localized_strings->SetString("extensionSettingsDeveloperMode",
+ source->AddString("extensionSettingsDeveloperMode",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_DEVELOPER_MODE_LINK));
- localized_strings->SetString("extensionSettingsNoExtensions",
+ source->AddString("extensionSettingsNoExtensions",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_NONE_INSTALLED));
- localized_strings->SetString("extensionSettingsSuggestGallery",
+ source->AddString("extensionSettingsSuggestGallery",
l10n_util::GetStringFUTF16(IDS_EXTENSIONS_NONE_INSTALLED_SUGGEST_GALLERY,
ASCIIToUTF16(google_util::AppendGoogleLocaleParam(
GURL(extension_urls::GetExtensionGalleryURL())).spec())));
- localized_strings->SetString("extensionSettingsGetMoreExtensions",
+ source->AddString("extensionSettingsGetMoreExtensions",
l10n_util::GetStringUTF16(IDS_GET_MORE_EXTENSIONS));
- localized_strings->SetString("extensionSettingsGetMoreExtensionsUrl",
+ source->AddString("extensionSettingsGetMoreExtensionsUrl",
ASCIIToUTF16(google_util::AppendGoogleLocaleParam(
GURL(extension_urls::GetExtensionGalleryURL())).spec()));
- localized_strings->SetString("extensionSettingsExtensionId",
+ source->AddString("extensionSettingsExtensionId",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_ID));
- localized_strings->SetString("extensionSettingsExtensionPath",
+ source->AddString("extensionSettingsExtensionPath",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_PATH));
- localized_strings->SetString("extensionSettingsInspectViews",
+ source->AddString("extensionSettingsInspectViews",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_INSPECT_VIEWS));
- localized_strings->SetString("extensionSettingsInstallWarnings",
+ source->AddString("extensionSettingsInstallWarnings",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_INSTALL_WARNINGS));
- localized_strings->SetString("viewIncognito",
+ source->AddString("viewIncognito",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_VIEW_INCOGNITO));
- localized_strings->SetString("viewInactive",
+ source->AddString("viewInactive",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_VIEW_INACTIVE));
- localized_strings->SetString("extensionSettingsEnable",
+ source->AddString("extensionSettingsEnable",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_ENABLE));
- localized_strings->SetString("extensionSettingsEnabled",
+ source->AddString("extensionSettingsEnabled",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_ENABLED));
- localized_strings->SetString("extensionSettingsRemove",
+ source->AddString("extensionSettingsRemove",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_REMOVE));
- localized_strings->SetString("extensionSettingsEnableIncognito",
+ source->AddString("extensionSettingsEnableIncognito",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_ENABLE_INCOGNITO));
- localized_strings->SetString("extensionSettingsAllowFileAccess",
+ source->AddString("extensionSettingsAllowFileAccess",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_ALLOW_FILE_ACCESS));
- localized_strings->SetString("extensionSettingsIncognitoWarning",
+ source->AddString("extensionSettingsIncognitoWarning",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_INCOGNITO_WARNING));
- localized_strings->SetString("extensionSettingsReloadTerminated",
+ source->AddString("extensionSettingsReloadTerminated",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_RELOAD_TERMINATED));
- localized_strings->SetString("extensionSettingsLaunch",
+ source->AddString("extensionSettingsLaunch",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_LAUNCH));
- localized_strings->SetString("extensionSettingsRestart",
+ source->AddString("extensionSettingsRestart",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_RESTART));
- localized_strings->SetString("extensionSettingsReloadUnpacked",
+ source->AddString("extensionSettingsReloadUnpacked",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_RELOAD_UNPACKED));
- localized_strings->SetString("extensionSettingsOptions",
+ source->AddString("extensionSettingsOptions",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_OPTIONS_LINK));
- localized_strings->SetString("extensionSettingsActivity",
+ source->AddString("extensionSettingsActivity",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_ACTIVITY_LINK));
- localized_strings->SetString("extensionSettingsVisitWebsite",
+ source->AddString("extensionSettingsVisitWebsite",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSITE));
- localized_strings->SetString("extensionSettingsVisitWebStore",
+ source->AddString("extensionSettingsVisitWebStore",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSTORE));
- localized_strings->SetString("extensionSettingsPolicyControlled",
+ source->AddString("extensionSettingsPolicyControlled",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_POLICY_CONTROLLED));
- localized_strings->SetString("extensionSettingsManagedMode",
+ source->AddString("extensionSettingsManagedMode",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_LOCKED_MANAGED_MODE));
- localized_strings->SetString("extensionSettingsSideloadWipeout",
+ source->AddString("extensionSettingsSideloadWipeout",
l10n_util::GetStringUTF16(IDS_OPTIONS_SIDELOAD_WIPEOUT_BANNER));
- localized_strings->SetString("sideloadWipeoutUrl",
+ source->AddString("sideloadWipeoutUrl",
chrome::kSideloadWipeoutHelpURL);
- localized_strings->SetString("sideloadWipoutLearnMore",
+ source->AddString("sideloadWipoutLearnMore",
l10n_util::GetStringUTF16(IDS_LEARN_MORE));
- localized_strings->SetString("extensionSettingsShowButton",
+ source->AddString("extensionSettingsShowButton",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_SHOW_BUTTON));
- localized_strings->SetString("extensionSettingsLoadUnpackedButton",
+ source->AddString("extensionSettingsLoadUnpackedButton",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_LOAD_UNPACKED_BUTTON));
- localized_strings->SetString("extensionSettingsPackButton",
+ source->AddString("extensionSettingsPackButton",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_PACK_BUTTON));
- localized_strings->SetString("extensionSettingsCommandsLink",
+ source->AddString("extensionSettingsCommandsLink",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_COMMANDS_CONFIGURE));
- localized_strings->SetString("extensionSettingsUpdateButton",
+ source->AddString("extensionSettingsUpdateButton",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_UPDATE_BUTTON));
- localized_strings->SetString("extensionSettingsCrashMessage",
+ source->AddString("extensionSettingsCrashMessage",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_CRASHED_EXTENSION));
- localized_strings->SetString("extensionSettingsInDevelopment",
+ source->AddString("extensionSettingsInDevelopment",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_IN_DEVELOPMENT));
- localized_strings->SetString("extensionSettingsWarningsTitle",
+ source->AddString("extensionSettingsWarningsTitle",
l10n_util::GetStringUTF16(IDS_EXTENSION_WARNINGS_TITLE));
- localized_strings->SetString("extensionSettingsShowDetails",
+ source->AddString("extensionSettingsShowDetails",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_SHOW_DETAILS));
- localized_strings->SetString("extensionSettingsHideDetails",
+ source->AddString("extensionSettingsHideDetails",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_HIDE_DETAILS));
// TODO(estade): comb through the above strings to find ones no longer used in
// uber extensions.
- localized_strings->SetString("extensionUninstall",
+ source->AddString("extensionUninstall",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_UNINSTALL));
}
diff --git a/chrome/browser/ui/webui/extensions/extension_settings_handler.h b/chrome/browser/ui/webui/extensions/extension_settings_handler.h
index 3f53cc6..56a5bb8 100644
--- a/chrome/browser/ui/webui/extensions/extension_settings_handler.h
+++ b/chrome/browser/ui/webui/extensions/extension_settings_handler.h
@@ -35,6 +35,10 @@ class DictionaryValue;
class ListValue;
}
+namespace content {
+class WebUIDataSource;
+}
+
namespace extensions {
class Extension;
class ExtensionHost;
@@ -79,7 +83,7 @@ class ExtensionSettingsHandler
const std::vector<ExtensionPage>& pages,
const extensions::ExtensionWarningService* warning_service);
- void GetLocalizedValues(base::DictionaryValue* localized_strings);
+ void GetLocalizedValues(content::WebUIDataSource* source);
// content::WebContentsObserver implementation, which reloads all unpacked
// extensions whenever chrome://extensions is reloaded.
diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browser/ui/webui/extensions/extensions_ui.cc
index 89a4b24..52d6e6a0 100644
--- a/chrome/browser/ui/webui/extensions/extensions_ui.cc
+++ b/chrome/browser/ui/webui/extensions/extensions_ui.cc
@@ -19,17 +19,17 @@
namespace {
-ChromeWebUIDataSource* CreateExtensionsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIExtensionsFrameHost);
+content::WebUIDataSource* CreateExtensionsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIExtensionsFrameHost);
- source->set_use_json_js_format_v2();
- source->set_json_path("strings.js");
- source->add_resource_path("extensions.js", IDR_EXTENSIONS_JS);
- source->add_resource_path("extension_command_list.js",
- IDR_EXTENSION_COMMAND_LIST_JS);
- source->add_resource_path("extension_list.js", IDR_EXTENSION_LIST_JS);
- source->set_default_resource(IDR_EXTENSIONS_HTML);
+ source->SetUseJsonJSFormatV2();
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("extensions.js", IDR_EXTENSIONS_JS);
+ source->AddResourcePath("extension_command_list.js",
+ IDR_EXTENSION_COMMAND_LIST_JS);
+ source->AddResourcePath("extension_list.js", IDR_EXTENSION_LIST_JS);
+ source->SetDefaultResource(IDR_EXTENSIONS_HTML);
return source;
}
@@ -37,29 +37,29 @@ ChromeWebUIDataSource* CreateExtensionsHTMLSource() {
ExtensionsUI::ExtensionsUI(content::WebUI* web_ui) : WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeWebUIDataSource* source = CreateExtensionsHTMLSource();
- ChromeURLDataManager::AddDataSourceImpl(profile, source);
+ content::WebUIDataSource* source = CreateExtensionsHTMLSource();
ChromeURLDataManager::AddDataSource(profile, new SharedResourcesDataSource());
ExtensionSettingsHandler* handler = new ExtensionSettingsHandler();
- handler->GetLocalizedValues(source->localized_strings());
+ handler->GetLocalizedValues(source);
web_ui->AddMessageHandler(handler);
PackExtensionHandler* pack_handler = new PackExtensionHandler();
- pack_handler->GetLocalizedValues(source->localized_strings());
+ pack_handler->GetLocalizedValues(source);
web_ui->AddMessageHandler(pack_handler);
extensions::CommandHandler* commands_handler =
new extensions::CommandHandler(profile);
- commands_handler->GetLocalizedValues(source->localized_strings());
+ commands_handler->GetLocalizedValues(source);
web_ui->AddMessageHandler(commands_handler);
InstallExtensionHandler* install_extension_handler =
new InstallExtensionHandler();
- install_extension_handler->GetLocalizedValues(source->localized_strings());
+ install_extension_handler->GetLocalizedValues(source);
web_ui->AddMessageHandler(install_extension_handler);
web_ui->AddMessageHandler(new GenericHandler());
+ ChromeURLDataManager::AddWebUIDataSource(profile, source);
}
ExtensionsUI::~ExtensionsUI() {
diff --git a/chrome/browser/ui/webui/extensions/install_extension_handler.cc b/chrome/browser/ui/webui/extensions/install_extension_handler.cc
index a60e138..14c5c8c 100644
--- a/chrome/browser/ui/webui/extensions/install_extension_handler.cc
+++ b/chrome/browser/ui/webui/extensions/install_extension_handler.cc
@@ -16,6 +16,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_view.h"
#include "content/public/browser/web_ui.h"
+#include "content/public/browser/web_ui_data_source.h"
#include "grit/generated_resources.h"
#include "net/base/net_util.h"
#include "ui/base/l10n/l10n_util.h"
@@ -28,12 +29,11 @@ InstallExtensionHandler::~InstallExtensionHandler() {
}
void InstallExtensionHandler::GetLocalizedValues(
- DictionaryValue* localized_strings) {
- DCHECK(localized_strings);
- localized_strings->SetString(
+ content::WebUIDataSource* source) {
+ source->AddString(
"extensionSettingsInstallDropTarget",
l10n_util::GetStringUTF16(IDS_EXTENSIONS_INSTALL_DROP_TARGET));
- localized_strings->SetBoolean(
+ source->AddBoolean(
"offStoreInstallEnabled",
extensions::FeatureSwitch::easy_off_store_install()->IsEnabled());
}
diff --git a/chrome/browser/ui/webui/extensions/install_extension_handler.h b/chrome/browser/ui/webui/extensions/install_extension_handler.h
index c85ee72..5c32e7a 100644
--- a/chrome/browser/ui/webui/extensions/install_extension_handler.h
+++ b/chrome/browser/ui/webui/extensions/install_extension_handler.h
@@ -9,13 +9,17 @@
#include "base/values.h"
#include "content/public/browser/web_ui_message_handler.h"
+namespace content {
+class WebUIDataSource;
+}
+
// Handles installing an extension when its file is dragged onto the page.
class InstallExtensionHandler : public content::WebUIMessageHandler {
public:
InstallExtensionHandler();
virtual ~InstallExtensionHandler();
- void GetLocalizedValues(DictionaryValue* localized_strings);
+ void GetLocalizedValues(content::WebUIDataSource* source);
// WebUIMessageHandler implementation.
virtual void RegisterMessages() OVERRIDE;
diff --git a/chrome/browser/ui/webui/extensions/pack_extension_handler.cc b/chrome/browser/ui/webui/extensions/pack_extension_handler.cc
index 427dadd..13d81c7 100644
--- a/chrome/browser/ui/webui/extensions/pack_extension_handler.cc
+++ b/chrome/browser/ui/webui/extensions/pack_extension_handler.cc
@@ -11,6 +11,7 @@
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_view.h"
#include "content/public/browser/web_ui.h"
+#include "content/public/browser/web_ui_data_source.h"
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
@@ -28,29 +29,27 @@ PackExtensionHandler::~PackExtensionHandler() {
}
void PackExtensionHandler::GetLocalizedValues(
- DictionaryValue* localized_strings) {
- DCHECK(localized_strings);
-
- localized_strings->SetString("packExtensionOverlay",
+ content::WebUIDataSource* source) {
+ source->AddString("packExtensionOverlay",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_TITLE));
- localized_strings->SetString("packExtensionHeading",
+ source->AddString("packExtensionHeading",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_HEADING));
- localized_strings->SetString("packExtensionCommit",
+ source->AddString("packExtensionCommit",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_BUTTON));
- localized_strings->SetString("ok", l10n_util::GetStringUTF16(IDS_OK));
- localized_strings->SetString("cancel", l10n_util::GetStringUTF16(IDS_CANCEL));
- localized_strings->SetString("packExtensionRootDir",
+ source->AddString("ok", l10n_util::GetStringUTF16(IDS_OK));
+ source->AddString("cancel", l10n_util::GetStringUTF16(IDS_CANCEL));
+ source->AddString("packExtensionRootDir",
l10n_util::GetStringUTF16(
IDS_EXTENSION_PACK_DIALOG_ROOT_DIRECTORY_LABEL));
- localized_strings->SetString("packExtensionPrivateKey",
+ source->AddString("packExtensionPrivateKey",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_PRIVATE_KEY_LABEL));
- localized_strings->SetString("packExtensionBrowseButton",
+ source->AddString("packExtensionBrowseButton",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_BROWSE));
- localized_strings->SetString("packExtensionProceedAnyway",
+ source->AddString("packExtensionProceedAnyway",
l10n_util::GetStringUTF16(IDS_EXTENSION_PROCEED_ANYWAY));
- localized_strings->SetString("packExtensionWarningTitle",
+ source->AddString("packExtensionWarningTitle",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_WARNING_TITLE));
- localized_strings->SetString("packExtensionErrorTitle",
+ source->AddString("packExtensionErrorTitle",
l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_ERROR_TITLE));
}
diff --git a/chrome/browser/ui/webui/extensions/pack_extension_handler.h b/chrome/browser/ui/webui/extensions/pack_extension_handler.h
index 43e8ba2..986ec21 100644
--- a/chrome/browser/ui/webui/extensions/pack_extension_handler.h
+++ b/chrome/browser/ui/webui/extensions/pack_extension_handler.h
@@ -13,6 +13,10 @@
#include "content/public/browser/web_ui_message_handler.h"
#include "ui/shell_dialogs/select_file_dialog.h"
+namespace content {
+class WebUIDataSource;
+}
+
// Clear browser data handler page UI handler.
class PackExtensionHandler : public content::WebUIMessageHandler,
public ui::SelectFileDialog::Listener,
@@ -21,7 +25,7 @@ class PackExtensionHandler : public content::WebUIMessageHandler,
PackExtensionHandler();
virtual ~PackExtensionHandler();
- void GetLocalizedValues(DictionaryValue* localized_strings);
+ void GetLocalizedValues(content::WebUIDataSource* source);
// WebUIMessageHandler implementation.
virtual void RegisterMessages() OVERRIDE;
diff --git a/chrome/browser/ui/webui/feedback_ui.cc b/chrome/browser/ui/webui/feedback_ui.cc
index dde7440..bd87eca 100644
--- a/chrome/browser/ui/webui/feedback_ui.cc
+++ b/chrome/browser/ui/webui/feedback_ui.cc
@@ -293,10 +293,10 @@ class FeedbackHandler : public WebUIMessageHandler,
DISALLOW_COPY_AND_ASSIGN(FeedbackHandler);
};
-ChromeWebUIDataSource* CreateFeedbackUIHTMLSource(bool successful_init) {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIFeedbackHost);
- source->set_use_json_js_format_v2();
+content::WebUIDataSource* CreateFeedbackUIHTMLSource(bool successful_init) {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIFeedbackHost);
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("title", IDS_FEEDBACK_TITLE);
source->AddLocalizedString("page-title", IDS_FEEDBACK_REPORT_PAGE_TITLE);
@@ -339,9 +339,9 @@ ChromeWebUIDataSource* CreateFeedbackUIHTMLSource(bool successful_init) {
IDS_FEEDBACK_NO_SAVED_SCREENSHOTS_HELP);
source->AddLocalizedString("privacy-note", IDS_FEEDBACK_PRIVACY_NOTE);
- source->set_json_path("strings.js");
- source->add_resource_path("feedback.js", IDR_FEEDBACK_JS);
- source->set_default_resource(
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("feedback.js", IDR_FEEDBACK_JS);
+ source->SetDefaultResource(
successful_init ? IDR_FEEDBACK_HTML : IDR_FEEDBACK_HTML_INVALID);
return source;
@@ -720,12 +720,12 @@ FeedbackUI::FeedbackUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(handler);
// The handler's init will determine whether we show the error html page.
- ChromeWebUIDataSource* html_source =
+ content::WebUIDataSource* html_source =
CreateFeedbackUIHTMLSource(handler->Init());
// Set up the chrome://feedback/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
}
#if defined(OS_CHROMEOS)
diff --git a/chrome/browser/ui/webui/flags_ui.cc b/chrome/browser/ui/webui/flags_ui.cc
index ad37ca1..31059fc 100644
--- a/chrome/browser/ui/webui/flags_ui.cc
+++ b/chrome/browser/ui/webui/flags_ui.cc
@@ -41,11 +41,11 @@ using content::WebUIMessageHandler;
namespace {
-ChromeWebUIDataSource* CreateFlagsUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIFlagsHost);
+content::WebUIDataSource* CreateFlagsUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIFlagsHost);
- source->set_use_json_js_format_v2();
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("flagsLongTitle", IDS_FLAGS_LONG_TITLE);
source->AddLocalizedString("flagsTableTitle", IDS_FLAGS_TABLE_TITLE);
source->AddLocalizedString("flagsNoExperimentsAvailable",
@@ -65,8 +65,8 @@ ChromeWebUIDataSource* CreateFlagsUIHTMLSource() {
source->AddString("ownerUserId", UTF8ToUTF16(owner));
#endif
- source->set_json_path("strings.js");
- source->add_resource_path("flags.js", IDR_FLAGS_JS);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("flags.js", IDR_FLAGS_JS);
int idr = IDR_FLAGS_HTML;
#if defined (OS_CHROMEOS)
@@ -74,7 +74,7 @@ ChromeWebUIDataSource* CreateFlagsUIHTMLSource() {
base::chromeos::IsRunningOnChromeOS())
idr = IDR_FLAGS_HTML_WARNING;
#endif
- source->set_default_resource(idr);
+ source->SetDefaultResource(idr);
return source;
}
@@ -163,7 +163,7 @@ FlagsUI::FlagsUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the about:flags source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateFlagsUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateFlagsUIHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/flash_ui.cc b/chrome/browser/ui/webui/flash_ui.cc
index 23e4ae0..924cc49 100644
--- a/chrome/browser/ui/webui/flash_ui.cc
+++ b/chrome/browser/ui/webui/flash_ui.cc
@@ -58,16 +58,16 @@ namespace {
const char kFlashPlugin[] = "Flash plugin";
-ChromeWebUIDataSource* CreateFlashUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIFlashHost);
+content::WebUIDataSource* CreateFlashUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIFlashHost);
- source->set_use_json_js_format_v2();
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("loadingMessage", IDS_FLASH_LOADING_MESSAGE);
source->AddLocalizedString("flashLongTitle", IDS_FLASH_TITLE_MESSAGE);
- source->set_json_path("strings.js");
- source->add_resource_path("about_flash.js", IDR_ABOUT_FLASH_JS);
- source->set_default_resource(IDR_ABOUT_FLASH_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("about_flash.js", IDR_ABOUT_FLASH_JS);
+ source->SetDefaultResource(IDR_ABOUT_FLASH_HTML);
return source;
}
@@ -388,7 +388,7 @@ FlashUI::FlashUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the about:flash source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateFlashUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateFlashUIHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/gesture_config_ui.cc b/chrome/browser/ui/webui/gesture_config_ui.cc
index 8e4b773..3983e70 100644
--- a/chrome/browser/ui/webui/gesture_config_ui.cc
+++ b/chrome/browser/ui/webui/gesture_config_ui.cc
@@ -22,8 +22,8 @@
GestureConfigUI::GestureConfigUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
// Set up the chrome://gesture-config source.
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUIGestureConfigHost);
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIGestureConfigHost);
// Register callback handlers.
web_ui->RegisterMessageCallback(
@@ -40,12 +40,12 @@ GestureConfigUI::GestureConfigUI(content::WebUI* web_ui)
base::Unretained(this)));
// Add required resources.
- html_source->add_resource_path("gesture_config.css", IDR_GESTURE_CONFIG_CSS);
- html_source->add_resource_path("gesture_config.js", IDR_GESTURE_CONFIG_JS);
- html_source->set_default_resource(IDR_GESTURE_CONFIG_HTML);
+ html_source->AddResourcePath("gesture_config.css", IDR_GESTURE_CONFIG_CSS);
+ html_source->AddResourcePath("gesture_config.js", IDR_GESTURE_CONFIG_JS);
+ html_source->SetDefaultResource(IDR_GESTURE_CONFIG_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
}
GestureConfigUI::~GestureConfigUI() {
diff --git a/chrome/browser/ui/webui/gpu_internals_ui.cc b/chrome/browser/ui/webui/gpu_internals_ui.cc
index e2a3e82..1dcf57e 100644
--- a/chrome/browser/ui/webui/gpu_internals_ui.cc
+++ b/chrome/browser/ui/webui/gpu_internals_ui.cc
@@ -55,13 +55,13 @@ struct GpuFeatureInfo {
bool fallback_to_software;
};
-ChromeWebUIDataSource* CreateGpuHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIGpuInternalsHost);
+content::WebUIDataSource* CreateGpuHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIGpuInternalsHost);
- source->set_json_path("strings.js");
- source->add_resource_path("gpu_internals.js", IDR_GPU_INTERNALS_JS);
- source->set_default_resource(IDR_GPU_INTERNALS_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("gpu_internals.js", IDR_GPU_INTERNALS_JS);
+ source->SetDefaultResource(IDR_GPU_INTERNALS_HTML);
return source;
}
@@ -684,5 +684,5 @@ GpuInternalsUI::GpuInternalsUI(content::WebUI* web_ui)
// Set up the chrome://gpu-internals/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateGpuHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateGpuHTMLSource());
}
diff --git a/chrome/browser/ui/webui/help/help_handler.cc b/chrome/browser/ui/webui/help/help_handler.cc
index 42dee4a..c3da075 100644
--- a/chrome/browser/ui/webui/help/help_handler.cc
+++ b/chrome/browser/ui/webui/help/help_handler.cc
@@ -26,6 +26,7 @@
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/notification_service.h"
#include "content/public/browser/web_ui.h"
+#include "content/public/browser/web_ui_data_source.h"
#include "content/public/common/content_client.h"
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
@@ -115,10 +116,7 @@ HelpHandler::HelpHandler()
HelpHandler::~HelpHandler() {
}
-void HelpHandler::GetLocalizedValues(DictionaryValue* localized_strings) {
- DCHECK(localized_strings);
- DCHECK(localized_strings->empty());
-
+void HelpHandler::GetLocalizedValues(content::WebUIDataSource* source) {
struct L10nResources {
const char* name;
int ids;
@@ -164,11 +162,11 @@ void HelpHandler::GetLocalizedValues(DictionaryValue* localized_strings) {
};
for (size_t i = 0; i < ARRAYSIZE_UNSAFE(resources); ++i) {
- localized_strings->SetString(resources[i].name,
- l10n_util::GetStringUTF16(resources[i].ids));
+ source->AddString(resources[i].name,
+ l10n_util::GetStringUTF16(resources[i].ids));
}
- localized_strings->SetString(
+ source->AddString(
"browserVersion",
l10n_util::GetStringFUTF16(IDS_ABOUT_PRODUCT_VERSION,
BuildBrowserVersionString()));
@@ -177,31 +175,29 @@ void HelpHandler::GetLocalizedValues(DictionaryValue* localized_strings) {
IDS_ABOUT_VERSION_LICENSE,
ASCIIToUTF16(chrome::kChromiumProjectURL),
ASCIIToUTF16(chrome::kChromeUICreditsURL));
- localized_strings->SetString("productLicense", license);
+ source->AddString("productLicense", license);
#if defined(OS_CHROMEOS)
string16 os_license = l10n_util::GetStringFUTF16(
IDS_ABOUT_CROS_VERSION_LICENSE,
ASCIIToUTF16(chrome::kChromeUIOSCreditsURL));
- localized_strings->SetString("productOsLicense", os_license);
+ source->AddString("productOsLicense", os_license);
#endif
string16 tos = l10n_util::GetStringFUTF16(
IDS_ABOUT_TERMS_OF_SERVICE, UTF8ToUTF16(chrome::kChromeUITermsURL));
- localized_strings->SetString("productTOS", tos);
+ source->AddString("productTOS", tos);
- localized_strings->SetString("webkitVersion",
- webkit_glue::GetWebKitVersion());
+ source->AddString("webkitVersion", webkit_glue::GetWebKitVersion());
- localized_strings->SetString("jsEngine", "V8");
- localized_strings->SetString("jsEngineVersion", v8::V8::GetVersion());
+ source->AddString("jsEngine", "V8");
+ source->AddString("jsEngineVersion", v8::V8::GetVersion());
- localized_strings->SetString("userAgentInfo",
- content::GetUserAgent(GURL()));
+ source->AddString("userAgentInfo", content::GetUserAgent(GURL()));
CommandLine::StringType command_line =
CommandLine::ForCurrentProcess()->GetCommandLineString();
- localized_strings->SetString("commandLineInfo", command_line);
+ source->AddString("commandLineInfo", command_line);
}
void HelpHandler::RegisterMessages() {
diff --git a/chrome/browser/ui/webui/help/help_handler.h b/chrome/browser/ui/webui/help/help_handler.h
index b133fbc..397c023 100644
--- a/chrome/browser/ui/webui/help/help_handler.h
+++ b/chrome/browser/ui/webui/help/help_handler.h
@@ -19,6 +19,10 @@
#include "chrome/browser/chromeos/version_loader.h"
#endif // defined(OS_CHROMEOS)
+namespace content {
+class WebUIDataSource;
+}
+
// WebUI message handler for the help page.
class HelpHandler : public content::WebUIMessageHandler,
public content::NotificationObserver {
@@ -29,8 +33,8 @@ class HelpHandler : public content::WebUIMessageHandler,
// WebUIMessageHandler implementation.
virtual void RegisterMessages() OVERRIDE;
- // Fills |localized_strings| with string values for the UI.
- void GetLocalizedValues(base::DictionaryValue* localized_strings);
+ // Fills |source| with string values for the UI.
+ void GetLocalizedValues(content::WebUIDataSource* source);
// NotificationObserver implementation.
virtual void Observe(int type, const content::NotificationSource& source,
diff --git a/chrome/browser/ui/webui/help/help_ui.cc b/chrome/browser/ui/webui/help/help_ui.cc
index ed3d33a..f08a087 100644
--- a/chrome/browser/ui/webui/help/help_ui.cc
+++ b/chrome/browser/ui/webui/help/help_ui.cc
@@ -16,14 +16,14 @@
namespace {
-ChromeWebUIDataSource* CreateAboutPageHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIHelpFrameHost);
-
- source->set_json_path("strings.js");
- source->set_use_json_js_format_v2();
- source->add_resource_path("help.js", IDR_HELP_JS);
- source->set_default_resource(IDR_HELP_HTML);
+content::WebUIDataSource* CreateAboutPageHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIHelpFrameHost);
+
+ source->SetJsonPath("strings.js");
+ source->SetUseJsonJSFormatV2();
+ source->AddResourcePath("help.js", IDR_HELP_JS);
+ source->SetDefaultResource(IDR_HELP_HTML);
return source;
}
@@ -32,12 +32,12 @@ ChromeWebUIDataSource* CreateAboutPageHTMLSource() {
HelpUI::HelpUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeWebUIDataSource* source = CreateAboutPageHTMLSource();
- ChromeURLDataManager::AddDataSourceImpl(profile, source);
+ content::WebUIDataSource* source = CreateAboutPageHTMLSource();
ChromeURLDataManager::AddDataSource(profile, new SharedResourcesDataSource());
HelpHandler* handler = new HelpHandler();
- handler->GetLocalizedValues(source->localized_strings());
+ handler->GetLocalizedValues(source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, source);
web_ui->AddMessageHandler(handler);
}
diff --git a/chrome/browser/ui/webui/history_ui.cc b/chrome/browser/ui/webui/history_ui.cc
index 78b89cf..1aeb6be 100644
--- a/chrome/browser/ui/webui/history_ui.cc
+++ b/chrome/browser/ui/webui/history_ui.cc
@@ -105,9 +105,9 @@ void SetURLAndTitle(DictionaryValue* result,
result->SetString("title", title_to_set);
}
-ChromeWebUIDataSource* CreateHistoryUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIHistoryFrameHost);
+content::WebUIDataSource* CreateHistoryUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIHistoryFrameHost);
source->AddLocalizedString("loading", IDS_HISTORY_LOADING);
source->AddLocalizedString("title", IDS_HISTORY_TITLE);
source->AddLocalizedString("newest", IDS_HISTORY_NEWEST);
@@ -133,10 +133,10 @@ ChromeWebUIDataSource* CreateHistoryUIHTMLSource() {
IDS_HISTORY_ACTION_MENU_DESCRIPTION);
source->AddLocalizedString("removeFromHistory", IDS_HISTORY_REMOVE_PAGE);
source->AddLocalizedString("moreFromSite", IDS_HISTORY_MORE_FROM_SITE);
- source->set_json_path(kStringsJsFile);
- source->add_resource_path(kHistoryJsFile, IDR_HISTORY_JS);
- source->set_default_resource(IDR_HISTORY_HTML);
- source->set_use_json_js_format_v2();
+ source->SetJsonPath(kStringsJsFile);
+ source->AddResourcePath(kHistoryJsFile, IDR_HISTORY_JS);
+ source->SetDefaultResource(IDR_HISTORY_HTML);
+ source->SetUseJsonJSFormatV2();
return source;
}
@@ -506,8 +506,8 @@ HistoryUI::HistoryUI(content::WebUI* web_ui) : WebUIController(web_ui) {
web_ui->AddMessageHandler(new BrowsingHistoryHandler());
// Set up the chrome://history-frame/ source.
- ChromeURLDataManager::AddDataSourceImpl(Profile::FromWebUI(web_ui),
- CreateHistoryUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(Profile::FromWebUI(web_ui),
+ CreateHistoryUIHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/inspect_ui.cc b/chrome/browser/ui/webui/inspect_ui.cc
index 1b03a53..302b0f2 100644
--- a/chrome/browser/ui/webui/inspect_ui.cc
+++ b/chrome/browser/ui/webui/inspect_ui.cc
@@ -213,12 +213,12 @@ bool HandleRequestCallback(
return true;
}
-ChromeWebUIDataSource* CreateInspectUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIInspectHost);
- source->add_resource_path("inspect.css", IDR_INSPECT_CSS);
- source->add_resource_path("inspect.js", IDR_INSPECT_JS);
- source->set_default_resource(IDR_INSPECT_HTML);
+content::WebUIDataSource* CreateInspectUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIInspectHost);
+ source->AddResourcePath("inspect.css", IDR_INSPECT_CSS);
+ source->AddResourcePath("inspect.js", IDR_INSPECT_JS);
+ source->SetDefaultResource(IDR_INSPECT_HTML);
source->SetRequestFilter(base::Bind(&HandleRequestCallback));
return source;
}
@@ -362,7 +362,8 @@ InspectUI::InspectUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(new InspectMessageHandler());
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateInspectUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateInspectUIHTMLSource());
registrar_.Add(this,
content::NOTIFICATION_WEB_CONTENTS_CONNECTED,
diff --git a/chrome/browser/ui/webui/instant_ui.cc b/chrome/browser/ui/webui/instant_ui.cc
index 9e8ff07..ee1847a 100644
--- a/chrome/browser/ui/webui/instant_ui.cc
+++ b/chrome/browser/ui/webui/instant_ui.cc
@@ -16,14 +16,14 @@
namespace {
-ChromeWebUIDataSource* CreateInstantHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIInstantHost);
-
- source->set_json_path("strings.js");
- source->add_resource_path("instant.js", IDR_INSTANT_JS);
- source->add_resource_path("instant.css", IDR_INSTANT_CSS);
- source->set_default_resource(IDR_INSTANT_HTML);
+content::WebUIDataSource* CreateInstantHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIInstantHost);
+
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("instant.js", IDR_INSTANT_JS);
+ source->AddResourcePath("instant.css", IDR_INSTANT_CSS);
+ source->SetDefaultResource(IDR_INSTANT_HTML);
return source;
}
@@ -98,7 +98,7 @@ InstantUI::InstantUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the chrome://instant/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateInstantHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateInstantHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/local_omnibox_popup/local_omnibox_popup_ui.cc b/chrome/browser/ui/webui/local_omnibox_popup/local_omnibox_popup_ui.cc
index 9ee66d3..10d373d 100644
--- a/chrome/browser/ui/webui/local_omnibox_popup/local_omnibox_popup_ui.cc
+++ b/chrome/browser/ui/webui/local_omnibox_popup/local_omnibox_popup_ui.cc
@@ -15,32 +15,30 @@
LocalOmniboxPopupUI::LocalOmniboxPopupUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
- ChromeWebUIDataSource* source = new ChromeWebUIDataSource(
+ content::WebUIDataSource* source = ChromeWebUIDataSource::Create(
chrome::kChromeUILocalOmniboxPopupHost);
- source->add_resource_path("local_omnibox_popup.css",
- IDR_LOCAL_OMNIBOX_POPUP_CSS);
- source->add_resource_path("local_omnibox_popup.js",
- IDR_LOCAL_OMNIBOX_POPUP_JS);
- source->add_resource_path("local_omnibox_popup.js",
- IDR_LOCAL_OMNIBOX_POPUP_JS);
-
- source->add_resource_path("images/history_icon.png",
- IDR_LOCAL_OMNIBOX_POPUP_IMAGES_HISTORY_ICON_PNG);
- source->add_resource_path("images/page_icon.png",
- IDR_LOCAL_OMNIBOX_POPUP_IMAGES_PAGE_ICON_PNG);
- source->add_resource_path("images/search_icon.png",
- IDR_LOCAL_OMNIBOX_POPUP_IMAGES_SEARCH_ICON_PNG);
- source->add_resource_path("images/2x/history_icon.png",
- IDR_LOCAL_OMNIBOX_POPUP_IMAGES_2X_HISTORY_ICON_PNG);
- source->add_resource_path("images/2x/page_icon.png",
- IDR_LOCAL_OMNIBOX_POPUP_IMAGES_2X_PAGE_ICON_PNG);
- source->add_resource_path("images/2x/search_icon.png",
- IDR_LOCAL_OMNIBOX_POPUP_IMAGES_2X_SEARCH_ICON_PNG);
-
- source->set_default_resource(IDR_LOCAL_OMNIBOX_POPUP_HTML);
+ source->AddResourcePath("local_omnibox_popup.css",
+ IDR_LOCAL_OMNIBOX_POPUP_CSS);
+ source->AddResourcePath("local_omnibox_popup.js", IDR_LOCAL_OMNIBOX_POPUP_JS);
+ source->AddResourcePath("local_omnibox_popup.js", IDR_LOCAL_OMNIBOX_POPUP_JS);
+
+ source->AddResourcePath("images/history_icon.png",
+ IDR_LOCAL_OMNIBOX_POPUP_IMAGES_HISTORY_ICON_PNG);
+ source->AddResourcePath("images/page_icon.png",
+ IDR_LOCAL_OMNIBOX_POPUP_IMAGES_PAGE_ICON_PNG);
+ source->AddResourcePath("images/search_icon.png",
+ IDR_LOCAL_OMNIBOX_POPUP_IMAGES_SEARCH_ICON_PNG);
+ source->AddResourcePath("images/2x/history_icon.png",
+ IDR_LOCAL_OMNIBOX_POPUP_IMAGES_2X_HISTORY_ICON_PNG);
+ source->AddResourcePath("images/2x/page_icon.png",
+ IDR_LOCAL_OMNIBOX_POPUP_IMAGES_2X_PAGE_ICON_PNG);
+ source->AddResourcePath("images/2x/search_icon.png",
+ IDR_LOCAL_OMNIBOX_POPUP_IMAGES_2X_SEARCH_ICON_PNG);
+
+ source->SetDefaultResource(IDR_LOCAL_OMNIBOX_POPUP_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, source);
}
LocalOmniboxPopupUI::~LocalOmniboxPopupUI() {
diff --git a/chrome/browser/ui/webui/media/media_internals_ui.cc b/chrome/browser/ui/webui/media/media_internals_ui.cc
index 5922582..672fd99 100644
--- a/chrome/browser/ui/webui/media/media_internals_ui.cc
+++ b/chrome/browser/ui/webui/media/media_internals_ui.cc
@@ -19,13 +19,13 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateMediaInternalsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIMediaInternalsHost);
+content::WebUIDataSource* CreateMediaInternalsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIMediaInternalsHost);
- source->set_json_path("strings.js");
- source->add_resource_path("media_internals.js", IDR_MEDIA_INTERNALS_JS);
- source->set_default_resource(IDR_MEDIA_INTERNALS_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("media_internals.js", IDR_MEDIA_INTERNALS_JS);
+ source->SetDefaultResource(IDR_MEDIA_INTERNALS_HTML);
return source;
}
@@ -42,6 +42,6 @@ MediaInternalsUI::MediaInternalsUI(content::WebUI* web_ui)
web_ui->AddMessageHandler(new MediaInternalsMessageHandler());
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
profile, CreateMediaInternalsHTMLSource());
}
diff --git a/chrome/browser/ui/webui/nacl_ui.cc b/chrome/browser/ui/webui/nacl_ui.cc
index 50121e6..5be0f13 100644
--- a/chrome/browser/ui/webui/nacl_ui.cc
+++ b/chrome/browser/ui/webui/nacl_ui.cc
@@ -46,17 +46,17 @@ using content::WebUIMessageHandler;
namespace {
-ChromeWebUIDataSource* CreateNaClUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUINaClHost);
+content::WebUIDataSource* CreateNaClUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUINaClHost);
- source->set_use_json_js_format_v2();
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("loadingMessage", IDS_NACL_LOADING_MESSAGE);
source->AddLocalizedString("naclLongTitle", IDS_NACL_TITLE_MESSAGE);
- source->set_json_path("strings.js");
- source->add_resource_path("about_nacl.css", IDR_ABOUT_NACL_CSS);
- source->add_resource_path("about_nacl.js", IDR_ABOUT_NACL_JS);
- source->set_default_resource(IDR_ABOUT_NACL_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("about_nacl.css", IDR_ABOUT_NACL_CSS);
+ source->AddResourcePath("about_nacl.js", IDR_ABOUT_NACL_JS);
+ source->SetDefaultResource(IDR_ABOUT_NACL_HTML);
return source;
}
@@ -277,5 +277,5 @@ NaClUI::NaClUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the about:nacl source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateNaClUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateNaClUIHTMLSource());
}
diff --git a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
index f37a7de..2ed5328 100644
--- a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
+++ b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
@@ -218,15 +218,15 @@ Value* ExperimentToValue(const ConnectionTester::Experiment& experiment) {
return dict;
}
-ChromeWebUIDataSource* CreateNetInternalsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUINetInternalsHost);
-
- source->set_default_resource(IDR_NET_INTERNALS_INDEX_HTML);
- source->add_resource_path("help.html", IDR_NET_INTERNALS_HELP_HTML);
- source->add_resource_path("help.js", IDR_NET_INTERNALS_HELP_JS);
- source->add_resource_path("index.js", IDR_NET_INTERNALS_INDEX_JS);
- source->set_json_path("strings.js");
+content::WebUIDataSource* CreateNetInternalsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUINetInternalsHost);
+
+ source->SetDefaultResource(IDR_NET_INTERNALS_INDEX_HTML);
+ source->AddResourcePath("help.html", IDR_NET_INTERNALS_HELP_HTML);
+ source->AddResourcePath("help.js", IDR_NET_INTERNALS_HELP_JS);
+ source->AddResourcePath("index.js", IDR_NET_INTERNALS_INDEX_JS);
+ source->SetJsonPath("strings.js");
return source;
}
@@ -1940,6 +1940,6 @@ NetInternalsUI::NetInternalsUI(content::WebUI* web_ui)
// Set up the chrome://net-internals/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateNetInternalsHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateNetInternalsHTMLSource());
}
diff --git a/chrome/browser/ui/webui/omnibox/omnibox_ui.cc b/chrome/browser/ui/webui/omnibox/omnibox_ui.cc
index ac0b6f67..3dc54b4 100644
--- a/chrome/browser/ui/webui/omnibox/omnibox_ui.cc
+++ b/chrome/browser/ui/webui/omnibox/omnibox_ui.cc
@@ -16,14 +16,14 @@
OmniboxUI::OmniboxUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
// Set up the chrome://omnibox/ source.
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUIOmniboxHost);
- html_source->add_resource_path("omnibox.css", IDR_OMNIBOX_CSS);
- html_source->add_resource_path("omnibox.js", IDR_OMNIBOX_JS);
- html_source->set_default_resource(IDR_OMNIBOX_HTML);
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIOmniboxHost);
+ html_source->AddResourcePath("omnibox.css", IDR_OMNIBOX_CSS);
+ html_source->AddResourcePath("omnibox.js", IDR_OMNIBOX_JS);
+ html_source->SetDefaultResource(IDR_OMNIBOX_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
// AddMessageHandler takes ownership of OmniboxUIHandler
web_ui->AddMessageHandler(new OmniboxUIHandler(profile));
diff --git a/chrome/browser/ui/webui/performance_monitor/performance_monitor_ui.cc b/chrome/browser/ui/webui/performance_monitor/performance_monitor_ui.cc
index af6bae7..6b6bf60 100644
--- a/chrome/browser/ui/webui/performance_monitor/performance_monitor_ui.cc
+++ b/chrome/browser/ui/webui/performance_monitor/performance_monitor_ui.cc
@@ -18,16 +18,16 @@
namespace {
-ChromeWebUIDataSource* CreateWebUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIPerformanceMonitorHost);
+content::WebUIDataSource* CreateWebUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIPerformanceMonitorHost);
- source->set_json_path("strings.js");
- source->add_resource_path("chart.css", IDR_PERFORMANCE_MONITOR_CHART_CSS);
- source->add_resource_path("chart.js", IDR_PERFORMANCE_MONITOR_CHART_JS);
- source->add_resource_path("jquery.js", IDR_PERFORMANCE_MONITOR_JQUERY_JS);
- source->add_resource_path("flot.js", IDR_PERFORMANCE_MONITOR_JQUERY_FLOT_JS);
- source->set_default_resource(IDR_PERFORMANCE_MONITOR_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("chart.css", IDR_PERFORMANCE_MONITOR_CHART_CSS);
+ source->AddResourcePath("chart.js", IDR_PERFORMANCE_MONITOR_CHART_JS);
+ source->AddResourcePath("jquery.js", IDR_PERFORMANCE_MONITOR_JQUERY_JS);
+ source->AddResourcePath("flot.js", IDR_PERFORMANCE_MONITOR_JQUERY_FLOT_JS);
+ source->SetDefaultResource(IDR_PERFORMANCE_MONITOR_HTML);
source->AddString("enableFlagsURL", ASCIIToUTF16(chrome::kChromeUIFlagsURL));
@@ -75,11 +75,11 @@ PerformanceMonitorUI::PerformanceMonitorUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
web_ui->AddMessageHandler(new PerformanceMonitorHandler());
- ChromeWebUIDataSource* html_source = CreateWebUIHTMLSource();
- html_source->set_use_json_js_format_v2();
+ content::WebUIDataSource* html_source = CreateWebUIHTMLSource();
+ html_source->SetUseJsonJSFormatV2();
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
}
} // namespace performance_monitor
diff --git a/chrome/browser/ui/webui/plugins_ui.cc b/chrome/browser/ui/webui/plugins_ui.cc
index 26ffd98..dac9443 100644
--- a/chrome/browser/ui/webui/plugins_ui.cc
+++ b/chrome/browser/ui/webui/plugins_ui.cc
@@ -62,10 +62,10 @@ void AssertPluginEnabled(bool did_enable) {
DCHECK(did_enable);
}
-ChromeWebUIDataSource* CreatePluginsUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIPluginsHost);
- source->set_use_json_js_format_v2();
+content::WebUIDataSource* CreatePluginsUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIPluginsHost);
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("pluginsTitle", IDS_PLUGINS_TITLE);
source->AddLocalizedString("pluginsDetailsModeLink",
@@ -97,9 +97,9 @@ ChromeWebUIDataSource* CreatePluginsUIHTMLSource() {
source->AddLocalizedString("alwaysAllowed", IDS_PLUGINS_ALWAYS_ALLOWED);
source->AddLocalizedString("noPlugins", IDS_PLUGINS_NO_PLUGINS);
- source->set_json_path("strings.js");
- source->add_resource_path("plugins.js", IDR_PLUGINS_JS);
- source->set_default_resource(IDR_PLUGINS_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("plugins.js", IDR_PLUGINS_JS);
+ source->SetDefaultResource(IDR_PLUGINS_HTML);
#if defined(OS_CHROMEOS)
chromeos::AddAccountUITweaksLocalizedValues(source);
#endif
@@ -480,7 +480,8 @@ PluginsUI::PluginsUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the chrome://plugins/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreatePluginsUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreatePluginsUIHTMLSource());
}
// static
diff --git a/chrome/browser/ui/webui/policy_ui.cc b/chrome/browser/ui/webui/policy_ui.cc
index b010d69..4cc2125 100644
--- a/chrome/browser/ui/webui/policy_ui.cc
+++ b/chrome/browser/ui/webui/policy_ui.cc
@@ -61,12 +61,12 @@ const char PolicyUIHandler::kValue[] = "value";
namespace {
-ChromeWebUIDataSource* CreatePolicyUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIPolicyHost);
+content::WebUIDataSource* CreatePolicyUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIPolicyHost);
// Localized strings.
- source->set_use_json_js_format_v2();
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("policyTitle", IDS_POLICY_TITLE);
source->AddLocalizedString("statusPaneTitle", IDS_POLICY_STATUS_TITLE);
source->AddLocalizedString("fetchPoliciesText", IDS_POLICY_FETCH);
@@ -91,12 +91,12 @@ ChromeWebUIDataSource* CreatePolicyUIHTMLSource() {
IDS_POLICY_ENTRY_STATUS);
source->AddLocalizedString("showMoreText", IDS_POLICY_SHOW_MORE);
source->AddLocalizedString("hideText", IDS_POLICY_HIDE);
- source->set_json_path("strings.js");
+ source->SetJsonPath("strings.js");
// Add required resources.
- source->add_resource_path("policy.css", IDR_POLICY_CSS);
- source->add_resource_path("policy.js", IDR_POLICY_JS);
- source->set_default_resource(IDR_POLICY_HTML);
+ source->AddResourcePath("policy.css", IDR_POLICY_CSS);
+ source->AddResourcePath("policy.js", IDR_POLICY_JS);
+ source->SetDefaultResource(IDR_POLICY_HTML);
return source;
}
@@ -641,7 +641,7 @@ PolicyUI::PolicyUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the chrome://policy/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreatePolicyUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreatePolicyUIHTMLSource());
}
PolicyUI::~PolicyUI() {
diff --git a/chrome/browser/ui/webui/predictors/predictors_ui.cc b/chrome/browser/ui/webui/predictors/predictors_ui.cc
index 9015b99..c72013f 100644
--- a/chrome/browser/ui/webui/predictors/predictors_ui.cc
+++ b/chrome/browser/ui/webui/predictors/predictors_ui.cc
@@ -14,11 +14,11 @@
namespace {
-ChromeWebUIDataSource* CreatePredictorsUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIPredictorsHost);
- source->add_resource_path("predictors.js", IDR_PREDICTORS_JS);
- source->set_default_resource(IDR_PREDICTORS_HTML);
+content::WebUIDataSource* CreatePredictorsUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIPredictorsHost);
+ source->AddResourcePath("predictors.js", IDR_PREDICTORS_JS);
+ source->SetDefaultResource(IDR_PREDICTORS_HTML);
return source;
}
@@ -27,6 +27,6 @@ ChromeWebUIDataSource* CreatePredictorsUIHTMLSource() {
PredictorsUI::PredictorsUI(content::WebUI* web_ui) : WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
web_ui->AddMessageHandler(new PredictorsHandler(profile));
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreatePredictorsUIHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreatePredictorsUIHTMLSource());
}
diff --git a/chrome/browser/ui/webui/print_preview/print_preview_ui.cc b/chrome/browser/ui/webui/print_preview/print_preview_ui.cc
index 4b10227..bc09b3a 100644
--- a/chrome/browser/ui/webui/print_preview/print_preview_ui.cc
+++ b/chrome/browser/ui/webui/print_preview/print_preview_ui.cc
@@ -148,9 +148,9 @@ bool HandleRequestCallback(
return true;
}
-ChromeWebUIDataSource* CreatePrintPreviewUISource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIPrintHost);
+content::WebUIDataSource* CreatePrintPreviewUISource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIPrintHost);
#if defined(OS_CHROMEOS)
source->AddLocalizedString("title",
IDS_PRINT_PREVIEW_GOOGLE_CLOUD_PRINT_TITLE);
@@ -314,24 +314,23 @@ ChromeWebUIDataSource* CreatePrintPreviewUISource() {
"noDestsPromoNotNowButtonLabel",
IDS_PRINT_PREVIEW_NO_DESTS_PROMO_NOT_NOW_BUTTON_LABEL);
- source->set_json_path("strings.js");
- source->add_resource_path("print_preview.js", IDR_PRINT_PREVIEW_JS);
- source->add_resource_path("images/printer.png",
- IDR_PRINT_PREVIEW_IMAGES_PRINTER);
- source->add_resource_path("images/printer_shared.png",
- IDR_PRINT_PREVIEW_IMAGES_PRINTER_SHARED);
- source->add_resource_path("images/third_party.png",
- IDR_PRINT_PREVIEW_IMAGES_THIRD_PARTY);
- source->add_resource_path("images/third_party_fedex.png",
- IDR_PRINT_PREVIEW_IMAGES_THIRD_PARTY_FEDEX);
- source->add_resource_path("images/google_doc.png",
- IDR_PRINT_PREVIEW_IMAGES_GOOGLE_DOC);
- source->add_resource_path("images/pdf.png", IDR_PRINT_PREVIEW_IMAGES_PDF);
- source->add_resource_path("images/mobile.png",
- IDR_PRINT_PREVIEW_IMAGES_MOBILE);
- source->add_resource_path("images/mobile_shared.png",
- IDR_PRINT_PREVIEW_IMAGES_MOBILE_SHARED);
- source->set_default_resource(IDR_PRINT_PREVIEW_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("print_preview.js", IDR_PRINT_PREVIEW_JS);
+ source->AddResourcePath("images/printer.png",
+ IDR_PRINT_PREVIEW_IMAGES_PRINTER);
+ source->AddResourcePath("images/printer_shared.png",
+ IDR_PRINT_PREVIEW_IMAGES_PRINTER_SHARED);
+ source->AddResourcePath("images/third_party.png",
+ IDR_PRINT_PREVIEW_IMAGES_THIRD_PARTY);
+ source->AddResourcePath("images/third_party_fedex.png",
+ IDR_PRINT_PREVIEW_IMAGES_THIRD_PARTY_FEDEX);
+ source->AddResourcePath("images/google_doc.png",
+ IDR_PRINT_PREVIEW_IMAGES_GOOGLE_DOC);
+ source->AddResourcePath("images/pdf.png", IDR_PRINT_PREVIEW_IMAGES_PDF);
+ source->AddResourcePath("images/mobile.png", IDR_PRINT_PREVIEW_IMAGES_MOBILE);
+ source->AddResourcePath("images/mobile_shared.png",
+ IDR_PRINT_PREVIEW_IMAGES_MOBILE_SHARED);
+ source->SetDefaultResource(IDR_PRINT_PREVIEW_HTML);
source->SetRequestFilter(base::Bind(&HandleRequestCallback));
return source;
}
@@ -347,8 +346,8 @@ PrintPreviewUI::PrintPreviewUI(content::WebUI* web_ui)
dialog_closed_(false) {
// Set up the chrome://print/ data source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreatePrintPreviewUISource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreatePrintPreviewUISource());
// Set up the chrome://theme/ source.
ChromeURLDataManager::AddDataSource(profile, new ThemeSource(profile));
diff --git a/chrome/browser/ui/webui/profiler_ui.cc b/chrome/browser/ui/webui/profiler_ui.cc
index 24c2e12..4272905 100644
--- a/chrome/browser/ui/webui/profiler_ui.cc
+++ b/chrome/browser/ui/webui/profiler_ui.cc
@@ -98,13 +98,13 @@ class ProfilerWebUIDataSource : public content::URLDataSource {
#else // USE_SOURCE_FILES_DIRECTLY
-ChromeWebUIDataSource* CreateProfilerHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIProfilerHost);
+content::WebUIDataSource* CreateProfilerHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIProfilerHost);
- source->set_json_path("strings.js");
- source->add_resource_path("profiler.js", IDR_PROFILER_JS);
- source->set_default_resource(IDR_PROFILER_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("profiler.js", IDR_PROFILER_JS);
+ source->SetDefaultResource(IDR_PROFILER_HTML);
return source;
}
@@ -159,7 +159,7 @@ ProfilerUI::ProfilerUI(content::WebUI* web_ui)
#if defined(USE_SOURCE_FILES_DIRECTLY)
ChromeURLDataManager::AddDataSource(profile, new ProfilerWebUIDataSource);
#else
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateProfilerHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateProfilerHTMLSource());
#endif
}
diff --git a/chrome/browser/ui/webui/quota_internals_ui.cc b/chrome/browser/ui/webui/quota_internals_ui.cc
index 0c40d18..fb364c8 100644
--- a/chrome/browser/ui/webui/quota_internals_ui.cc
+++ b/chrome/browser/ui/webui/quota_internals_ui.cc
@@ -21,16 +21,16 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateQuotaInternalsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIQuotaInternalsHost);
+content::WebUIDataSource* CreateQuotaInternalsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIQuotaInternalsHost);
- source->set_json_path("strings.js");
- source->add_resource_path(
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath(
"event_handler.js", IDR_QUOTA_INTERNALS_EVENT_HANDLER_JS);
- source->add_resource_path(
+ source->AddResourcePath(
"message_dispatcher.js", IDR_QUOTA_INTERNALS_MESSAGE_DISPATCHER_JS);
- source->set_default_resource(IDR_QUOTA_INTERNALS_MAIN_HTML);
+ source->SetDefaultResource(IDR_QUOTA_INTERNALS_MAIN_HTML);
return source;
}
@@ -40,6 +40,6 @@ QuotaInternalsUI::QuotaInternalsUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
web_ui->AddMessageHandler(new quota_internals::QuotaInternalsHandler);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateQuotaInternalsHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateQuotaInternalsHTMLSource());
}
diff --git a/chrome/browser/ui/webui/set_as_default_browser_ui.cc b/chrome/browser/ui/webui/set_as_default_browser_ui.cc
index dd01fbd..8263c48 100644
--- a/chrome/browser/ui/webui/set_as_default_browser_ui.cc
+++ b/chrome/browser/ui/webui/set_as_default_browser_ui.cc
@@ -63,8 +63,8 @@ enum MakeChromeDefaultResult {
MAKE_CHROME_DEFAULT_MAX
};
-ChromeWebUIDataSource* CreateSetAsDefaultBrowserUIHTMLSource() {
- ChromeWebUIDataSource* data_source = new ChromeWebUIDataSource(
+content::WebUIDataSource* CreateSetAsDefaultBrowserUIHTMLSource() {
+ content::WebUIDataSource* data_source = ChromeWebUIDataSource::Create(
chrome::kChromeUIMetroFlowHost);
data_source->AddLocalizedString("page-title", IDS_METRO_FLOW_TAB_TITLE);
data_source->AddLocalizedString("flowTitle", IDS_METRO_FLOW_TITLE_SHORT);
@@ -74,10 +74,10 @@ ChromeWebUIDataSource* CreateSetAsDefaultBrowserUIHTMLSource() {
IDS_METRO_FLOW_SET_DEFAULT);
data_source->AddLocalizedString("chromeLogoString",
IDS_METRO_FLOW_LOGO_STRING_ALT);
- data_source->set_json_path("strings.js");
- data_source->add_resource_path("set_as_default_browser.js",
+ data_source->SetJsonPath("strings.js");
+ data_source->AddResourcePath("set_as_default_browser.js",
IDR_SET_AS_DEFAULT_BROWSER_JS);
- data_source->set_default_resource(IDR_SET_AS_DEFAULT_BROWSER_HTML);
+ data_source->SetDefaultResource(IDR_SET_AS_DEFAULT_BROWSER_HTML);
return data_source;
}
@@ -388,7 +388,7 @@ void SetAsDefaultBrowserDialogImpl::
SetAsDefaultBrowserUI::SetAsDefaultBrowserUI(content::WebUI* web_ui)
: ui::WebDialogUI(web_ui) {
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
Profile::FromWebUI(web_ui), CreateSetAsDefaultBrowserUIHTMLSource());
}
diff --git a/chrome/browser/ui/webui/signin_internals_ui.cc b/chrome/browser/ui/webui/signin_internals_ui.cc
index 668a5a9..a9a5de1 100644
--- a/chrome/browser/ui/webui/signin_internals_ui.cc
+++ b/chrome/browser/ui/webui/signin_internals_ui.cc
@@ -18,14 +18,14 @@
namespace {
-ChromeWebUIDataSource* CreateSignInInternalsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUISignInInternalsHost);
+content::WebUIDataSource* CreateSignInInternalsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUISignInInternalsHost);
- source->set_json_path("strings.js");
- source->add_resource_path("signin_internals.js",
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("signin_internals.js",
IDR_SIGNIN_INTERNALS_INDEX_JS);
- source->set_default_resource(IDR_SIGNIN_INTERNALS_INDEX_HTML);
+ source->SetDefaultResource(IDR_SIGNIN_INTERNALS_INDEX_HTML);
return source;
}
@@ -34,7 +34,7 @@ ChromeWebUIDataSource* CreateSignInInternalsHTMLSource() {
SignInInternalsUI::SignInInternalsUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
profile, CreateSignInInternalsHTMLSource());
if (profile) {
AboutSigninInternals* about_signin_internals =
diff --git a/chrome/browser/ui/webui/suggestions_internals/suggestions_internals_ui.cc b/chrome/browser/ui/webui/suggestions_internals/suggestions_internals_ui.cc
index 2ef6d80..74eef16b 100644
--- a/chrome/browser/ui/webui/suggestions_internals/suggestions_internals_ui.cc
+++ b/chrome/browser/ui/webui/suggestions_internals/suggestions_internals_ui.cc
@@ -16,16 +16,16 @@
SuggestionsInternalsUI::SuggestionsInternalsUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
// Set up the chrome://suggestions-internals/ source.
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUISuggestionsInternalsHost);
- html_source->add_resource_path("suggestions_internals.css",
- IDR_SUGGESTIONS_INTERNALS_CSS);
- html_source->add_resource_path("suggestions_internals.js",
- IDR_SUGGESTIONS_INTERNALS_JS);
- html_source->set_default_resource(IDR_SUGGESTIONS_INTERNALS_HTML);
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUISuggestionsInternalsHost);
+ html_source->AddResourcePath("suggestions_internals.css",
+ IDR_SUGGESTIONS_INTERNALS_CSS);
+ html_source->AddResourcePath("suggestions_internals.js",
+ IDR_SUGGESTIONS_INTERNALS_JS);
+ html_source->SetDefaultResource(IDR_SUGGESTIONS_INTERNALS_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
ChromeURLDataManager::AddDataSource(
profile, new FaviconSource(profile, FaviconSource::FAVICON));
diff --git a/chrome/browser/ui/webui/sync_internals_ui.cc b/chrome/browser/ui/webui/sync_internals_ui.cc
index fcfb42c..5a3c3d8 100644
--- a/chrome/browser/ui/webui/sync_internals_ui.cc
+++ b/chrome/browser/ui/webui/sync_internals_ui.cc
@@ -37,30 +37,29 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateSyncInternalsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUISyncInternalsHost);
-
- source->set_json_path("strings.js");
- source->add_resource_path("sync_index.js", IDR_SYNC_INTERNALS_INDEX_JS);
- source->add_resource_path("chrome_sync.js",
- IDR_SYNC_INTERNALS_CHROME_SYNC_JS);
- source->add_resource_path("sync_log.js", IDR_SYNC_INTERNALS_SYNC_LOG_JS);
- source->add_resource_path("sync_node_browser.js",
- IDR_SYNC_INTERNALS_SYNC_NODE_BROWSER_JS);
- source->add_resource_path("sync_search.js",
- IDR_SYNC_INTERNALS_SYNC_SEARCH_JS);
- source->add_resource_path("about.js", IDR_SYNC_INTERNALS_ABOUT_JS);
- source->add_resource_path("data.js", IDR_SYNC_INTERNALS_DATA_JS);
- source->add_resource_path("events.js", IDR_SYNC_INTERNALS_EVENTS_JS);
- source->add_resource_path("notifications.js",
- IDR_SYNC_INTERNALS_NOTIFICATIONS_JS);
- source->add_resource_path("search.js", IDR_SYNC_INTERNALS_SEARCH_JS);
- source->add_resource_path("node_browser.js",
- IDR_SYNC_INTERNALS_NODE_BROWSER_JS);
- source->add_resource_path("traffic.js",
- IDR_SYNC_INTERNALS_TRAFFIC_JS);
- source->set_default_resource(IDR_SYNC_INTERNALS_INDEX_HTML);
+content::WebUIDataSource* CreateSyncInternalsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUISyncInternalsHost);
+
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("sync_index.js", IDR_SYNC_INTERNALS_INDEX_JS);
+ source->AddResourcePath("chrome_sync.js",
+ IDR_SYNC_INTERNALS_CHROME_SYNC_JS);
+ source->AddResourcePath("sync_log.js", IDR_SYNC_INTERNALS_SYNC_LOG_JS);
+ source->AddResourcePath("sync_node_browser.js",
+ IDR_SYNC_INTERNALS_SYNC_NODE_BROWSER_JS);
+ source->AddResourcePath("sync_search.js",
+ IDR_SYNC_INTERNALS_SYNC_SEARCH_JS);
+ source->AddResourcePath("about.js", IDR_SYNC_INTERNALS_ABOUT_JS);
+ source->AddResourcePath("data.js", IDR_SYNC_INTERNALS_DATA_JS);
+ source->AddResourcePath("events.js", IDR_SYNC_INTERNALS_EVENTS_JS);
+ source->AddResourcePath("notifications.js",
+ IDR_SYNC_INTERNALS_NOTIFICATIONS_JS);
+ source->AddResourcePath("search.js", IDR_SYNC_INTERNALS_SEARCH_JS);
+ source->AddResourcePath("node_browser.js",
+ IDR_SYNC_INTERNALS_NODE_BROWSER_JS);
+ source->AddResourcePath("traffic.js", IDR_SYNC_INTERNALS_TRAFFIC_JS);
+ source->SetDefaultResource(IDR_SYNC_INTERNALS_INDEX_HTML);
return source;
}
@@ -82,8 +81,8 @@ SyncInternalsUI::SyncInternalsUI(content::WebUI* web_ui)
weak_ptr_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {
// TODO(akalin): Fix.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateSyncInternalsHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateSyncInternalsHTMLSource());
ProfileSyncService* sync_service = GetProfileSyncService(profile);
if (sync_service) {
js_controller_ = sync_service->GetJsController();
diff --git a/chrome/browser/ui/webui/sync_promo/sync_promo_ui.cc b/chrome/browser/ui/webui/sync_promo/sync_promo_ui.cc
index 9d9f615..7d12276 100644
--- a/chrome/browser/ui/webui/sync_promo/sync_promo_ui.cc
+++ b/chrome/browser/ui/webui/sync_promo/sync_promo_ui.cc
@@ -76,17 +76,17 @@ bool AllowPromoAtStartupForCurrentBrand() {
return true;
}
-ChromeWebUIDataSource* CreateSyncUIHTMLSource(content::WebUI* web_ui) {
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUISyncPromoHost);
+content::WebUIDataSource* CreateSyncUIHTMLSource(content::WebUI* web_ui) {
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUISyncPromoHost);
DictionaryValue localized_strings;
options::CoreOptionsHandler::GetStaticLocalizedValues(&localized_strings);
SyncSetupHandler::GetStaticLocalizedValues(&localized_strings, web_ui);
html_source->AddLocalizedStrings(localized_strings);
- html_source->set_json_path(kStringsJsFile);
- html_source->add_resource_path(kSyncPromoJsFile, IDR_SYNC_PROMO_JS);
- html_source->set_default_resource(IDR_SYNC_PROMO_HTML);
- html_source->set_use_json_js_format_v2();
+ html_source->SetJsonPath(kStringsJsFile);
+ html_source->AddResourcePath(kSyncPromoJsFile, IDR_SYNC_PROMO_JS);
+ html_source->SetDefaultResource(IDR_SYNC_PROMO_HTML);
+ html_source->SetUseJsonJSFormatV2();
return html_source;
}
@@ -103,8 +103,8 @@ SyncPromoUI::SyncPromoUI(content::WebUI* web_ui) : WebUIController(web_ui) {
ChromeURLDataManager::AddDataSource(profile, theme);
// Set up the sync promo source.
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateSyncUIHTMLSource(web_ui));
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateSyncUIHTMLSource(web_ui));
sync_promo_trial::RecordUserShownPromo(web_ui);
}
diff --git a/chrome/browser/ui/webui/tab_modal_confirm_dialog_webui.cc b/chrome/browser/ui/webui/tab_modal_confirm_dialog_webui.cc
index 20e0d99..6d682fa 100644
--- a/chrome/browser/ui/webui/tab_modal_confirm_dialog_webui.cc
+++ b/chrome/browser/ui/webui/tab_modal_confirm_dialog_webui.cc
@@ -47,10 +47,10 @@ TabModalConfirmDialogWebUI::TabModalConfirmDialogWebUI(
: delegate_(delegate) {
Profile* profile =
Profile::FromBrowserContext(web_contents->GetBrowserContext());
- ChromeWebUIDataSource* data_source =
- new ChromeWebUIDataSource(chrome::kChromeUITabModalConfirmDialogHost);
- data_source->set_default_resource(IDR_TAB_MODAL_CONFIRM_DIALOG_HTML);
- ChromeURLDataManager::AddDataSourceImpl(profile, data_source);
+ content::WebUIDataSource* data_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUITabModalConfirmDialogHost);
+ data_source->SetDefaultResource(IDR_TAB_MODAL_CONFIRM_DIALOG_HTML);
+ ChromeURLDataManager::AddWebUIDataSource(profile, data_source);
constrained_web_dialog_delegate_ =
CreateConstrainedWebDialog(profile, this, NULL, web_contents);
diff --git a/chrome/browser/ui/webui/task_manager/task_manager_ui.cc b/chrome/browser/ui/webui/task_manager/task_manager_ui.cc
index 8e8dc5a..61e497c 100644
--- a/chrome/browser/ui/webui/task_manager/task_manager_ui.cc
+++ b/chrome/browser/ui/webui/task_manager/task_manager_ui.cc
@@ -24,10 +24,10 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateTaskManagerUIHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUITaskManagerHost);
- source->set_use_json_js_format_v2();
+content::WebUIDataSource* CreateTaskManagerUIHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUITaskManagerHost);
+ source->SetUseJsonJSFormatV2();
source->AddLocalizedString("closeWindow", IDS_CLOSE);
source->AddLocalizedString("title", IDS_TASK_MANAGER_TITLE);
@@ -65,17 +65,16 @@ ChromeWebUIDataSource* CreateTaskManagerUIHTMLSource() {
IDS_TASK_MANAGER_JAVASCRIPT_MEMORY_ALLOCATED_COLUMN);
source->AddLocalizedString("inspect", IDS_TASK_MANAGER_INSPECT);
source->AddLocalizedString("activate", IDS_TASK_MANAGER_ACTIVATE);
- source->set_json_path("strings.js");
- source->add_resource_path("main.js", IDR_TASK_MANAGER_JS);
- source->add_resource_path("commands.js", IDR_TASK_MANAGER_COMMANDS_JS);
- source->add_resource_path("defines.js", IDR_TASK_MANAGER_DEFINES_JS);
- source->add_resource_path("includes.js", IDR_TASK_MANAGER_INCLUDES_JS);
- source->add_resource_path("preload.js", IDR_TASK_MANAGER_PRELOAD_JS);
- source->add_resource_path("measure_time.js",
- IDR_TASK_MANAGER_MEASURE_TIME_JS);
- source->add_resource_path("measure_time_end.js",
- IDR_TASK_MANAGER_MEASURE_TIME_END_JS);
- source->set_default_resource(IDR_TASK_MANAGER_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("main.js", IDR_TASK_MANAGER_JS);
+ source->AddResourcePath("commands.js", IDR_TASK_MANAGER_COMMANDS_JS);
+ source->AddResourcePath("defines.js", IDR_TASK_MANAGER_DEFINES_JS);
+ source->AddResourcePath("includes.js", IDR_TASK_MANAGER_INCLUDES_JS);
+ source->AddResourcePath("preload.js", IDR_TASK_MANAGER_PRELOAD_JS);
+ source->AddResourcePath("measure_time.js", IDR_TASK_MANAGER_MEASURE_TIME_JS);
+ source->AddResourcePath("measure_time_end.js",
+ IDR_TASK_MANAGER_MEASURE_TIME_END_JS);
+ source->SetDefaultResource(IDR_TASK_MANAGER_HTML);
return source;
}
@@ -92,7 +91,7 @@ TaskManagerUI::TaskManagerUI(content::WebUI* web_ui) : WebUIController(web_ui) {
web_ui->AddMessageHandler(new TaskManagerHandler(TaskManager::GetInstance()));
// Set up the chrome://taskmanager/ source.
- ChromeWebUIDataSource* html_source = CreateTaskManagerUIHTMLSource();
+ content::WebUIDataSource* html_source = CreateTaskManagerUIHTMLSource();
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
}
diff --git a/chrome/browser/ui/webui/tracing_ui.cc b/chrome/browser/ui/webui/tracing_ui.cc
index b8b2054..f79ebc0 100644
--- a/chrome/browser/ui/webui/tracing_ui.cc
+++ b/chrome/browser/ui/webui/tracing_ui.cc
@@ -50,13 +50,13 @@ using content::WebUIMessageHandler;
namespace {
-ChromeWebUIDataSource* CreateTracingHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUITracingHost);
+content::WebUIDataSource* CreateTracingHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUITracingHost);
- source->set_json_path("strings.js");
- source->set_default_resource(IDR_TRACING_HTML);
- source->add_resource_path("tracing.js", IDR_TRACING_JS);
+ source->SetJsonPath("strings.js");
+ source->SetDefaultResource(IDR_TRACING_HTML);
+ source->AddResourcePath("tracing.js", IDR_TRACING_JS);
source->AddLocalizedString("tracingTitle", IDS_TRACING_TITLE);
return source;
}
@@ -510,5 +510,5 @@ TracingUI::TracingUI(content::WebUI* web_ui) : WebUIController(web_ui) {
// Set up the chrome://tracing/ source.
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateTracingHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateTracingHTMLSource());
}
diff --git a/chrome/browser/ui/webui/uber/uber_ui.cc b/chrome/browser/ui/webui/uber/uber_ui.cc
index 18c5776..e23610c 100644
--- a/chrome/browser/ui/webui/uber/uber_ui.cc
+++ b/chrome/browser/ui/webui/uber/uber_ui.cc
@@ -33,15 +33,15 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateUberHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIUberHost);
+content::WebUIDataSource* CreateUberHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIUberHost);
- source->set_use_json_js_format_v2();
- source->set_json_path("strings.js");
- source->add_resource_path("uber.js", IDR_UBER_JS);
- source->add_resource_path("uber_utils.js", IDR_UBER_UTILS_JS);
- source->set_default_resource(IDR_UBER_HTML);
+ source->SetUseJsonJSFormatV2();
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("uber.js", IDR_UBER_JS);
+ source->AddResourcePath("uber_utils.js", IDR_UBER_UTILS_JS);
+ source->SetDefaultResource(IDR_UBER_HTML);
// Hack alert: continue showing "Loading..." until a real title is set.
source->AddLocalizedString("pageTitle", IDS_TAB_LOADING_TITLE);
@@ -85,14 +85,14 @@ bool HasExtensionType(Profile* profile, const char* extensionType) {
return false;
}
-ChromeWebUIDataSource* CreateUberFrameHTMLSource(Profile* profile) {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIUberFrameHost);
+content::WebUIDataSource* CreateUberFrameHTMLSource(Profile* profile) {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIUberFrameHost);
- source->set_use_json_js_format_v2();
- source->set_json_path("strings.js");
- source->add_resource_path("uber_frame.js", IDR_UBER_FRAME_JS);
- source->set_default_resource(IDR_UBER_FRAME_HTML);
+ source->SetUseJsonJSFormatV2();
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("uber_frame.js", IDR_UBER_FRAME_JS);
+ source->SetDefaultResource(IDR_UBER_FRAME_HTML);
// TODO(jhawkins): Attempt to get rid of IDS_SHORT_PRODUCT_OS_NAME.
#if defined(OS_CHROMEOS)
@@ -126,7 +126,7 @@ ChromeWebUIDataSource* CreateUberFrameHTMLSource(Profile* profile) {
UberUI::UberUI(content::WebUI* web_ui) : WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, CreateUberHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile, CreateUberHTMLSource());
RegisterSubpage(chrome::kChromeUIExtensionsFrameURL);
RegisterSubpage(chrome::kChromeUIHelpFrameURL);
@@ -184,7 +184,7 @@ bool UberUI::OverrideHandleWebUIMessage(const GURL& source_url,
UberFrameUI::UberFrameUI(content::WebUI* web_ui) : WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(
+ ChromeURLDataManager::AddWebUIDataSource(
profile, CreateUberFrameHTMLSource(profile));
// Register as an observer for when extensions are loaded and unloaded.
diff --git a/chrome/browser/ui/webui/user_actions/user_actions_ui.cc b/chrome/browser/ui/webui/user_actions/user_actions_ui.cc
index 069f837d..431c616 100644
--- a/chrome/browser/ui/webui/user_actions/user_actions_ui.cc
+++ b/chrome/browser/ui/webui/user_actions/user_actions_ui.cc
@@ -16,14 +16,14 @@
UserActionsUI::UserActionsUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
// Set up the chrome://user-actions/ source.
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUIUserActionsHost);
- html_source->set_default_resource(IDR_USER_ACTIONS_HTML);
- html_source->add_resource_path("user_actions.css", IDR_USER_ACTIONS_CSS);
- html_source->add_resource_path("user_actions.js", IDR_USER_ACTIONS_JS);
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIUserActionsHost);
+ html_source->SetDefaultResource(IDR_USER_ACTIONS_HTML);
+ html_source->AddResourcePath("user_actions.css", IDR_USER_ACTIONS_CSS);
+ html_source->AddResourcePath("user_actions.js", IDR_USER_ACTIONS_JS);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
// AddMessageHandler takes ownership of UserActionsUIHandler.
web_ui->AddMessageHandler(new UserActionsUIHandler());
diff --git a/chrome/browser/ui/webui/version_ui.cc b/chrome/browser/ui/webui/version_ui.cc
index 0d923dd3d..8c5d2d5 100644
--- a/chrome/browser/ui/webui/version_ui.cc
+++ b/chrome/browser/ui/webui/version_ui.cc
@@ -37,9 +37,9 @@
namespace {
-ChromeWebUIDataSource* CreateVersionUIDataSource(Profile* profile) {
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUIVersionHost);
+content::WebUIDataSource* CreateVersionUIDataSource(Profile* profile) {
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIVersionHost);
// Localized and data strings.
html_source->AddLocalizedString("title", IDS_ABOUT_VERSION_TITLE);
@@ -116,11 +116,11 @@ ChromeWebUIDataSource* CreateVersionUIDataSource(Profile* profile) {
html_source->AddLocalizedString("variations_name",
IDS_ABOUT_VERSION_VARIATIONS);
- html_source->set_use_json_js_format_v2();
- html_source->set_json_path("strings.js");
- html_source->add_resource_path("version.js", IDR_ABOUT_VERSION_JS);
- html_source->add_resource_path("about_version.css", IDR_ABOUT_VERSION_CSS);
- html_source->set_default_resource(IDR_ABOUT_VERSION_HTML);
+ html_source->SetUseJsonJSFormatV2();
+ html_source->SetJsonPath("strings.js");
+ html_source->AddResourcePath("version.js", IDR_ABOUT_VERSION_JS);
+ html_source->AddResourcePath("about_version.css", IDR_ABOUT_VERSION_CSS);
+ html_source->SetDefaultResource(IDR_ABOUT_VERSION_HTML);
return html_source;
}
@@ -142,8 +142,8 @@ VersionUI::VersionUI(content::WebUI* web_ui)
ChromeURLDataManager::AddDataSource(profile, theme);
#endif
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateVersionUIDataSource(profile));
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateVersionUIDataSource(profile));
}
VersionUI::~VersionUI() {
diff --git a/chrome/browser/ui/webui/webrtc_internals_ui.cc b/chrome/browser/ui/webui/webrtc_internals_ui.cc
index 9891b01..9a61072 100644
--- a/chrome/browser/ui/webui/webrtc_internals_ui.cc
+++ b/chrome/browser/ui/webui/webrtc_internals_ui.cc
@@ -15,13 +15,13 @@ using content::WebContents;
namespace {
-ChromeWebUIDataSource* CreateWebRTCInternalsHTMLSource() {
- ChromeWebUIDataSource* source =
- new ChromeWebUIDataSource(chrome::kChromeUIWebRTCInternalsHost);
+content::WebUIDataSource* CreateWebRTCInternalsHTMLSource() {
+ content::WebUIDataSource* source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIWebRTCInternalsHost);
- source->set_json_path("strings.js");
- source->add_resource_path("webrtc_internals.js", IDR_WEBRTC_INTERNALS_JS);
- source->set_default_resource(IDR_WEBRTC_INTERNALS_HTML);
+ source->SetJsonPath("strings.js");
+ source->AddResourcePath("webrtc_internals.js", IDR_WEBRTC_INTERNALS_JS);
+ source->SetDefaultResource(IDR_WEBRTC_INTERNALS_HTML);
return source;
}
@@ -36,6 +36,6 @@ ChromeWebUIDataSource* CreateWebRTCInternalsHTMLSource() {
WebRTCInternalsUI::WebRTCInternalsUI(content::WebUI* web_ui)
: WebUIController(web_ui) {
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile,
- CreateWebRTCInternalsHTMLSource());
+ ChromeURLDataManager::AddWebUIDataSource(profile,
+ CreateWebRTCInternalsHTMLSource());
}
diff --git a/chrome/browser/ui/webui/welcome_ui_android.cc b/chrome/browser/ui/webui/welcome_ui_android.cc
index 585ecfc..c222cde 100644
--- a/chrome/browser/ui/webui/welcome_ui_android.cc
+++ b/chrome/browser/ui/webui/welcome_ui_android.cc
@@ -15,9 +15,9 @@
WelcomeUI::WelcomeUI(content::WebUI* web_ui)
: content::WebUIController(web_ui) {
// Set up the chrome://welcome source.
- ChromeWebUIDataSource* html_source =
- new ChromeWebUIDataSource(chrome::kChromeUIWelcomeHost);
- html_source->set_use_json_js_format_v2();
+ content::WebUIDataSource* html_source =
+ ChromeWebUIDataSource::Create(chrome::kChromeUIWelcomeHost);
+ html_source->SetUseJsonJSFormatV2();
// Localized strings.
html_source->AddLocalizedString("title",
@@ -27,15 +27,15 @@ WelcomeUI::WelcomeUI(content::WebUI* web_ui)
html_source->AddLocalizedString("settings", IDS_FIRSTRUN_SETTINGS_LINK);
// Add required resources.
- html_source->set_json_path("strings.js");
- html_source->add_resource_path("about_welcome_android.css",
+ html_source->SetJsonPath("strings.js");
+ html_source->AddResourcePath("about_welcome_android.css",
IDR_ABOUT_WELCOME_CSS);
- html_source->add_resource_path("about_welcome_android.js",
+ html_source->AddResourcePath("about_welcome_android.js",
IDR_ABOUT_WELCOME_JS);
- html_source->set_default_resource(IDR_ABOUT_WELCOME_HTML);
+ html_source->SetDefaultResource(IDR_ABOUT_WELCOME_HTML);
Profile* profile = Profile::FromWebUI(web_ui);
- ChromeURLDataManager::AddDataSourceImpl(profile, html_source);
+ ChromeURLDataManager::AddWebUIDataSource(profile, html_source);
}
WelcomeUI::~WelcomeUI() {
diff --git a/content/content_browser.gypi b/content/content_browser.gypi
index 32decc5..4b3a4da 100644
--- a/content/content_browser.gypi
+++ b/content/content_browser.gypi
@@ -169,6 +169,7 @@
'public/browser/web_ui_controller.cc',
'public/browser/web_ui_controller.h',
'public/browser/web_ui_controller_factory.h',
+ 'public/browser/web_ui_data_source.h',
'public/browser/url_data_source.cc',
'public/browser/url_data_source.h',
'public/browser/web_ui_message_handler.h',
diff --git a/content/public/browser/web_ui_data_source.h b/content/public/browser/web_ui_data_source.h
new file mode 100644
index 0000000..da9e7c7
--- /dev/null
+++ b/content/public/browser/web_ui_data_source.h
@@ -0,0 +1,71 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CONTENT_PUBLIC_BROWSER_WEB_UI_DATA_SOURCE_H_
+#define CONTENT_PUBLIC_BROWSER_WEB_UI_DATA_SOURCE_H_
+
+#include "base/string16.h"
+#include "base/callback.h"
+
+namespace base {
+class RefCountedMemory;
+}
+
+namespace content {
+
+// A data source that can help with implementing the common operations needed by
+// WebUI pages.
+class WebUIDataSource {
+ public:
+ virtual ~WebUIDataSource() {}
+
+ // Adds a string keyed to its name to our dictionary.
+ virtual void AddString(const std::string& name, const string16& value) = 0;
+
+ // Adds a string keyed to its name to our dictionary.
+ virtual void AddString(const std::string& name, const std::string& value) = 0;
+
+ // Adds a localized string with resource |ids| keyed to its name to our
+ // dictionary.
+ virtual void AddLocalizedString(const std::string& name, int ids) = 0;
+
+ // Add strings from |localized_strings| to our dictionary.
+ virtual void AddLocalizedStrings(
+ const DictionaryValue& localized_strings) = 0;
+
+ // Adds a boolean keyed to its name to our dictionary.
+ virtual void AddBoolean(const std::string& name, bool value) = 0;
+
+ // Sets the path which will return the JSON strings.
+ virtual void SetJsonPath(const std::string& path) = 0;
+
+ // Sets the data source to use a slightly different format for json data. Some
+ // day this should become the default.
+ virtual void SetUseJsonJSFormatV2() = 0;
+
+ // Adds a mapping between a path name and a resource to return.
+ virtual void AddResourcePath(const std::string &path, int resource_id) = 0;
+
+ // Sets the resource to returned when no other paths match.
+ virtual void SetDefaultResource(int resource_id) = 0;
+
+ // Used as a parameter to GotDataCallback. The caller has to run this callback
+ // with the result for the path that they filtered, passing ownership of the
+ // memory.
+ typedef base::Callback<void(base::RefCountedMemory*)> GotDataCallback;
+
+ // Used by SetRequestFilter. The string parameter is the path of the request.
+ // If the callee doesn't want to handle the data, false is returned. Otherwise
+ // true is returned and the GotDataCallback parameter is called either then or
+ // asynchronously with the response.
+ typedef base::Callback<bool(const std::string&, const GotDataCallback&)>
+ HandleRequestCallback;
+
+ // Allows a caller to add a filter for URL requests.
+ virtual void SetRequestFilter(const HandleRequestCallback& callback) = 0;
+};
+
+} // namespace content
+
+#endif // CONTENT_PUBLIC_BROWSER_WEB_UI_DATA_SOURCE_H_