| Index: chrome/browser/ui/webui/conflicts_ui.cc
|
| ===================================================================
|
| --- chrome/browser/ui/webui/conflicts_ui.cc (revision 92230)
|
| +++ chrome/browser/ui/webui/conflicts_ui.cc (working copy)
|
| @@ -14,6 +14,7 @@
|
| #include "chrome/browser/enumerate_modules_model_win.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/ui/webui/chrome_url_data_manager.h"
|
| +#include "chrome/browser/ui/webui/chrome_web_ui_data_source.h"
|
| #include "chrome/common/chrome_notification_types.h"
|
| #include "chrome/common/jstemplate_builder.h"
|
| #include "chrome/common/url_constants.h"
|
| @@ -32,79 +33,32 @@
|
|
|
| namespace {
|
|
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -//
|
| -// ConflictsUIHTMLSource
|
| -//
|
| -////////////////////////////////////////////////////////////////////////////////
|
| +ChromeWebUIDataSource* CreateConflictsUIHTMLSource() {
|
| + ChromeWebUIDataSource* source =
|
| + new ChromeWebUIDataSource(chrome::kChromeUIConflictsHost);
|
|
|
| -class ConflictsUIHTMLSource : public ChromeURLDataManager::DataSource {
|
| - public:
|
| - ConflictsUIHTMLSource()
|
| - : DataSource(chrome::kChromeUIConflictsHost, MessageLoop::current()) {}
|
| -
|
| - // Called when the network layer has requested a resource underneath
|
| - // the path we registered.
|
| - virtual void StartDataRequest(const std::string& path,
|
| - bool is_incognito,
|
| - int request_id);
|
| -
|
| - virtual std::string GetMimeType(const std::string&) const {
|
| - return "text/html";
|
| - }
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(ConflictsUIHTMLSource);
|
| -};
|
| -
|
| -void ConflictsUIHTMLSource::StartDataRequest(const std::string& path,
|
| - bool is_incognito,
|
| - int request_id) {
|
| - // Strings used in the JsTemplate file.
|
| - DictionaryValue localized_strings;
|
| - localized_strings.SetString("loadingMessage",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_LOADING_MESSAGE));
|
| - localized_strings.SetString("modulesLongTitle",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_CHECK_PAGE_TITLE_LONG));
|
| - localized_strings.SetString("modulesBlurb",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_EXPLANATION_TEXT));
|
| - localized_strings.SetString("moduleSuspectedBad",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_CHECK_WARNING_SUSPECTED));
|
| - localized_strings.SetString("moduleConfirmedBad",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_CHECK_WARNING_CONFIRMED));
|
| - localized_strings.SetString("helpCenterLink",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_HELP_CENTER_LINK));
|
| - localized_strings.SetString("investigatingText",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_CHECK_INVESTIGATING));
|
| - localized_strings.SetString("modulesNoneLoaded",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_NO_MODULES_LOADED));
|
| - localized_strings.SetString("headerSoftware",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_HEADER_SOFTWARE));
|
| - localized_strings.SetString("headerSignedBy",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_HEADER_SIGNED_BY));
|
| - localized_strings.SetString("headerLocation",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_HEADER_LOCATION));
|
| - localized_strings.SetString("headerVersion",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_HEADER_VERSION));
|
| - localized_strings.SetString("headerHelpTip",
|
| - l10n_util::GetStringUTF16(IDS_CONFLICTS_HEADER_HELP_TIP));
|
| -
|
| - ChromeURLDataManager::DataSource::SetFontAndTextDirection(&localized_strings);
|
| -
|
| - static const base::StringPiece flags_html(
|
| - ResourceBundle::GetSharedInstance().GetRawDataResource(
|
| - IDR_ABOUT_CONFLICTS_HTML));
|
| - std::string full_html(flags_html.data(), flags_html.size());
|
| - jstemplate_builder::AppendJsonHtml(&localized_strings, &full_html);
|
| - jstemplate_builder::AppendI18nTemplateSourceHtml(&full_html);
|
| - jstemplate_builder::AppendI18nTemplateProcessHtml(&full_html);
|
| - jstemplate_builder::AppendJsTemplateSourceHtml(&full_html);
|
| -
|
| - scoped_refptr<RefCountedBytes> html_bytes(new RefCountedBytes);
|
| - html_bytes->data.resize(full_html.size());
|
| - std::copy(full_html.begin(), full_html.end(), html_bytes->data.begin());
|
| -
|
| - SendResponse(request_id, html_bytes);
|
| + source->AddLocalizedString("loadingMessage", IDS_CONFLICTS_LOADING_MESSAGE);
|
| + source->AddLocalizedString("modulesLongTitle",
|
| + IDS_CONFLICTS_CHECK_PAGE_TITLE_LONG);
|
| + source->AddLocalizedString("modulesBlurb", IDS_CONFLICTS_EXPLANATION_TEXT);
|
| + source->AddLocalizedString("moduleSuspectedBad",
|
| + IDS_CONFLICTS_CHECK_WARNING_SUSPECTED);
|
| + source->AddLocalizedString("moduleConfirmedBad",
|
| + IDS_CONFLICTS_CHECK_WARNING_CONFIRMED);
|
| + source->AddLocalizedString("helpCenterLink", IDS_CONFLICTS_HELP_CENTER_LINK);
|
| + source->AddLocalizedString("investigatingText",
|
| + IDS_CONFLICTS_CHECK_INVESTIGATING);
|
| + source->AddLocalizedString("modulesNoneLoaded",
|
| + IDS_CONFLICTS_NO_MODULES_LOADED);
|
| + source->AddLocalizedString("headerSoftware", IDS_CONFLICTS_HEADER_SOFTWARE);
|
| + source->AddLocalizedString("headerSignedBy", IDS_CONFLICTS_HEADER_SIGNED_BY);
|
| + 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);
|
| + return source;
|
| }
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| @@ -199,15 +153,12 @@
|
| ///////////////////////////////////////////////////////////////////////////////
|
|
|
| ConflictsUI::ConflictsUI(TabContents* contents) : ChromeWebUI(contents) {
|
| - UserMetrics::RecordAction(
|
| - UserMetricsAction("ViewAboutConflicts"));
|
| -
|
| + UserMetrics::RecordAction(UserMetricsAction("ViewAboutConflicts"));
|
| AddMessageHandler((new ConflictsDOMHandler())->Attach(this));
|
|
|
| - ConflictsUIHTMLSource* html_source = new ConflictsUIHTMLSource();
|
| -
|
| // Set up the about:conflicts source.
|
| - contents->profile()->GetChromeURLDataManager()->AddDataSource(html_source);
|
| + contents->profile()->GetChromeURLDataManager()->AddDataSource(
|
| + CreateConflictsUIHTMLSource());
|
| }
|
|
|
| // static
|
|
|