side note: `bsdtar` creates archives with the MIME type extension as
application/x-tar even if the extension is not recognized by libarchive
(i.e. autodetection fails but it proccedes anyway)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
according to the spec it may be prefixed, if it is XDG_MENU_PREFIX must
be exported (which matters not to Katana since the main application menu
file is hardcoded anyway). for reference:
https://specifications.freedesktop.org/menu-spec/menu-spec-1.0.html
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
I rewrote QFileSystemWatcher some time ago for it to be able to watch
non-existing directories, did rewrite KDirWatch too to not use FAM
and inotify making the created() and deleted() signals non-operational
(with the plan to maybe implement them in QFileSystemWatcher but that
will be hack-ish for directories with stat()-based implementation)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
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 it is not supported then one (or more) CPU governors required by
KPowerManager are not enabled or the host is not Linux
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
Katana (or any interface designed around key and mouse events) is not
for blind people, trying to slap text-to-speech on top of it was the
wrong thing to do to begin with
side note: speech-dispatcher tends to hang if the output device is not
configured properly (i.e. editing /etc/speech-dispatcher/speechd.conf
manually)
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>