nah, I do not have to care about preferences - I wrote code to filter
duplicate metadata keys (something KIO:PreviewJob lacks - what if
preferred thumbnailer fails but other succeeds?)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
the code for preferences is pretty much the same I wrote for
KIO::PreviewJob (see KIO::PreviewJobPrivate::startPreview())
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
it queues a message box parented to the window (does not block until OK
button is clicked) and in case of error KRun and the message box are
automatically deleted
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
note that KIO::ERR_SERVICE_NOT_AVAILABLE was not handled in
KIO::buildErrorString() (since before the fork)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
so that application event processing is not blocked by any
KToolInvocation method, the D-Bus service name and PID return arguments
are not used anyway so removing them
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
if PID is not set then Slave::kill() is non-operational, note that it
was not done by the code before the klauncher rewrite (see
aa6b5ea4f0)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
there may be tasks in queue with the socket open but the connection state
may not be connected (see KIO::SocketConnectionBackend::state)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
if Q_OS_UNIX is not defined (which always is now, it's just compat
definition) then kdelibs itself will not build because it is not checked
if it defined in the kautomount source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
for programs that cannot be restarted by simply exec-ing them such as the
KIO slaves which require application socket as argument
note that restarting is maybe works thing - programs started by kdesudo
cannot be restarted (properly) as they are exec-ed by other program that
does the setup for them to function the way they should
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
generally, those signals should not be blocked but it seems something is
blocking consequent SIGSEGV signals send by `kill` for example
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
once KIO slaves are plugins it would not matter tho (KApplication sets the
KCrash::DrKonqi flag already) but for now since they are detached
process poping drkonqi in case they crash (and KDE_DEBUG is set) is more
usefull than printing trace to stderr
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
this was done only when there was pool socket (when klauncher was handling
slaves) but it has to be done anyway to prevent more tasks (commands) from
being send after error occurs
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
with klauncher no longer responsible for KIO slave the next step is to
make them plugins and the feature to put them on hold will be of no value
because QLibrary reuses library/plugin instances and creating a new
slave object will be cheap
in other words the performance will be similar to that of KFileMetaInfo
for which I also wrote the plugins myself - they are pretty quick
compared to what strigi was doing and with more flexible configuration
interface but it took some effort to get there
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
much simpler and easier to maintain, also it will be proper D-Bus
service now with no sockets, process title hack and whatnot. KCrash
and startkde script (in kde-workspace repo) have to be adjusted for
it tho
note that the internal KIO scheduler already has the functionality to
put slaves on hold but now they will be started as detached process.
eventually they may become plugins (they are loaded as such by kioslave
program) without event loop dispatcher
fixes application startup notification (ASN) and cleanup issues
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>