Index: Source/modules/presentation/PresentationSession.cpp |
diff --git a/Source/modules/presentation/PresentationSession.cpp b/Source/modules/presentation/PresentationSession.cpp |
index a7920a0747f08f762c06e42e10cc656b282f16e3..97012e683c7d10462acdf70f8d5fd755cb5c1cf7 100644 |
--- a/Source/modules/presentation/PresentationSession.cpp |
+++ b/Source/modules/presentation/PresentationSession.cpp |
@@ -5,12 +5,17 @@ |
#include "config.h" |
#include "modules/presentation/PresentationSession.h" |
+#include "core/dom/Document.h" |
+#include "core/frame/LocalFrame.h" |
#include "modules/EventTargetModules.h" |
+#include "public/platform/modules/presentation/WebPresentationSessionClient.h" |
namespace blink { |
-PresentationSession::PresentationSession(ExecutionContext* executionContext) |
- : ContextLifecycleObserver(executionContext) |
+PresentationSession::PresentationSession(LocalFrame* frame, WebPresentationSessionClient* client) |
mlamouri (slow - plz ping)
2015/02/23 13:46:10
Is it correct that |client| will end up leaking?
whywhat
2015/02/25 14:11:06
It's not clear from here but its implementation (P
|
+ : DOMWindowProperty(frame) |
+ , m_id(client->getId()) |
+ , m_state("disconnected") |
{ |
} |
@@ -19,9 +24,9 @@ PresentationSession::~PresentationSession() |
} |
// static |
-PresentationSession* PresentationSession::create(ExecutionContext* executionContext) |
+PresentationSession* PresentationSession::create(LocalFrame* frame, WebPresentationSessionClient* client) |
{ |
- return new PresentationSession(executionContext); |
+ return new PresentationSession(frame, client); |
} |
const AtomicString& PresentationSession::interfaceName() const |
@@ -31,13 +36,14 @@ const AtomicString& PresentationSession::interfaceName() const |
ExecutionContext* PresentationSession::executionContext() const |
{ |
- return ContextLifecycleObserver::executionContext(); |
-} |
+ if (!frame()) |
+ return nullptr; |
+ return frame()->document();} |
DEFINE_TRACE(PresentationSession) |
{ |
RefCountedGarbageCollectedEventTargetWithInlineData<PresentationSession>::trace(visitor); |
- ContextLifecycleObserver::trace(visitor); |
+ DOMWindowProperty::trace(visitor); |
} |
void PresentationSession::postMessage(const String& message) |