| 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 16 matching lines...) Expand all Loading... |
| 27 #include "core/html/HTMLFrameOwnerElement.h" | 27 #include "core/html/HTMLFrameOwnerElement.h" |
| 28 | 28 |
| 29 struct NPObject; | 29 struct NPObject; |
| 30 | 30 |
| 31 namespace WebCore { | 31 namespace WebCore { |
| 32 | 32 |
| 33 class RenderEmbeddedObject; | 33 class RenderEmbeddedObject; |
| 34 class RenderWidget; | 34 class RenderWidget; |
| 35 class Widget; | 35 class Widget; |
| 36 | 36 |
| 37 enum PreferPlugInsForImagesOption { |
| 38 ShouldPreferPlugInsForImages, |
| 39 ShouldNotPreferPlugInsForImages |
| 40 }; |
| 41 |
| 37 class HTMLPlugInElement : public HTMLFrameOwnerElement { | 42 class HTMLPlugInElement : public HTMLFrameOwnerElement { |
| 38 public: | 43 public: |
| 39 virtual ~HTMLPlugInElement(); | 44 virtual ~HTMLPlugInElement(); |
| 40 | 45 |
| 41 void resetInstance(); | 46 void resetInstance(); |
| 42 | 47 |
| 43 SharedPersistent<v8::Object>* pluginWrapper(); | 48 SharedPersistent<v8::Object>* pluginWrapper(); |
| 44 | 49 |
| 45 Widget* pluginWidget() const; | 50 Widget* pluginWidget() const; |
| 46 | 51 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 61 | 66 |
| 62 bool canProcessDrag() const; | 67 bool canProcessDrag() const; |
| 63 | 68 |
| 64 virtual bool willRespondToMouseClickEvents() OVERRIDE; | 69 virtual bool willRespondToMouseClickEvents() OVERRIDE; |
| 65 | 70 |
| 66 virtual bool isPlugInImageElement() const { return false; } | 71 virtual bool isPlugInImageElement() const { return false; } |
| 67 | 72 |
| 68 virtual void removeAllEventListeners() OVERRIDE FINAL; | 73 virtual void removeAllEventListeners() OVERRIDE FINAL; |
| 69 | 74 |
| 70 protected: | 75 protected: |
| 71 HTMLPlugInElement(const QualifiedName& tagName, Document&); | 76 HTMLPlugInElement(const QualifiedName& tagName, Document&, PreferPlugInsForI
magesOption); |
| 72 | 77 |
| 73 virtual void detach(const AttachContext& = AttachContext()) OVERRIDE; | 78 virtual void detach(const AttachContext& = AttachContext()) OVERRIDE; |
| 74 virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE; | 79 virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE; |
| 75 virtual void collectStyleForPresentationAttribute(const QualifiedName&, cons
t AtomicString&, MutableStylePropertySet*) OVERRIDE; | 80 virtual void collectStyleForPresentationAttribute(const QualifiedName&, cons
t AtomicString&, MutableStylePropertySet*) OVERRIDE; |
| 76 | 81 |
| 77 virtual bool useFallbackContent() const { return false; } | 82 virtual bool useFallbackContent() const { return false; } |
| 78 | 83 |
| 79 virtual bool dispatchBeforeLoadEvent(const String& sourceURL) OVERRIDE; | 84 virtual bool dispatchBeforeLoadEvent(const String& sourceURL) OVERRIDE; |
| 80 | 85 |
| 81 // Create or update the RenderWidget and return it, triggering layout if nec
essary. | 86 // Create or update the RenderWidget and return it, triggering layout if nec
essary. |
| 82 virtual RenderWidget* renderWidgetForJSBindings() const; | 87 virtual RenderWidget* renderWidgetForJSBindings() const; |
| 83 | 88 |
| 89 bool isImageType(); |
| 90 bool shouldPreferPlugInsForImages() const { return m_shouldPreferPlugInsForI
mages; } |
| 91 |
| 92 String m_serviceType; |
| 93 String m_url; |
| 94 |
| 84 private: | 95 private: |
| 85 virtual bool areAuthorShadowsAllowed() const OVERRIDE { return false; } | 96 virtual bool areAuthorShadowsAllowed() const OVERRIDE { return false; } |
| 86 | 97 |
| 87 virtual void defaultEventHandler(Event*); | 98 virtual void defaultEventHandler(Event*); |
| 88 | 99 |
| 89 // Return any existing RenderWidget without triggering relayout, or 0 if it
doesn't yet exist. | 100 // Return any existing RenderWidget without triggering relayout, or 0 if it
doesn't yet exist. |
| 90 virtual RenderWidget* existingRenderWidget() const = 0; | 101 virtual RenderWidget* existingRenderWidget() const = 0; |
| 91 | 102 |
| 92 virtual bool supportsFocus() const OVERRIDE { return true; }; | 103 virtual bool supportsFocus() const OVERRIDE { return true; }; |
| 93 virtual bool rendererIsFocusable() const OVERRIDE; | 104 virtual bool rendererIsFocusable() const OVERRIDE; |
| 94 | 105 |
| 95 virtual bool isKeyboardFocusable() const OVERRIDE; | 106 virtual bool isKeyboardFocusable() const OVERRIDE; |
| 96 virtual bool isPluginElement() const; | 107 virtual bool isPluginElement() const; |
| 97 | 108 |
| 98 mutable RefPtr<SharedPersistent<v8::Object> > m_pluginWrapper; | 109 mutable RefPtr<SharedPersistent<v8::Object> > m_pluginWrapper; |
| 99 NPObject* m_NPObject; | 110 NPObject* m_NPObject; |
| 100 bool m_isCapturingMouseEvents; | 111 bool m_isCapturingMouseEvents; |
| 101 bool m_inBeforeLoadEventHandler; | 112 bool m_inBeforeLoadEventHandler; |
| 113 bool m_shouldPreferPlugInsForImages; |
| 102 DisplayState m_displayState; | 114 DisplayState m_displayState; |
| 103 }; | 115 }; |
| 104 | 116 |
| 105 DEFINE_NODE_TYPE_CASTS(HTMLPlugInElement, isPluginElement()); | 117 DEFINE_NODE_TYPE_CASTS(HTMLPlugInElement, isPluginElement()); |
| 106 | 118 |
| 107 } // namespace WebCore | 119 } // namespace WebCore |
| 108 | 120 |
| 109 #endif // HTMLPlugInElement_h | 121 #endif // HTMLPlugInElement_h |
| OLD | NEW |