Commit graph

634 commits

Author SHA1 Message Date
Ivailo Monev
6b61bac251 kio: KHTTP optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 20:33:55 +02:00
Ivailo Monev
907782ff6d kio: KHTTP::respond() documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:55:17 +02:00
Ivailo Monev
931a05dbb7 kio: do not assume server does not contain space characters in HTTPHeaders() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:44:18 +02:00
Ivailo Monev
046d5caaee kio: new KHTTP::setServerID() setter
because authentication is done before calling the virtual KHTTP::responed()
method which means that Server header set in the headers from it would have
no effect

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:33:02 +02:00
Ivailo Monev
11e4eacc8e kio: pass authentication requirement to KHTTPPrivate::writeResponse()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:14:57 +02:00
Ivailo Monev
3dbe3173be kio: drop support for custom authentication message, de-duplicate code
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:05:47 +02:00
Ivailo Monev
9e0707ff8b kio: reject large client payloads in KHTTP
for reference:
https://datatracker.ietf.org/doc/html/rfc7230#section-9.3

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 17:46:39 +02:00
Ivailo Monev
dc5aa31eca kio: KHTTP dcoumentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 06:26:41 +02:00
Ivailo Monev
d51e0ec201 kio: do not assume the authentication message is non-empty in KHTTP
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 06:19:21 +02:00
Ivailo Monev
59567864f0 kio: translate the error in KHTTP::setAuthenticate()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 05:16:44 +02:00
Ivailo Monev
969ddd830f kutils: rewrite KHTTP and move it to kio library
same functionality but without extra dependencies and better throughput

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 04:59:18 +02:00
Ivailo Monev
3f6c5931af kio: add typo to the possible causes for KIO::ERR_MALFORMED_URL
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 18:45:56 +02:00
Ivailo Monev
1365112606 kio: pass the caption to KMessageBox::detailedError() from KIO::JobUiDelegate::showErrorMessage()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 18:39:41 +02:00
Ivailo Monev
0f0db0c3a7 kio: show unqueued and detailed job error messages
some errors (such as KIO::ERR_SERVICE_NOT_AVAILABLE) are not handled in
KIO::rawErrorDetail() yet tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 04:09:49 +02:00
Ivailo Monev
9a2e49d59a kio: replace QVariant with QMap header inclusion in global header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 02:33:29 +02:00
Ivailo Monev
ca7fc963e7 kio: simplify SimpleJob::slotMetaData()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 01:54:25 +02:00
Ivailo Monev
96f7941236 kio: drop KIO::MetaData from and to QVariant conversion methods
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 00:59:47 +02:00
Ivailo Monev
5a270d4864 kio: initialize all KIO::SlaveBasePrivate members before connecting the slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 23:40:05 +02:00
Ivailo Monev
b2d0b1a955 kio: remove unused CMD_SLAVE_STATUS command
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 23:08:32 +02:00
Ivailo Monev
83eab16683 kio: remove unused CMD_SLAVE_CONNECT command
never dispatched

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 22:31:46 +02:00
Ivailo Monev
5fa0b7a569 kio: remove unused port-related definitions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 22:26:07 +02:00
Ivailo Monev
b7e764dfcd kio: remove unimplemented KIO::SlaveBase::setLinkDest()
not even handled in KIO::SlaveBase::dispatch()

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 21:23:25 +02:00
Ivailo Monev
ab75b45d49 kio: move private KIO::Command enum to job_p header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 20:46:09 +02:00
Ivailo Monev
5e86975733 kio: remove unused KIO::ERR_ABORTED enum
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 19:58:00 +02:00
Ivailo Monev
15933214f9 kio: remove unused KIO::ERR_UNSUPPORTED_PROTOCOL enum
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 19:51:10 +02:00
Ivailo Monev
0b881add5e kio: remove unused KIO::Job::detailedErrorStrings() and KIO::rawErrorDetail() methods argument
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 19:47:04 +02:00
Ivailo Monev
effc55e44f kio: remove unused KIO::Error enums
note that KIO::ERR_NEED_PASSWD was not handled at all

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 19:24:56 +02:00
Ivailo Monev
8fde788cd6 kio: zero-initialize the buffer in KIO::number()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 18:40:22 +02:00
Ivailo Monev
7b6f2c92d8 kio: poppler metadata extractor optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-21 19:10:17 +02:00
Ivailo Monev
75e5990125 kio: taglib metadata extractor optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-21 18:59:23 +02:00
Ivailo Monev
212cc9717a kio: log KFileMetaInfo messages to the kio debug area
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-20 00:22:57 +02:00
Ivailo Monev
bba71d3a27 kio: effectively revert db9b369a00
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>
2022-12-20 00:22:07 +02:00
Ivailo Monev
db9b369a00 kio: prioritize taglib metadata plugin for audio files
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>
2022-12-19 21:47:18 +02:00
Ivailo Monev
39b4346e6a kio: do not use KJobUiDelegate::showErrorMessage() in KRun
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>
2022-12-19 20:04:05 +02:00
Ivailo Monev
80c29cd794 kioslave: handle 404 and 503 HTTP error as service not available
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>
2022-12-19 19:35:10 +02:00
Ivailo Monev
4fb8a1d674 generic: call klauncher methods asynchronously from KToolInvocation
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>
2022-12-19 12:44:44 +02:00
Ivailo Monev
121069d88c kio: ThumbCreator documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-18 16:44:24 +02:00
Ivailo Monev
4fda11def4 kio: remove unused KIO::UDSEntry field enums
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-18 11:05:23 +02:00
Ivailo Monev
d3bf519674 kio: set the slave PID from Slave::createSlave()
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>
2022-12-17 18:16:06 +02:00
Ivailo Monev
4bfca6f8c8 kio: fix regression since bc067dbdfa
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>
2022-12-17 13:35:18 +02:00
Ivailo Monev
8ca2e6e168 kio: remove unused SlaveBasePrivate members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-17 11:44:34 +02:00
Ivailo Monev
97b5d53233 kio: free the metadata keys pointer only if it's non-null in KFileMetaDataDjVuLibrePlugin::metaData()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-16 19:00:47 +02:00
Ivailo Monev
873013b7f2 kio: remove redundant Q_OS_UNIX definition checks
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>
2022-12-14 14:48:22 +02:00
Ivailo Monev
a934004638 kio: use 125 as default for the preview icon alpha
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 14:27:57 +02:00
Ivailo Monev
af901f454d kio: replace KUriFilter::loadPlugins() with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 13:58:37 +02:00
Ivailo Monev
350056d016 kio: pass the matches list directly to KUrlCompletionPrivate::addMatches()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 13:43:42 +02:00
Ivailo Monev
db387cd314 kio: someone's typo
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 13:32:36 +02:00
Ivailo Monev
fa5db6c506 kio: debug message correction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 07:03:51 +02:00
Ivailo Monev
777e9d8024 kio: new djvulibre metadata extractor
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 06:45:19 +02:00
Ivailo Monev
638f54bc2b kio: deprecation warning fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-08 14:04:47 +02:00