[patch] to bug 88243

Leo Savernik l.savernik at aon.at
Fri Feb 11 17:11:05 GMT 2005


Am Freitag, 11. Februar 2005 17:43 schrieb Koos Vriezen:
[...]
> > This must not be solved at the ecmascript level, but on the DOM level
> > instead.
> >
> > You have to fix the implementation in xml/dom_nodeimpl.cpp instead
> > (NodeBaseImpl::insertBefore et. al.)
>
> Can you elaborate on this (note me asking this again)?

Yes.

> There are lots of 
> usages of the implementation classes by ecma, because its only used at
> that place, so moving it to xml/* only makes it more complex for the
> normal case, ie. when the document is being build by the parser.

The parser doesn't make use of any dom interface methods made for export. So 
there's no slowdown/breakage to be expected.

> So what's your reasoning, eg. why not moving the code to dom/* or leave
> it as-is?

It's about language independence. Calling the DOM interface methods must lead 
to the same result independent of any language bindings.

Implementing the tag-closing in ecma means that we get a different behaviour 
when calling Node::insertBefore in ecma-script and in C++.

This leads to

someElement.insertBefore(myApplet, someChild)

magically work in ecma script, but not in C++ (and any other language that 
binds to the C++ dom interface).

Hope this clears up any issues.

If you know of any other hackeries in ecma that actually belong to the dom 
level, please tell me.

>
[...]

mfg
 Leo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <https://mail.kde.org/mailman/private/kfm-devel/attachments/20050211/74415da3/attachment.sig>


More information about the kfm-devel mailing list