summaryrefslogtreecommitdiffstats
path: root/webkit/pending
diff options
context:
space:
mode:
authorpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-07 01:15:15 +0000
committerpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-07 01:15:15 +0000
commitbfc484746ae3c89634e1a1cd2edf54ab8f31e1f5 (patch)
treed9c2fe01b681c7cc753d1872f5e5e8d6fd16c82f /webkit/pending
parent1ddcb86b486cca69ede1dca9bfdada8dfc49f6c2 (diff)
downloadchromium_src-bfc484746ae3c89634e1a1cd2edf54ab8f31e1f5.zip
chromium_src-bfc484746ae3c89634e1a1cd2edf54ab8f31e1f5.tar.gz
chromium_src-bfc484746ae3c89634e1a1cd2edf54ab8f31e1f5.tar.bz2
Unfork HTMLPlugInElement.*.
TBR=dglazkov Review URL: http://codereview.chromium.org/6520 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2924 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/pending')
-rw-r--r--webkit/pending/HTMLPlugInElement.cpp211
-rw-r--r--webkit/pending/HTMLPlugInElement.h84
2 files changed, 0 insertions, 295 deletions
diff --git a/webkit/pending/HTMLPlugInElement.cpp b/webkit/pending/HTMLPlugInElement.cpp
deleted file mode 100644
index 19d494e..0000000
--- a/webkit/pending/HTMLPlugInElement.cpp
+++ /dev/null
@@ -1,211 +0,0 @@
-/**
- * This file is part of the DOM implementation for KDE.
- *
- * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
- * (C) 1999 Antti Koivisto (koivisto@kde.org)
- * (C) 2000 Stefan Schimanski (1Stein@gmx.de)
- * Copyright (C) 2004, 2005, 2006 Apple Computer, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-#include "config.h"
-#include "HTMLPlugInElement.h"
-
-#include "CSSPropertyNames.h"
-#include "Document.h"
-#include "Frame.h"
-#include "FrameLoader.h"
-#include "FrameTree.h"
-#include "HTMLNames.h"
-#include "Page.h"
-#include "RenderWidget.h"
-#include "Settings.h"
-#include "Widget.h"
-#include "ScriptController.h"
-
-#if USE(JSC)
-#include "runtime.h"
-#endif
-
-#if ENABLE(NETSCAPE_PLUGIN_API) && USE(JSC)
-#include "JSNode.h"
-#include "NP_jsobject.h"
-#include "npruntime_impl.h"
-#include "runtime_root.h"
-#endif
-
-namespace WebCore {
-
-using namespace HTMLNames;
-
-HTMLPlugInElement::HTMLPlugInElement(const QualifiedName& tagName, Document* doc)
- : HTMLFrameOwnerElement(tagName, doc)
-#if ENABLE(NETSCAPE_PLUGIN_API)
- , m_NPObject(0)
-#endif
-{
-}
-
-HTMLPlugInElement::~HTMLPlugInElement()
-{
-#if USE(JSC)
- ASSERT(!m_instance); // cleared in detach()
-#endif
-
-#if ENABLE(NETSCAPE_PLUGIN_API)
- if (m_NPObject) {
- // NOTE: mbelshe - can the frame be inaccessible here? If so,
- // do we leak objects?
- if (document() && document()->frame())
- document()->frame()->script()->functions()->releaseObject(m_NPObject);
- m_NPObject = 0;
- }
-#endif
-}
-
-JSInstance HTMLPlugInElement::getInstance() const
-{
- Frame* frame = document()->frame();
- if (!frame)
- return JSInstanceHolder::EmptyInstance();
-
- // If the host dynamically turns off JavaScript (or Java) we will still return
- // the cached allocated Bindings::Instance. Not supporting this edge-case is OK.
- if (!m_instance.IsEmpty())
- return m_instance.Get();
-
- RenderWidget* renderWidget = renderWidgetForJSBindings();
- if (renderWidget && renderWidget->widget())
- m_instance = frame->script()->createScriptInstanceForWidget(renderWidget->widget());
-
- return m_instance.Get();
-}
-
-void HTMLPlugInElement::detach()
-{
- m_instance.Clear();
- HTMLFrameOwnerElement::detach();
-}
-
-String HTMLPlugInElement::align() const
-{
- return getAttribute(alignAttr);
-}
-
-void HTMLPlugInElement::setAlign(const String& value)
-{
- setAttribute(alignAttr, value);
-}
-
-String HTMLPlugInElement::height() const
-{
- return getAttribute(heightAttr);
-}
-
-void HTMLPlugInElement::setHeight(const String& value)
-{
- setAttribute(heightAttr, value);
-}
-
-String HTMLPlugInElement::name() const
-{
- return getAttribute(nameAttr);
-}
-
-void HTMLPlugInElement::setName(const String& value)
-{
- setAttribute(nameAttr, value);
-}
-
-String HTMLPlugInElement::width() const
-{
- return getAttribute(widthAttr);
-}
-
-void HTMLPlugInElement::setWidth(const String& value)
-{
- setAttribute(widthAttr, value);
-}
-
-bool HTMLPlugInElement::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
-{
- if (attrName == widthAttr ||
- attrName == heightAttr ||
- attrName == vspaceAttr ||
- attrName == hspaceAttr) {
- result = eUniversal;
- return false;
- }
-
- if (attrName == alignAttr) {
- result = eReplaced; // Share with <img> since the alignment behavior is the same.
- return false;
- }
-
- return HTMLFrameOwnerElement::mapToEntry(attrName, result);
-}
-
-void HTMLPlugInElement::parseMappedAttribute(MappedAttribute* attr)
-{
- if (attr->name() == widthAttr)
- addCSSLength(attr, CSSPropertyWidth, attr->value());
- else if (attr->name() == heightAttr)
- addCSSLength(attr, CSSPropertyHeight, attr->value());
- else if (attr->name() == vspaceAttr) {
- addCSSLength(attr, CSSPropertyMarginTop, attr->value());
- addCSSLength(attr, CSSPropertyMarginBottom, attr->value());
- } else if (attr->name() == hspaceAttr) {
- addCSSLength(attr, CSSPropertyMarginLeft, attr->value());
- addCSSLength(attr, CSSPropertyMarginRight, attr->value());
- } else if (attr->name() == alignAttr)
- addHTMLAlignment(attr);
- else
- HTMLFrameOwnerElement::parseMappedAttribute(attr);
-}
-
-bool HTMLPlugInElement::checkDTD(const Node* newChild)
-{
- return newChild->hasTagName(paramTag) || HTMLFrameOwnerElement::checkDTD(newChild);
-}
-
-void HTMLPlugInElement::defaultEventHandler(Event* event)
-{
- RenderObject* r = renderer();
- if (!r || !r->isWidget())
- return;
-
- if (Widget* widget = static_cast<RenderWidget*>(r)->widget())
- widget->handleEvent(event);
-}
-
-#if ENABLE(NETSCAPE_PLUGIN_API)
-
-NPObject* HTMLPlugInElement::getNPObject()
-{
- ASSERT(document()->frame());
- if (!m_NPObject)
- m_NPObject = document()->frame()->script()->createScriptObjectForPluginElement(this);
- return m_NPObject;
-}
-
-#endif /* ENABLE(NETSCAPE_PLUGIN_API) */
-
-void HTMLPlugInElement::updateWidgetCallback(Node* n)
-{
- static_cast<HTMLPlugInElement*>(n)->updateWidget();
-}
-
-}
diff --git a/webkit/pending/HTMLPlugInElement.h b/webkit/pending/HTMLPlugInElement.h
deleted file mode 100644
index 599c192..0000000
--- a/webkit/pending/HTMLPlugInElement.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
- * (C) 1999 Antti Koivisto (koivisto@kde.org)
- * Copyright (C) 2004, 2006, 2007, 2008 Apple Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef HTMLPlugInElement_h
-#define HTMLPlugInElement_h
-
-#include "HTMLFrameOwnerElement.h"
-#include "ScriptController.h"
-
-#if ENABLE(NETSCAPE_PLUGIN_API)
-struct NPObject;
-#endif
-
-namespace WebCore {
-
-class RenderWidget;
-
-class HTMLPlugInElement : public HTMLFrameOwnerElement {
-public:
- HTMLPlugInElement(const QualifiedName& tagName, Document*);
- virtual ~HTMLPlugInElement();
-
- virtual bool mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const;
- virtual void parseMappedAttribute(MappedAttribute*);
-
- virtual HTMLTagStatus endTagRequirement() const { return TagStatusRequired; }
- virtual bool checkDTD(const Node* newChild);
-
- virtual void updateWidget() { }
-
- String align() const;
- void setAlign(const String&);
-
- String height() const;
- void setHeight(const String&);
-
- String name() const;
- void setName(const String&);
-
- String width() const;
- void setWidth(const String&);
-
- virtual void defaultEventHandler(Event*);
-
- virtual RenderWidget* renderWidgetForJSBindings() const = 0;
- virtual void detach();
- JSInstance getInstance() const;
-
-#if ENABLE(NETSCAPE_PLUGIN_API)
- virtual NPObject* getNPObject();
-#endif
-
-protected:
- static void updateWidgetCallback(Node*);
-
- AtomicString m_name;
- mutable JSInstanceHolder m_instance;
-#if ENABLE(NETSCAPE_PLUGIN_API)
- NPObject* m_NPObject;
-#endif
-};
-
-} // namespace WebCore
-
-#endif // HTMLPlugInElement_h