Index: chrome/browser/media/router/media_router_base.h |
diff --git a/chrome/browser/media/router/media_router_base.h b/chrome/browser/media/router/media_router_base.h |
index a4c46521b413558b19631f82bee45976080809b8..b5473e47243a186fbfc25176b6f6af42f761252f 100644 |
--- a/chrome/browser/media/router/media_router_base.h |
+++ b/chrome/browser/media/router/media_router_base.h |
@@ -5,7 +5,9 @@ |
#ifndef CHROME_BROWSER_MEDIA_ROUTER_MEDIA_ROUTER_BASE_H_ |
#define CHROME_BROWSER_MEDIA_ROUTER_MEDIA_ROUTER_BASE_H_ |
+#include <memory> |
#include <set> |
+#include <string> |
#include <vector> |
#include "base/callback_list.h" |
@@ -15,6 +17,11 @@ |
#include "chrome/browser/media/router/media_route.h" |
#include "chrome/browser/media/router/media_router.h" |
#include "chrome/browser/media/router/media_routes_observer.h" |
+#if !defined(OS_ANDROID) |
+#include "chrome/browser/ui/toolbar/media_router_action_controller.h" |
+#endif |
+ |
+class Profile; |
namespace media_router { |
@@ -32,13 +39,18 @@ class MediaRouterBase : public MediaRouter { |
// This will terminate all incognito media routes. |
void OnIncognitoProfileShutdown() override; |
+#if !defined(OS_ANDROID) |
+ // Returns the controller for media router toolbar action icon. |
+ MediaRouterActionController* GetActionController() override; |
+#endif |
+ |
protected: |
FRIEND_TEST_ALL_PREFIXES(MediaRouterMojoImplTest, |
PresentationConnectionStateChangedCallback); |
FRIEND_TEST_ALL_PREFIXES(MediaRouterMojoImplTest, |
PresentationConnectionStateChangedCallbackRemoved); |
- MediaRouterBase(); |
+ explicit MediaRouterBase(Profile* profile); |
// Generates a unique presentation id. Shared between Android and desktop. |
static std::string CreatePresentationId(); |
@@ -83,6 +95,14 @@ class MediaRouterBase : public MediaRouter { |
std::unique_ptr<InternalMediaRoutesObserver> internal_routes_observer_; |
bool initialized_; |
+ Profile* profile_; |
+ |
+#if !defined(OS_ANDROID) |
+ // TODO(takumif): Move ownership of |action_controller_| to another class in |
+ // chrome/browser/ui. |
+ std::unique_ptr<MediaRouterActionController> action_controller_; |
+#endif |
+ |
DISALLOW_COPY_AND_ASSIGN(MediaRouterBase); |
}; |