[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdelibs/khtml/ecma
From: Paul Temple <paul.temple () gmx ! net>
Date: 2005-02-11 1:29:27
Message-ID: 20050211012927.171AC1B5AA () office ! kde ! org
[Download RAW message or body]
CVS commit by temple:
(patch reviewed by David Faure)
BUG: 82243 cannot dynamically add applets by means of \
element.appendChild(document.createElement("applet"))
M +18 -6 kjs_dom.cpp 1.184
--- kdelibs/khtml/ecma/kjs_dom.cpp #1.183:1.184
@@ -479,12 +479,24 @@ Value DOMNodeProtoFunc::tryCall(ExecStat
case DOMNode::DispatchEvent:
return Boolean(node.dispatchEvent(toEvent(args[0])));
- case DOMNode::AppendChild:
- return getDOMNode(exec,node.appendChild(toNode(args[0])));
+ case DOMNode::AppendChild: {
+ Node myNode = toNode(args[0]);
+ Value gdNode = getDOMNode(exec,node.appendChild(myNode));
+ if (myNode.handle() && !myNode.handle()->closed()) myNode.handle()->close();
+ return gdNode;
+ }
case DOMNode::RemoveChild:
return getDOMNode(exec,node.removeChild(toNode(args[0])));
- case DOMNode::InsertBefore:
- return getDOMNode(exec,node.insertBefore(toNode(args[0]), toNode(args[1])));
- case DOMNode::ReplaceChild:
- return getDOMNode(exec,node.replaceChild(toNode(args[0]), toNode(args[1])));
+ case DOMNode::InsertBefore: {
+ Node myNode = toNode(args[0]);
+ Value gdNode = getDOMNode(exec,node.insertBefore(myNode, toNode(args[1])));
+ if (myNode.handle() && !myNode.handle()->closed()) myNode.handle()->close();
+ return gdNode;
+ }
+ case DOMNode::ReplaceChild: {
+ Node myNode = toNode(args[0]);
+ Value gdNode = getDOMNode(exec,node.replaceChild(myNode, toNode(args[1])));
+ if (myNode.handle() && !myNode.handle()->closed()) myNode.handle()->close();
+ return gdNode;
+ }
case DOMNode::Contains:
{
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic