Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / modules / speech / DOMWindowSpeechSynthesis.h
index d3afe89..b13db9b 100644 (file)
 #include "core/frame/DOMWindowProperty.h"
 #include "modules/speech/SpeechSynthesis.h"
 #include "platform/Supplementable.h"
+#include "platform/heap/Handle.h"
 
-namespace WebCore {
+namespace blink {
 
-class DOMWindow;
+class LocalDOMWindow;
 
-class DOMWindowSpeechSynthesis : public Supplement<DOMWindow>, public DOMWindowProperty {
+class DOMWindowSpeechSynthesis final : public NoBaseWillBeGarbageCollected<DOMWindowSpeechSynthesis>, public WillBeHeapSupplement<LocalDOMWindow>, public DOMWindowProperty {
+    WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(DOMWindowSpeechSynthesis);
+    DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(DOMWindowSpeechSynthesis);
 public:
-    virtual ~DOMWindowSpeechSynthesis();
+    static SpeechSynthesis* speechSynthesis(LocalDOMWindow&);
+    static DOMWindowSpeechSynthesis& from(LocalDOMWindow&);
 
-    static SpeechSynthesis* speechSynthesis(DOMWindow*);
-    static DOMWindowSpeechSynthesis* from(DOMWindow*);
+    void trace(Visitor*);
 
 private:
-    explicit DOMWindowSpeechSynthesis(DOMWindow*);
+    explicit DOMWindowSpeechSynthesis(LocalDOMWindow&);
 
     SpeechSynthesis* speechSynthesis();
     static const char* supplementName();
 
-    RefPtr<SpeechSynthesis> m_speechSynthesis;
+    PersistentWillBeMember<SpeechSynthesis> m_speechSynthesis;
 };
 
-} // namespace WebCore
+} // namespace blink
 
 #endif // DOMWindowSpeechSynthesis_h