Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2720)

Unified Diff: chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc

Issue 2176613003: [Media Router] Clean up issues related code. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix tests Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc
diff --git a/chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc b/chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc
index 925d47ad5f0de3a34865af51fa85a4c30540a4cd..151e184b00573d2d7fcb3276bda7dc5f015cc2fc 100644
--- a/chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc
+++ b/chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc
@@ -186,27 +186,31 @@ std::unique_ptr<base::ListValue> CastModesToValue(
// Returns an Issue dictionary created from |issue| that can be used in WebUI.
std::unique_ptr<base::DictionaryValue> IssueToValue(const Issue& issue) {
+ const IssueInfo& issue_info = issue.info();
std::unique_ptr<base::DictionaryValue> dictionary(new base::DictionaryValue);
- dictionary->SetString("id", issue.id());
- dictionary->SetString("title", issue.title());
- dictionary->SetString("message", issue.message());
- dictionary->SetInteger("defaultActionType", issue.default_action().type());
- if (!issue.secondary_actions().empty()) {
+ dictionary->SetInteger("id", issue.id());
+ dictionary->SetString("title", issue_info.title);
+ dictionary->SetString("message", issue_info.message);
+ dictionary->SetInteger("defaultActionType",
+ static_cast<int>(issue_info.default_action));
+ if (!issue_info.secondary_actions.empty()) {
+ DCHECK_EQ(1u, issue_info.secondary_actions.size());
dictionary->SetInteger("secondaryActionType",
- issue.secondary_actions().begin()->type());
+ static_cast<int>(issue_info.secondary_actions[0]));
}
- if (!issue.route_id().empty())
- dictionary->SetString("routeId", issue.route_id());
- dictionary->SetBoolean("isBlocking", issue.is_blocking());
- if (issue.help_page_id() > 0)
- dictionary->SetInteger("helpPageId", issue.help_page_id());
+ if (!issue_info.route_id.empty())
+ dictionary->SetString("routeId", issue_info.route_id);
+ dictionary->SetBoolean("isBlocking", issue_info.is_blocking);
+ if (issue_info.help_page_id > 0)
+ dictionary->SetInteger("helpPageId", issue_info.help_page_id);
return dictionary;
}
bool IsValidIssueActionTypeNum(int issue_action_type_num) {
return issue_action_type_num >= 0 &&
- issue_action_type_num < IssueAction::TYPE_MAX;
+ issue_action_type_num <=
+ static_cast<int>(IssueInfo::Action::NUM_VALUES);
}
// Composes a "learn more" URL. The URL depends on template arguments in |args|.
@@ -295,11 +299,15 @@ void MediaRouterWebUIMessageHandler::ReturnSearchResult(
base::StringValue(sink_id));
}
-void MediaRouterWebUIMessageHandler::UpdateIssue(const Issue* issue) {
+void MediaRouterWebUIMessageHandler::UpdateIssue(const Issue& issue) {
DVLOG(2) << "UpdateIssue";
- web_ui()->CallJavascriptFunctionUnsafe(
- kSetIssue,
- issue ? *IssueToValue(*issue) : *base::Value::CreateNullValue());
+ web_ui()->CallJavascriptFunctionUnsafe(kSetIssue, *IssueToValue(issue));
+}
+
+void MediaRouterWebUIMessageHandler::ClearIssue() {
+ DVLOG(2) << "ClearIssue";
+ web_ui()->CallJavascriptFunctionUnsafe(kSetIssue,
+ *base::Value::CreateNullValue());
}
void MediaRouterWebUIMessageHandler::UpdateMaxDialogHeight(int height) {
@@ -461,11 +469,9 @@ void MediaRouterWebUIMessageHandler::OnCreateRoute(
static_cast<MediaRouterUI*>(web_ui()->GetController());
if (media_router_ui->HasPendingRouteRequest()) {
DVLOG(1) << "UI already has pending route request. Ignoring.";
- Issue issue(
+ IssueInfo issue(
l10n_util::GetStringUTF8(IDS_MEDIA_ROUTER_ISSUE_PENDING_ROUTE),
- std::string(), IssueAction(IssueAction::TYPE_DISMISS),
- std::vector<IssueAction>(), std::string(), Issue::NOTIFICATION,
- false, -1);
+ IssueInfo::Action::DISMISS, IssueInfo::Severity::NOTIFICATION);
media_router_ui_->AddIssue(issue);
return;
}
@@ -508,7 +514,7 @@ void MediaRouterWebUIMessageHandler::OnActOnIssue(
Issue::Id issue_id;
int action_type_num = -1;
if (!args->GetDictionary(0, &args_dict) ||
- !args_dict->GetString("issueId", &issue_id) ||
+ !args_dict->GetInteger("issueId", &issue_id) ||
!args_dict->GetInteger("actionType", &action_type_num)) {
DVLOG(1) << "Unable to extract args.";
return;
@@ -517,8 +523,8 @@ void MediaRouterWebUIMessageHandler::OnActOnIssue(
DVLOG(1) << "Invalid action type: " << action_type_num;
return;
}
- IssueAction::Type action_type =
- static_cast<IssueAction::Type>(action_type_num);
+ IssueInfo::Action action_type =
+ static_cast<IssueInfo::Action>(action_type_num);
if (ActOnIssueType(action_type, args_dict))
DVLOG(1) << "ActOnIssueType failed for Issue ID " << issue_id;
media_router_ui_->ClearIssue(issue_id);
@@ -552,11 +558,9 @@ void MediaRouterWebUIMessageHandler::OnJoinRoute(const base::ListValue* args) {
static_cast<MediaRouterUI*>(web_ui()->GetController());
if (media_router_ui->HasPendingRouteRequest()) {
DVLOG(1) << "UI already has pending route request. Ignoring.";
- Issue issue(
+ IssueInfo issue(
l10n_util::GetStringUTF8(IDS_MEDIA_ROUTER_ISSUE_PENDING_ROUTE),
- std::string(), IssueAction(IssueAction::TYPE_DISMISS),
- std::vector<IssueAction>(), std::string(), Issue::NOTIFICATION,
- false, -1);
+ IssueInfo::Action::DISMISS, IssueInfo::Severity::NOTIFICATION);
media_router_ui_->AddIssue(issue);
return;
}
@@ -788,9 +792,9 @@ void MediaRouterWebUIMessageHandler::OnInitialDataReceived(
}
bool MediaRouterWebUIMessageHandler::ActOnIssueType(
- const IssueAction::Type& action_type,
+ IssueInfo::Action action_type,
const base::DictionaryValue* args) {
- if (action_type == IssueAction::TYPE_LEARN_MORE) {
+ if (action_type == IssueInfo::Action::LEARN_MORE) {
std::string learn_more_url = GetLearnMoreUrl(args);
if (learn_more_url.empty())
return false;

Powered by Google App Engine
This is Rietveld 408576698