Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Side by Side Diff: Source/core/html/HTMLPlugInElement.h

Issue 23618022: BrowserPlugin/WebView - Move plugin lifetime to DOM (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Cleaned up. Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/html/HTMLObjectElement.cpp ('k') | Source/core/html/HTMLPlugInElement.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « Source/core/html/HTMLObjectElement.cpp ('k') | Source/core/html/HTMLPlugInElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698