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

Unified Diff: third_party/WebKit/Source/modules/remoteplayback/RemotePlayback.cpp

Issue 2484973005: [Blink, RemotePlaybackAPI] Create WebRemotePlaybackClient in HTMLMediaElement ctor to avoid lazy in… (Closed)
Patch Set: Removed <v8.h> from HTMLMediaElement.cpp Created 4 years, 1 month 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: third_party/WebKit/Source/modules/remoteplayback/RemotePlayback.cpp
diff --git a/third_party/WebKit/Source/modules/remoteplayback/RemotePlayback.cpp b/third_party/WebKit/Source/modules/remoteplayback/RemotePlayback.cpp
index 86c69e2d965117b42174b68a91101bc8e12f2349..55de180d26dac7e71aa32dc4a1eefae4f55066b9 100644
--- a/third_party/WebKit/Source/modules/remoteplayback/RemotePlayback.cpp
+++ b/third_party/WebKit/Source/modules/remoteplayback/RemotePlayback.cpp
@@ -40,21 +40,12 @@ const AtomicString& remotePlaybackStateToString(WebRemotePlaybackState state) {
} // anonymous namespace
// static
-RemotePlayback* RemotePlayback::create(ScriptState* scriptState,
- HTMLMediaElement& element) {
- DCHECK(element.document().frame());
- DCHECK(scriptState);
-
- RemotePlayback* remotePlayback = new RemotePlayback(scriptState, element);
- element.setRemotePlaybackClient(remotePlayback);
-
- return remotePlayback;
+RemotePlayback* RemotePlayback::create(HTMLMediaElement& element) {
+ return new RemotePlayback(element);
}
-RemotePlayback::RemotePlayback(ScriptState* scriptState,
- HTMLMediaElement& element)
+RemotePlayback::RemotePlayback(HTMLMediaElement& element)
: ActiveScriptWrappable(this),
- m_scriptState(scriptState),
m_state(element.isPlayingRemotely()
? WebRemotePlaybackState::Connected
: WebRemotePlaybackState::Disconnected),
@@ -70,9 +61,9 @@ ExecutionContext* RemotePlayback::getExecutionContext() const {
}
ScriptPromise RemotePlayback::watchAvailability(
+ ScriptState* scriptState,
RemotePlaybackAvailabilityCallback* callback) {
- ScriptPromiseResolver* resolver =
- ScriptPromiseResolver::create(m_scriptState.get());
+ ScriptPromiseResolver* resolver = ScriptPromiseResolver::create(scriptState);
ScriptPromise promise = resolver->promise();
if (m_mediaElement->fastHasAttribute(HTMLNames::disableremoteplaybackAttr)) {
@@ -108,9 +99,9 @@ ScriptPromise RemotePlayback::watchAvailability(
return promise;
}
-ScriptPromise RemotePlayback::cancelWatchAvailability(int id) {
- ScriptPromiseResolver* resolver =
- ScriptPromiseResolver::create(m_scriptState.get());
+ScriptPromise RemotePlayback::cancelWatchAvailability(ScriptState* scriptState,
+ int id) {
+ ScriptPromiseResolver* resolver = ScriptPromiseResolver::create(scriptState);
ScriptPromise promise = resolver->promise();
if (m_mediaElement->fastHasAttribute(HTMLNames::disableremoteplaybackAttr)) {
@@ -132,9 +123,9 @@ ScriptPromise RemotePlayback::cancelWatchAvailability(int id) {
return promise;
}
-ScriptPromise RemotePlayback::cancelWatchAvailability() {
- ScriptPromiseResolver* resolver =
- ScriptPromiseResolver::create(m_scriptState.get());
+ScriptPromise RemotePlayback::cancelWatchAvailability(
+ ScriptState* scriptState) {
+ ScriptPromiseResolver* resolver = ScriptPromiseResolver::create(scriptState);
ScriptPromise promise = resolver->promise();
if (m_mediaElement->fastHasAttribute(HTMLNames::disableremoteplaybackAttr)) {
@@ -149,11 +140,10 @@ ScriptPromise RemotePlayback::cancelWatchAvailability() {
return promise;
}
-ScriptPromise RemotePlayback::prompt() {
+ScriptPromise RemotePlayback::prompt(ScriptState* scriptState) {
// TODO(avayvod): implement steps 5, 8, 9 of the algorithm.
// https://crbug.com/647441
- ScriptPromiseResolver* resolver =
- ScriptPromiseResolver::create(m_scriptState.get());
+ ScriptPromiseResolver* resolver = ScriptPromiseResolver::create(scriptState);
ScriptPromise promise = resolver->promise();
if (m_mediaElement->fastHasAttribute(HTMLNames::disableremoteplaybackAttr)) {

Powered by Google App Engine
This is Rietveld 408576698