summaryrefslogtreecommitdiffstats
path: root/content/renderer
diff options
context:
space:
mode:
authorsandersd <sandersd@chromium.org>2015-12-11 17:18:06 -0800
committerCommit bot <commit-bot@chromium.org>2015-12-12 01:18:48 +0000
commit1e49fb6d52eca60fb58a7fe88f29d579bb49b0fa (patch)
tree105a59864d2bda40aaa4de65d0b02c57f488062f /content/renderer
parent6134f5815d13c1951d8a0b18d8b3dfdc6ed8669b (diff)
downloadchromium_src-1e49fb6d52eca60fb58a7fe88f29d579bb49b0fa.zip
chromium_src-1e49fb6d52eca60fb58a7fe88f29d579bb49b0fa.tar.gz
chromium_src-1e49fb6d52eca60fb58a7fe88f29d579bb49b0fa.tar.bz2
Implement WMPI suspend/resume.
With this change, WMPI translates WasShown()/WasHidden() on RenderFrameImpl to pipeline Suspend()/Resume(). BUG=516850 Review URL: https://codereview.chromium.org/1473733002 Cr-Commit-Position: refs/heads/master@{#364854}
Diffstat (limited to 'content/renderer')
-rw-r--r--content/renderer/media/renderer_webmediaplayer_delegate.cc16
-rw-r--r--content/renderer/media/renderer_webmediaplayer_delegate.h8
2 files changed, 24 insertions, 0 deletions
diff --git a/content/renderer/media/renderer_webmediaplayer_delegate.cc b/content/renderer/media/renderer_webmediaplayer_delegate.cc
index e573107..e811655 100644
--- a/content/renderer/media/renderer_webmediaplayer_delegate.cc
+++ b/content/renderer/media/renderer_webmediaplayer_delegate.cc
@@ -31,4 +31,20 @@ void RendererWebMediaPlayerDelegate::PlayerGone(blink::WebMediaPlayer* player) {
DidPause(player);
}
+void RendererWebMediaPlayerDelegate::AddObserver(Observer* observer) {
+ observer_list_.AddObserver(observer);
+}
+
+void RendererWebMediaPlayerDelegate::RemoveObserver(Observer* observer) {
+ observer_list_.RemoveObserver(observer);
+}
+
+void RendererWebMediaPlayerDelegate::WasHidden() {
+ FOR_EACH_OBSERVER(Observer, observer_list_, OnHidden());
+}
+
+void RendererWebMediaPlayerDelegate::WasShown() {
+ FOR_EACH_OBSERVER(Observer, observer_list_, OnShown());
+}
+
} // namespace media
diff --git a/content/renderer/media/renderer_webmediaplayer_delegate.h b/content/renderer/media/renderer_webmediaplayer_delegate.h
index 76a6686..0033aad 100644
--- a/content/renderer/media/renderer_webmediaplayer_delegate.h
+++ b/content/renderer/media/renderer_webmediaplayer_delegate.h
@@ -7,6 +7,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
+#include "base/observer_list.h"
#include "content/public/renderer/render_frame_observer.h"
#include "media/blink/webmediaplayer_delegate.h"
@@ -33,9 +34,16 @@ class RendererWebMediaPlayerDelegate
void DidPlay(blink::WebMediaPlayer* player) override;
void DidPause(blink::WebMediaPlayer* player) override;
void PlayerGone(blink::WebMediaPlayer* player) override;
+ void AddObserver(Observer* observer) override;
+ void RemoveObserver(Observer* observer) override;
+
+ // content::RenderFrameObserver overrides.
+ void WasHidden() override;
+ void WasShown() override;
private:
bool has_played_media_ = false;
+ base::ObserverList<Observer> observer_list_;
DISALLOW_COPY_AND_ASSIGN(RendererWebMediaPlayerDelegate);
};