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

Side by Side Diff: chrome/browser/ui/toolbar/media_router_action.cc

Issue 1423683002: [Media Router] Add P1 UMA metrics for Media Router. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/toolbar/media_router_action.h" 5 #include "chrome/browser/ui/toolbar/media_router_action.h"
6 6
7 #include "base/metrics/histogram.h"
Ilya Sherman 2015/10/23 20:40:22 nit: Please include histogram_macros instead
apacible 2015/10/23 22:52:55 Done (moved to media_router_metrics).
8 #include "base/metrics/user_metrics.h"
7 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
8 #include "chrome/browser/media/router/issue.h" 10 #include "chrome/browser/media/router/issue.h"
9 #include "chrome/browser/media/router/media_route.h" 11 #include "chrome/browser/media/router/media_route.h"
10 #include "chrome/browser/media/router/media_router.h" 12 #include "chrome/browser/media/router/media_router.h"
11 #include "chrome/browser/media/router/media_router_factory.h" 13 #include "chrome/browser/media/router/media_router_factory.h"
14 #include "chrome/browser/media/router/media_router_metrics_enums.h"
12 #include "chrome/browser/media/router/media_router_mojo_impl.h" 15 #include "chrome/browser/media/router/media_router_mojo_impl.h"
13 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
14 #include "chrome/browser/ui/browser.h" 17 #include "chrome/browser/ui/browser.h"
15 #include "chrome/browser/ui/tabs/tab_strip_model.h" 18 #include "chrome/browser/ui/tabs/tab_strip_model.h"
16 #include "chrome/browser/ui/toolbar/component_toolbar_actions_factory.h" 19 #include "chrome/browser/ui/toolbar/component_toolbar_actions_factory.h"
17 #include "chrome/browser/ui/toolbar/media_router_action_platform_delegate.h" 20 #include "chrome/browser/ui/toolbar/media_router_action_platform_delegate.h"
18 #include "chrome/browser/ui/toolbar/toolbar_action_view_delegate.h" 21 #include "chrome/browser/ui/toolbar/toolbar_action_view_delegate.h"
19 #include "chrome/browser/ui/webui/media_router/media_router_dialog_controller_im pl.h" 22 #include "chrome/browser/ui/webui/media_router/media_router_dialog_controller_im pl.h"
20 #include "chrome/grit/generated_resources.h" 23 #include "chrome/grit/generated_resources.h"
21 #include "grit/theme_resources.h" 24 #include "grit/theme_resources.h"
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 126
124 gfx::NativeView MediaRouterAction::GetPopupNativeView() { 127 gfx::NativeView MediaRouterAction::GetPopupNativeView() {
125 return nullptr; 128 return nullptr;
126 } 129 }
127 130
128 ui::MenuModel* MediaRouterAction::GetContextMenu() { 131 ui::MenuModel* MediaRouterAction::GetContextMenu() {
129 return contextual_menu_.menu_model(); 132 return contextual_menu_.menu_model();
130 } 133 }
131 134
132 bool MediaRouterAction::ExecuteAction(bool by_user) { 135 bool MediaRouterAction::ExecuteAction(bool by_user) {
136 base::RecordAction(base::UserMetricsAction("MediaRouter_Icon_Click"));
137
133 GetMediaRouterDialogController()->ShowMediaRouterDialog(); 138 GetMediaRouterDialogController()->ShowMediaRouterDialog();
134 if (GetPlatformDelegate()) 139 if (GetPlatformDelegate()) {
135 GetPlatformDelegate()->CloseOverflowMenuIfOpen(); 140 if (GetPlatformDelegate()->CloseOverflowMenuIfOpen()) {
141 UMA_HISTOGRAM_ENUMERATION("MediaRouter.Icon.Click.Location",
142 media_router::OVERFLOW_MENU,
143 media_router::TOTAL_COUNT);
144 } else {
145 UMA_HISTOGRAM_ENUMERATION("MediaRouter.Icon.Click.Location",
146 media_router::TOOLBAR,
147 media_router::TOTAL_COUNT);
Ilya Sherman 2015/10/23 20:40:22 nit: Please create a wrapper function for logging
apacible 2015/10/23 22:52:54 Done.
148 }
149 }
136 return true; 150 return true;
137 } 151 }
138 152
139 void MediaRouterAction::UpdateState() { 153 void MediaRouterAction::UpdateState() {
140 if (delegate_) 154 if (delegate_)
141 delegate_->UpdateState(); 155 delegate_->UpdateState();
142 } 156 }
143 157
144 bool MediaRouterAction::DisabledClickOpensMenu() const { 158 bool MediaRouterAction::DisabledClickOpensMenu() const {
145 return false; 159 return false;
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
226 if (issue_) { 240 if (issue_) {
227 if (issue_->severity() == media_router::Issue::FATAL) 241 if (issue_->severity() == media_router::Issue::FATAL)
228 return &media_router_error_icon_; 242 return &media_router_error_icon_;
229 if (issue_->severity() == media_router::Issue::WARNING) 243 if (issue_->severity() == media_router::Issue::WARNING)
230 return &media_router_warning_icon_; 244 return &media_router_warning_icon_;
231 } 245 }
232 246
233 return has_local_route_ ? 247 return has_local_route_ ?
234 &media_router_active_icon_ : &media_router_idle_icon_; 248 &media_router_active_icon_ : &media_router_idle_icon_;
235 } 249 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698