[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Re: konqueror truncates requested URL
From:       Simon Hausmann <shaus () helios ! Med ! Uni-Magdeburg ! DE>
Date:       2000-05-31 12:47:05
[Download RAW message or body]



On Wed, 31 May 2000 pbrown@redhat.com wrote:

> On Wed, 31 May 2000, David Faure wrote:
> 
> > On Wed, May 31, 2000 at 09:54:19AM +0200, Simon Hausmann wrote:
> > > 
> > > 
> > > On Tue, 30 May 2000 pbrown@redhat.com wrote:
> > > 
> > > > On Tue, 30 May 2000 pbrown@redhat.com wrote:
> > > > 
> > > > > OK I'm working on hunting this down but if someone more familiar with the
> > > > > code can find it faster, even better.
> > > > > 
> > > > > If I launch a .desktop file of type Link with the URL:
> > > > > 
> > > > > http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=344797145
> > > > 
> > > > [ description of problems deleted ]
> > > > 
> > > > OK!  I found it.  Here's the offender, in class KFileManager (krun.cpp):
> > > > 
> > > > /****************/
> > > > bool KFileManager::openFileManagerWindow( const KURL& _url )
> > > > {
> > > >   QString cmd = "kfmclient openURL ";
> > > >   cmd += _url.url();
> > > >   system( cmd );
> > > >   return true; // assume kfmclient succeeded
> > > > }
> > > > 
> > > > Problems with this function?
> > > > 
> > > > 1. it is in kdelibs, but makes a call into a kdebase program (kfmclient)
> > > 
> > > I guess the "right" solution would be to let the user choose his favourite
> > > browser and use that one to open up the window.
> > 
> > Not exactly browser, but file manager. As the name says,
> > this is used when the user wants to 'run' (i.e. clicks on, i.e. KRun)
> > a directory. How do you want to avoid the dependency to kdebase ?
> > Only konqueror (in the KDE stuff) can open and display a directory.
> 
> So why are we using kfmclient to do this, instead of KRun or the
> KApp:startServiceBy... methods?  Or one of the other ways to launch things
> that I have forgotten about?

The code we are talking about _is_ called from KRun itself. So we are
already using KRun.

But what method do you suggest we should use to open up a browser window 
displaying a directory?

If we use Konqueror's DCOP interface directly, then we have an even worse
dependency. And yes, kfmclient uses
KApplication::startServiceByDesktopName, if no Konqueror instance is
already running.

> > Yeah. "kfmclient not found" is no better than "no application found
> > for inode/directory", is it ?
> 
> Not sure.  Both kind of suck.
> 
> > Except if we want configurability here, but this is not what you
> > wanted to point out, is it ?
> 
> No.
> 
> > > Why is it hight overhead to call kfmclient? I don't see any faster way to
> > > open up a new konqueror browser window.
> 
> Starts up a shell process, starts executing a new binary (which has all
> the startup overhead of any other KDE program).
> 
> > Now the real question is : why the h*** is the URL above calling
> > openFileManagerWindow ??? It's not a directory, is it ?
> 
> No, and that's why I had some major problems finding out where I was
> supposed to be looking.  I'm even now not clear on the code path, and so
> you can see why I am so confused.  Here's the .desktop file I clicked:
> 
> [Desktop Entry] 
> Icon=www 
> Type=Link
> URL=http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=344797145 
> 
> and it ends up doing a whole lot of shit (we need to cut down on the
> debugging messages, and only leave in the useful ones, there is so much
> glop in my .xsession-errors file that it is a miracle I found this at
> all), but ends up getting into this function.

Use kdebugdialog. There you can specify which debug output you want to see
and which not.

Bye,
 Simon

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic