[Q] replacing the textarea widget

Koos Vriezen koos.vriezen at xs4all.nl
Fri Sep 3 15:37:18 BST 2004


On Fri, Sep 03, 2004 at 03:35:06PM +0200, Koos Vriezen wrote:
> On Fri, Sep 03, 2004 at 01:54:59PM +0200, David Faure wrote:
> > The problem is KonqMainWindow::childView, which uses BrowserHostExtension::findFrameParent()
> > and ::frames().
> > 
> > So the problem is in KHTMLPart::findFrameParent() or KHTMLPart::frames().
> 
> With some debuging added (same results w/ or w/o a src page set as SRC). 
> Debug output is a continues fragment:
>    khtml (part): KHTMLPart::frames frame1false
>    khtml (part): KHTMLPart::frames frame2false
>    khtml (part): KHTMLPart::frames 2
> here KHTMLPart::frames return 2 frames, name and bPreloaded appended of
> childframes. This frame has no name (=top frame)
> 
>    khtml (part): frame1KHTMLPart::frames 0 frame1
>    khtml (part): frame2KHTMLPart::frames 0 frame2
> here two time 0 for frame1 resp. frame2
> 
>    konqueror:        - viewName=   frame names:frame1,frame2
>    khtml (part): KHTMLPart::findFrameParent: this =  URL =
>       http://localhost/~koos/frameset.html findFrameParent( frame1 )
>    khtml (part): KHTMLPart::checkFrameAccess: Unknown part/domain (nil)
>       tries to access part 0x82fde10
> So here konqueror asks top frame (after 'this = ' I added the frame
> name) with a NULL as callingpart. And that makes
> KHTMLPart::checkFrameAccess fail. 

Here the code fragement from konq_mainwindow.cc:1052
    KonqMainWindow *mainWindow = 0L;
    if ( !args.frameName.isEmpty() && args.frameName.lower() != "_blank" )
    {
        KParts::BrowserHostExtension *hostExtension = 0;
        if ( findChildView( 0, args.frameName,
                            &mainWindow, &hostExtension, &part ) )
           ....

Notice the first argument. Which makes my defense complete.
I'm innocent :-)

Koos




More information about the kfm-devel mailing list