XUL support in Konqueror/KHTML.

Paul Sprakes pauls at sprakes.co.uk
Fri Nov 26 17:22:56 GMT 2004


On Friday 26 Nov 2004 16:35, Leo Savernik wrote:
> Am Freitag, 26. November 2004 01:18 schrieb Paul Sprakes:
> > KTrader doesn't like colons in the query when
> > I use the namespace uri. Is there a way to escape it? (I'm simply
> > stripping them out at the moment).
>
> Have you tried putting it under quotes?
> Otherwise, try replacing them with underscores.

Yep, been using quotes. Here's the query:

KParts::ComponentFactory::createInstanceFromQuery<NamespaceNodeFactory>("KHTML/NamespaceNodeFactory", 
            "[X-KDE-khtml-namespace] == 'http://www.w3.org/1999/xhtml'");

Interestingly, it works OK from the command line using ktradertest. On 
lists.kde.org I found a similar problem which had something to do with 
lex/yacc and passing the '-p' option. Unfortunately I can't seem to find the 
email right now.

> Btw, does your plugin-system implementation ensure that built-in khtml
> features like html and basic xml support will not suffer *any* performance
> penalty. That's really important.

It shouldn't effect normal html mimetypes. For xml documents there will be 
these penalties when a node has a namespace:

1. A QDict check to see if we already have a plugin loaded for the namespace.
2. If not, a KTrader lookup, factory creation and insertion in the QDict.
3. The actual function call to the plugin.

For xml documents that don't have any namespaces there should be no change.

I would imagine that (2) could be quite expensive in performance terms. 
However it would only happen once or twice in most documents. I could 
probably move the plugin caching to a higher level so they persist for the 
life of the application instance and not just the document.

I suppose the answer is that html and *basic* xml will suffer no performance 
penalty.

> mfg
>  Leo




More information about the kfm-devel mailing list