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