remove QtGui dependence of kdecore

Ralf Habacker ralf.habacker at
Wed Jan 3 18:40:03 GMT 2007

Thiago Macieira schrieb:
> Alexander Neundorf wrote:
>>> Because ioslaves may still link to QtGui. They talk to the uiserver,
>>> the open password dialogs, they open SSL confirmation dialogs, etc.
>> Couldn't ui_server be replaced by a curses implementation on the console
>> ? If we had a kio_ui, maybe too ?
> Hmm... I think this was one of the original intentions in splitting 
> KIO::Job into KJob: to allow for a curses-based implementation if 
> necessary of the messages and user interactions.
> But I say this: do not over-complicate the code for a use-case that does 
> not exist. If someone can come up with a compelling use-case for 
> text-mode ioslaves (I don't mean GUI-less apps, I mean apps running with 
> completely outside a graphical display), we should investigate the 
> possibility.
> There's simply too much in kio that depends on user interaction, like the 
> SSL dialogs or even the rename dialogs. If we were to decouple all of 
> those into core/gui, the code could conceivably become too complex to be 
> maintained. And all for a use-case that I currently don't see.
> Remember: we're making a graphical desktop. The fact that our tools can be 
> used in non-graphical desktops is a plus, not the main goal.
>>> In order to talk to klauncher, we need to start it and we need D-Bus.
>>> First of all, D-Bus only autolaunches inside X. Second, we haven't yet
>>> determined how to start klauncher via D-Bus without starting the whole
>>> of KDE.
>> Sounds more like a not-yet-solved minor technical issue (says the one
>> who knows almost nothing about DBUS ;-)
> The solution in KDE 3 now is that if DCOP isn't running, we start the DCOP 
> server and kdeinit. In KDE 4, we could detect that klauncher isn't 
> running and start it manually.
> KDE applications don't start at all if D-Bus isn't available (running or 
> auto-startable).
On windows dbus uses autostart on demand and klauncher will be started 
by kdeinit if it is not running.
This can verified by running kate or katetest.


More information about the kde-core-devel mailing list