Index: content/renderer/media/renderer_webmediaplayer_delegate.cc |
diff --git a/content/renderer/media/renderer_webmediaplayer_delegate.cc b/content/renderer/media/renderer_webmediaplayer_delegate.cc |
index b57fa3830cb1dd3275596a2a3b93fb73b31b9d2b..446db10f12ebf4728d871ca532a64fce4b7c5464 100644 |
--- a/content/renderer/media/renderer_webmediaplayer_delegate.cc |
+++ b/content/renderer/media/renderer_webmediaplayer_delegate.cc |
@@ -18,35 +18,30 @@ RendererWebMediaPlayerDelegate::RendererWebMediaPlayerDelegate( |
RendererWebMediaPlayerDelegate::~RendererWebMediaPlayerDelegate() {} |
-void RendererWebMediaPlayerDelegate::DidPlay(blink::WebMediaPlayer* player) { |
+void RendererWebMediaPlayerDelegate::AddObserver(Observer* observer) { |
+ observer_list_.AddObserver(observer); |
+} |
+ |
+void RendererWebMediaPlayerDelegate::DidPlay(Observer* observer) { |
has_played_media_ = true; |
- players_.insert(player); |
+ blink::WebMediaPlayer* player = observer->GetPlayer(); |
Send(new FrameHostMsg_MediaPlayingNotification( |
- routing_id(), reinterpret_cast<int64_t>(player), player->hasVideo(), |
+ routing_id(), reinterpret_cast<int64_t>(observer), player->hasVideo(), |
player->hasAudio(), player->isRemote(), |
base::TimeDelta::FromSecondsD(player->duration()))); |
} |
-void RendererWebMediaPlayerDelegate::DidPause(blink::WebMediaPlayer* player) { |
- DCHECK_EQ(players_.count(player), 1u); |
+void RendererWebMediaPlayerDelegate::DidPause(Observer* observer) { |
+ blink::WebMediaPlayer* player = observer->GetPlayer(); |
Send(new FrameHostMsg_MediaPausedNotification( |
- routing_id(), reinterpret_cast<int64_t>(player), |
+ routing_id(), reinterpret_cast<int64_t>(observer), |
player->currentTime() >= player->duration())); |
} |
-void RendererWebMediaPlayerDelegate::PlayerGone(blink::WebMediaPlayer* player) { |
- // No player may exist, so this might be a no-op. |
- players_.erase(player); |
- Send(new FrameHostMsg_MediaDestroyedNotification( |
- routing_id(), reinterpret_cast<int64_t>(player))); |
-} |
- |
-void RendererWebMediaPlayerDelegate::AddObserver(Observer* observer) { |
- observer_list_.AddObserver(observer); |
-} |
- |
-void RendererWebMediaPlayerDelegate::RemoveObserver(Observer* observer) { |
+void RendererWebMediaPlayerDelegate::PlayerGone(Observer* observer) { |
observer_list_.RemoveObserver(observer); |
+ Send(new FrameHostMsg_MediaDestroyedNotification( |
+ routing_id(), reinterpret_cast<int64_t>(observer))); |
} |
void RendererWebMediaPlayerDelegate::WasHidden() { |
@@ -74,24 +69,28 @@ bool RendererWebMediaPlayerDelegate::OnMessageReceived( |
void RendererWebMediaPlayerDelegate::OnMediaDelegatePause( |
int64_t player_cookie) { |
- // Translate the player cookie back to a WebMediaPlayer instance and make sure |
- // it's still a valid instance. |
- blink::WebMediaPlayer* player = |
- reinterpret_cast<blink::WebMediaPlayer*>(player_cookie); |
- if (players_.find(player) == players_.end()) |
+ LOG(ERROR) << "PAUSEDDDD"; |
+ |
+ // Translate the player cookie back to a Observer instance and make sure it's |
+ // still a valid instance. |
+ Observer* observer = reinterpret_cast<Observer*>(player_cookie); |
+ if (!observer_list_.HasObserver(observer)) |
return; |
- player->pause(); |
+ |
+ observer->OnPause(); |
} |
void RendererWebMediaPlayerDelegate::OnMediaDelegatePlay( |
int64_t player_cookie) { |
- // Translate the player cookie back to a WebMediaPlayer instance and make sure |
- // it's still a valid instance. |
- blink::WebMediaPlayer* player = |
- reinterpret_cast<blink::WebMediaPlayer*>(player_cookie); |
- if (players_.find(player) == players_.end()) |
+ LOG(ERROR) << "PLAYEEED"; |
+ |
+ // Translate the player cookie back to a Observer instance and make sure it's |
+ // still a valid instance. |
+ Observer* observer = reinterpret_cast<Observer*>(player_cookie); |
+ if (!observer_list_.HasObserver(observer)) |
return; |
- player->play(); |
+ |
+ observer->OnPlay(); |
} |
} // namespace media |