| 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 | 4 * Copyright (C) 2004, 2006, 2007, 2008, 2009, 2012 Apple Inc. All rights |
| 5 * reserved. | 5 * reserved. |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 43 | 43 |
| 44 class CORE_EXPORT HTMLPlugInElement : public HTMLFrameOwnerElement { | 44 class CORE_EXPORT HTMLPlugInElement : public HTMLFrameOwnerElement { |
| 45 public: | 45 public: |
| 46 ~HTMLPlugInElement() override; | 46 ~HTMLPlugInElement() override; |
| 47 DECLARE_VIRTUAL_TRACE(); | 47 DECLARE_VIRTUAL_TRACE(); |
| 48 | 48 |
| 49 void SetFocused(bool, WebFocusType) override; | 49 void SetFocused(bool, WebFocusType) override; |
| 50 void ResetInstance(); | 50 void ResetInstance(); |
| 51 // TODO(dcheng): Consider removing this, since HTMLEmbedElementLegacyCall | 51 // TODO(dcheng): Consider removing this, since HTMLEmbedElementLegacyCall |
| 52 // and HTMLObjectElementLegacyCall usage is extremely low. | 52 // and HTMLObjectElementLegacyCall usage is extremely low. |
| 53 SharedPersistent<v8::Object>* PluginWrapper(); | 53 v8::Local<v8::Object> PluginWrapper(); |
| 54 // TODO(joelhockey): Clean up pluginWidget and plugin (maybe also | 54 // TODO(joelhockey): Clean up pluginWidget and plugin (maybe also |
| 55 // pluginWrapper). It would be good to remove and/or rename some of these. | 55 // pluginWrapper). It would be good to remove and/or rename some of these. |
| 56 // pluginWidget and plugin both return the plugin that is stored on this | 56 // pluginWidget and plugin both return the plugin that is stored on this |
| 57 // element. However pluginWidget will synchronously create the plugin if | 57 // element. However pluginWidget will synchronously create the plugin if |
| 58 // required by calling layoutPartForJSBindings. Possibly the pluginWidget | 58 // required by calling layoutPartForJSBindings. Possibly the pluginWidget |
| 59 // code can be inlined into pluginWrapper. | 59 // code can be inlined into pluginWrapper. |
| 60 PluginView* PluginWidget() const; | 60 PluginView* PluginWidget() const; |
| 61 PluginView* Plugin() const; | 61 PluginView* Plugin() const; |
| 62 bool CanProcessDrag() const; | 62 bool CanProcessDrag() const; |
| 63 const String& Url() const { return url_; } | 63 const String& Url() const { return url_; } |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 167 | 167 |
| 168 void SetPlugin(PluginView*); | 168 void SetPlugin(PluginView*); |
| 169 PluginView* ReleasePlugin(); | 169 PluginView* ReleasePlugin(); |
| 170 void SetPersistedPlugin(PluginView*); | 170 void SetPersistedPlugin(PluginView*); |
| 171 | 171 |
| 172 bool RequestObjectInternal(const String& url, | 172 bool RequestObjectInternal(const String& url, |
| 173 const String& mime_type, | 173 const String& mime_type, |
| 174 const Vector<String>& param_names, | 174 const Vector<String>& param_names, |
| 175 const Vector<String>& param_values); | 175 const Vector<String>& param_values); |
| 176 | 176 |
| 177 mutable RefPtr<SharedPersistent<v8::Object>> plugin_wrapper_; | 177 v8::Global<v8::Object> plugin_wrapper_; |
| 178 bool needs_plugin_update_; | 178 bool needs_plugin_update_; |
| 179 bool should_prefer_plug_ins_for_images_; | 179 bool should_prefer_plug_ins_for_images_; |
| 180 // Represents |layoutObject() && layoutObject()->isEmbeddedObject() && | 180 // Represents |layoutObject() && layoutObject()->isEmbeddedObject() && |
| 181 // !layoutEmbeddedItem().showsUnavailablePluginIndicator()|. We want to | 181 // !layoutEmbeddedItem().showsUnavailablePluginIndicator()|. We want to |
| 182 // avoid accessing |layoutObject()| in layoutObjectIsFocusable(). | 182 // avoid accessing |layoutObject()| in layoutObjectIsFocusable(). |
| 183 bool plugin_is_available_ = false; | 183 bool plugin_is_available_ = false; |
| 184 | 184 |
| 185 Member<PluginView> plugin_; | 185 Member<PluginView> plugin_; |
| 186 // Normally the plugin is stored in HTMLFrameOwnerElement::m_widget. | 186 // Normally the plugin is stored in HTMLFrameOwnerElement::m_widget. |
| 187 // However, plugins can persist even when not rendered. In order to | 187 // However, plugins can persist even when not rendered. In order to |
| 188 // prevent confusing code which may assume that ownedWidget() != null | 188 // prevent confusing code which may assume that ownedWidget() != null |
| 189 // means the frame is active, we save off m_widget here while | 189 // means the frame is active, we save off m_widget here while |
| 190 // the plugin is persisting but not being displayed. | 190 // the plugin is persisting but not being displayed. |
| 191 Member<PluginView> persisted_plugin_; | 191 Member<PluginView> persisted_plugin_; |
| 192 }; | 192 }; |
| 193 | 193 |
| 194 inline bool IsHTMLPlugInElement(const HTMLElement& element) { | 194 inline bool IsHTMLPlugInElement(const HTMLElement& element) { |
| 195 return element.IsPluginElement(); | 195 return element.IsPluginElement(); |
| 196 } | 196 } |
| 197 | 197 |
| 198 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLPlugInElement); | 198 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLPlugInElement); |
| 199 | 199 |
| 200 } // namespace blink | 200 } // namespace blink |
| 201 | 201 |
| 202 #endif // HTMLPlugInElement_h | 202 #endif // HTMLPlugInElement_h |
| OLD | NEW |