OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef DefaultSessionStartEvent_h | 5 #ifndef DefaultSessionStartEvent_h |
6 #define DefaultSessionStartEvent_h | 6 #define DefaultSessionStartEvent_h |
7 | 7 |
8 #include "modules/EventModules.h" | 8 #include "modules/EventModules.h" |
9 #include "modules/presentation/PresentationSession.h" | 9 #include "modules/presentation/PresentationSession.h" |
10 #include "platform/heap/Handle.h" | 10 #include "platform/heap/Handle.h" |
11 | 11 |
12 namespace blink { | 12 namespace blink { |
13 | 13 |
14 class DefaultSessionStartEventInit; | 14 class DefaultSessionStartEventInit; |
15 | 15 |
16 // Presentation API event to be fired when a presentation has been triggered | 16 // Presentation API event to be fired when a presentation has been triggered |
17 // by the embedder using the default presentation URL and id. | 17 // by the embedder using the default presentation URL and id. |
18 // See https://code.google.com/p/chromium/issues/detail?id=459001 for details. | 18 // See https://code.google.com/p/chromium/issues/detail?id=459001 for details. |
19 class DefaultSessionStartEvent final : public Event { | 19 class DefaultSessionStartEvent final : public Event { |
20 DEFINE_WRAPPERTYPEINFO(); | 20 DEFINE_WRAPPERTYPEINFO(); |
21 public: | 21 public: |
22 virtual ~DefaultSessionStartEvent(); | 22 ~DefaultSessionStartEvent() override; |
23 | 23 |
24 static PassRefPtrWillBeRawPtr<DefaultSessionStartEvent> create() | 24 static PassRefPtrWillBeRawPtr<DefaultSessionStartEvent> create() |
25 { | 25 { |
26 return adoptRefWillBeNoop(new DefaultSessionStartEvent); | 26 return adoptRefWillBeNoop(new DefaultSessionStartEvent); |
27 } | 27 } |
28 static PassRefPtrWillBeRawPtr<DefaultSessionStartEvent> create(const AtomicS
tring& eventType, PresentationSession* session) | 28 static PassRefPtrWillBeRawPtr<DefaultSessionStartEvent> create(const AtomicS
tring& eventType, PresentationSession* session) |
29 { | 29 { |
30 return adoptRefWillBeNoop(new DefaultSessionStartEvent(eventType, sessio
n)); | 30 return adoptRefWillBeNoop(new DefaultSessionStartEvent(eventType, sessio
n)); |
31 } | 31 } |
32 static PassRefPtrWillBeRawPtr<DefaultSessionStartEvent> create(const AtomicS
tring& eventType, const DefaultSessionStartEventInit& initializer) | 32 static PassRefPtrWillBeRawPtr<DefaultSessionStartEvent> create(const AtomicS
tring& eventType, const DefaultSessionStartEventInit& initializer) |
33 { | 33 { |
34 return adoptRefWillBeNoop(new DefaultSessionStartEvent(eventType, initia
lizer)); | 34 return adoptRefWillBeNoop(new DefaultSessionStartEvent(eventType, initia
lizer)); |
35 } | 35 } |
36 | 36 |
37 PresentationSession* session() { return m_session.get(); } | 37 PresentationSession* session() { return m_session.get(); } |
38 | 38 |
39 virtual const AtomicString& interfaceName() const override; | 39 const AtomicString& interfaceName() const override; |
40 | 40 |
41 DECLARE_VIRTUAL_TRACE(); | 41 DECLARE_VIRTUAL_TRACE(); |
42 | 42 |
43 private: | 43 private: |
44 DefaultSessionStartEvent(); | 44 DefaultSessionStartEvent(); |
45 DefaultSessionStartEvent(const AtomicString& eventType, PresentationSession*
); | 45 DefaultSessionStartEvent(const AtomicString& eventType, PresentationSession*
); |
46 DefaultSessionStartEvent(const AtomicString& eventType, const DefaultSession
StartEventInit& initializer); | 46 DefaultSessionStartEvent(const AtomicString& eventType, const DefaultSession
StartEventInit& initializer); |
47 | 47 |
48 PersistentWillBeMember<PresentationSession> m_session; | 48 PersistentWillBeMember<PresentationSession> m_session; |
49 }; | 49 }; |
50 | 50 |
51 DEFINE_TYPE_CASTS(DefaultSessionStartEvent, Event, event, event->interfaceName()
== EventNames::DefaultSessionStartEvent, event.interfaceName() == EventNames::D
efaultSessionStartEvent); | 51 DEFINE_TYPE_CASTS(DefaultSessionStartEvent, Event, event, event->interfaceName()
== EventNames::DefaultSessionStartEvent, event.interfaceName() == EventNames::D
efaultSessionStartEvent); |
52 | 52 |
53 } // namespace blink | 53 } // namespace blink |
54 | 54 |
55 #endif // DefaultSessionStartEvent_h | 55 #endif // DefaultSessionStartEvent_h |
OLD | NEW |