| 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 45c0f261c24156c24a2fd1b0b1e1d1e23d5d76f6..430e3b60b8fd5f84065ec86d67c26607474088d1 100644
|
| --- a/chrome/browser/media/router/media_router_base.h
|
| +++ b/chrome/browser/media/router/media_router_base.h
|
| @@ -39,6 +39,8 @@ class MediaRouterBase : public MediaRouter {
|
| PresentationConnectionStateChangedCallbackRemoved);
|
| FRIEND_TEST_ALL_PREFIXES(MediaRouterBaseTest, CreatePresentationIds);
|
| FRIEND_TEST_ALL_PREFIXES(MediaRouterBaseTest, NotifyCallbacks);
|
| + FRIEND_TEST_ALL_PREFIXES(MediaRouterBaseTest,
|
| + NotifyCallbacksPendingStateChange);
|
|
|
| MediaRouterBase();
|
|
|
| @@ -52,6 +54,9 @@ class MediaRouterBase : public MediaRouter {
|
| const MediaRoute::Id& route_id,
|
| content::PresentationConnectionCloseReason reason,
|
| const std::string& message);
|
| + void NotifyPresentationConnectionStateChange(
|
| + const MediaRoute::Id& route_id,
|
| + const content::PresentationConnectionStateChangeInfo& info);
|
|
|
| // Returns true when there is at least one MediaRoute that can be returned by
|
| // JoinRoute().
|
| @@ -65,6 +70,11 @@ class MediaRouterBase : public MediaRouter {
|
| std::unique_ptr<PresentationConnectionStateChangedCallbacks>>
|
| presentation_connection_state_callbacks_;
|
|
|
| + // Stores ConnectionStateChange events fired before
|
| + // PresentationConnectionStateChangedCallback is registered.
|
| + std::map<MediaRoute::Id, content::PresentationConnectionStateChangeInfo>
|
| + queued_state_changes_;
|
| +
|
| private:
|
| friend class MediaRouterFactory;
|
| friend class MediaRouterMojoTest;
|
| @@ -81,7 +91,6 @@ class MediaRouterBase : public MediaRouter {
|
|
|
| // KeyedService
|
| void Shutdown() override;
|
| -
|
| std::unique_ptr<InternalMediaRoutesObserver> internal_routes_observer_;
|
| bool initialized_;
|
|
|
|
|