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

Unified Diff: media/blink/webmediaplayer_impl.cc

Issue 1570043002: Implement MediaSession on top of the WebMediaPlayerDelegate. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@media_session
Patch Set: Merge. Cleanup. Fix RequestPlay. Created 4 years, 11 months 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: media/blink/webmediaplayer_impl.cc
diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc
index dc174674c5d3224d7450c56e611e13c157da2230..a8a5e2427221e8d674e0ba2ca8da4e41066aa302 100644
--- a/media/blink/webmediaplayer_impl.cc
+++ b/media/blink/webmediaplayer_impl.cc
@@ -213,10 +213,8 @@ WebMediaPlayerImpl::~WebMediaPlayerImpl() {
DCHECK(main_task_runner_->BelongsToCurrentThread());
- if (delegate_) {
- delegate_->RemoveObserver(this);
+ if (delegate_)
delegate_->PlayerGone(this);
- }
// Abort any pending IO so stopping the pipeline doesn't get blocked.
if (data_source_)
@@ -1117,6 +1115,16 @@ void WebMediaPlayerImpl::OnShown() {
Resume();
}
+void WebMediaPlayerImpl::OnPlay() {
+ play();
+ client_->playbackStateChanged();
+}
+
+void WebMediaPlayerImpl::OnPause() {
+ pause();
+ client_->playbackStateChanged();
+}
+
void WebMediaPlayerImpl::Resume() {
DCHECK(main_task_runner_->BelongsToCurrentThread());
CHECK(suspended_);
@@ -1331,8 +1339,10 @@ void WebMediaPlayerImpl::UpdatePausedTime() {
}
void WebMediaPlayerImpl::NotifyPlaybackStarted() {
- if (delegate_)
- delegate_->DidPlay(this);
+ if (delegate_) {
+ delegate_->DidPlay(this, hasVideo(), hasAudio(), false,
+ pipeline_.GetMediaDuration());
+ }
if (!memory_usage_reporting_timer_.IsRunning()) {
memory_usage_reporting_timer_.Start(FROM_HERE,
base::TimeDelta::FromSeconds(2), this,
@@ -1342,7 +1352,7 @@ void WebMediaPlayerImpl::NotifyPlaybackStarted() {
void WebMediaPlayerImpl::NotifyPlaybackPaused() {
if (delegate_)
- delegate_->DidPause(this);
+ delegate_->DidPause(this, ended_);
memory_usage_reporting_timer_.Stop();
ReportMemoryUsage();
}

Powered by Google App Engine
This is Rietveld 408576698