OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * Copyright (C) 2004, 2006, 2007, 2008, 2009, 2012 Apple Inc. All rights reserv ed. | 4 * Copyright (C) 2004, 2006, 2007, 2008, 2009, 2012 Apple Inc. All rights reserv ed. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
61 bool canContainRangeEndPoint() const { return false; } | 61 bool canContainRangeEndPoint() const { return false; } |
62 | 62 |
63 bool canProcessDrag() const; | 63 bool canProcessDrag() const; |
64 | 64 |
65 virtual bool willRespondToMouseClickEvents() OVERRIDE; | 65 virtual bool willRespondToMouseClickEvents() OVERRIDE; |
66 | 66 |
67 virtual bool isPlugInImageElement() const { return false; } | 67 virtual bool isPlugInImageElement() const { return false; } |
68 | 68 |
69 virtual void removeAllEventListeners() OVERRIDE FINAL; | 69 virtual void removeAllEventListeners() OVERRIDE FINAL; |
70 | 70 |
71 void createPluginWithoutRenderer(const String& mimeType); | |
72 // Allows persisted plugins to be registered by their creator. Call this | |
73 // function with an argument of 0 to clear the persisted plugin. | |
74 void setPlugin(PassRefPtr<Widget>); | |
75 PassRefPtr<Widget> plugin(); | |
eseidel
2013/10/28 16:59:29
Unless this is passing ownership, I doubt you want
| |
76 | |
71 protected: | 77 protected: |
72 HTMLPlugInElement(const QualifiedName& tagName, Document&); | 78 HTMLPlugInElement(const QualifiedName& tagName, Document&); |
73 | 79 |
74 virtual void detach(const AttachContext& = AttachContext()) OVERRIDE; | 80 virtual void detach(const AttachContext& = AttachContext()) OVERRIDE; |
75 virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE; | 81 virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE; |
76 virtual void collectStyleForPresentationAttribute(const QualifiedName&, cons t AtomicString&, MutableStylePropertySet*) OVERRIDE; | 82 virtual void collectStyleForPresentationAttribute(const QualifiedName&, cons t AtomicString&, MutableStylePropertySet*) OVERRIDE; |
77 | 83 |
78 virtual bool useFallbackContent() const { return false; } | 84 virtual bool useFallbackContent() const { return false; } |
79 | 85 |
80 virtual bool dispatchBeforeLoadEvent(const String& sourceURL) OVERRIDE; | 86 virtual bool dispatchBeforeLoadEvent(const String& sourceURL) OVERRIDE; |
(...skipping 13 matching lines...) Expand all Loading... | |
94 virtual bool rendererIsFocusable() const OVERRIDE; | 100 virtual bool rendererIsFocusable() const OVERRIDE; |
95 | 101 |
96 virtual bool isKeyboardFocusable() const OVERRIDE; | 102 virtual bool isKeyboardFocusable() const OVERRIDE; |
97 virtual bool isPluginElement() const; | 103 virtual bool isPluginElement() const; |
98 | 104 |
99 mutable ScriptInstance m_instance; | 105 mutable ScriptInstance m_instance; |
100 NPObject* m_NPObject; | 106 NPObject* m_NPObject; |
101 bool m_isCapturingMouseEvents; | 107 bool m_isCapturingMouseEvents; |
102 bool m_inBeforeLoadEventHandler; | 108 bool m_inBeforeLoadEventHandler; |
103 DisplayState m_displayState; | 109 DisplayState m_displayState; |
110 | |
111 // Keep track of any plugins that wish to be persisted. | |
112 RefPtr<Widget> m_plugin; | |
113 String m_pluginMimeType; | |
104 }; | 114 }; |
105 | 115 |
106 inline HTMLPlugInElement* toHTMLPlugInElement(Node* node) | 116 inline HTMLPlugInElement* toHTMLPlugInElement(Node* node) |
107 { | 117 { |
108 ASSERT_WITH_SECURITY_IMPLICATION(!node || node->isPluginElement()); | 118 ASSERT_WITH_SECURITY_IMPLICATION(!node || node->isPluginElement()); |
109 return static_cast<HTMLPlugInElement*>(node); | 119 return static_cast<HTMLPlugInElement*>(node); |
110 } | 120 } |
111 | 121 |
112 inline const HTMLPlugInElement* toHTMLPlugInElement(const Node* node) | 122 inline const HTMLPlugInElement* toHTMLPlugInElement(const Node* node) |
113 { | 123 { |
114 ASSERT_WITH_SECURITY_IMPLICATION(!node || node->isPluginElement()); | 124 ASSERT_WITH_SECURITY_IMPLICATION(!node || node->isPluginElement()); |
115 return static_cast<const HTMLPlugInElement*>(node); | 125 return static_cast<const HTMLPlugInElement*>(node); |
116 } | 126 } |
117 | 127 |
118 // This will catch anyone doing an unnecessary cast. | 128 // This will catch anyone doing an unnecessary cast. |
119 void toHTMLPlugInElement(const HTMLPlugInElement*); | 129 void toHTMLPlugInElement(const HTMLPlugInElement*); |
120 | 130 |
121 } // namespace WebCore | 131 } // namespace WebCore |
122 | 132 |
123 #endif // HTMLPlugInElement_h | 133 #endif // HTMLPlugInElement_h |
OLD | NEW |