Commit graph

1080 commits

Author SHA1 Message Date
Ivailo Monev
3c1f8483d9 kio: do not store the cached authorization after retrieving it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-01 05:18:37 +03:00
Ivailo Monev
dcea148ad8 kio: KIO::AuthInfo copy optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-01 04:42:20 +03:00
Ivailo Monev
3eb804d3e6 kio: watch all non-local items from KDirLister
because KFileItem::refresh() throws away the KIO::UDSEntry, KMimeType and
other info on refresh the only way to get back that info is to list the
directory again for non-local items

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 17:33:51 +03:00
Ivailo Monev
c18bacba12 kio: make KIO::UDSEntry::UDS_URL required/mandatory
if the slaves do not know what URL is being stat()-ed, listed, etc. then
what? this may make the URL different than the one originally requested (as
it should be) in case of redirection(s) for example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 16:30:03 +03:00
Ivailo Monev
1aa97c216a kio: implement listing of directory links for KIO::ListJob
tested with dolphin file search slave, more hammering will be done in the
future

for reference:
https://ivailo-monev.atlassian.net/browse/KDE-20

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 15:00:14 +03:00
Ivailo Monev
175aba2477 kio: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 13:56:27 +03:00
Ivailo Monev
278d608836 kio: properly initialize KUrlRequester::KUrlRequesterPrivate members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 13:49:12 +03:00
Ivailo Monev
10f13e8bab kio: remove unused private KUrlComboRequester member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 13:34:54 +03:00
Ivailo Monev
70e1615510 kio: set variables to valid range when the requested range is not valid in KHTTP
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 04:25:52 +03:00
Ivailo Monev
4220591799 kio: implement bytes range for KHTTP
tested with wget and curl, the gnu version of wget chokes

for reference:
https://ivailo-monev.atlassian.net/browse/KDE-16

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 02:11:40 +03:00
Ivailo Monev
de4204d82c kio: fake bytes range support for KHTTP
as the RFC says - the server (KHTTP in this case) can ignore range
requests, tested with curl and wget and both will not get a range transfer
but the request will not fail because the server does not support ranges

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 00:29:32 +03:00
Ivailo Monev
aa5fa71ef2 kio: replace KMimeType::iconNameForUrl() with KIO::pixmapForUrl() in KFilePlaceEditDialog
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 02:51:12 +03:00
Ivailo Monev
4f3da48844 kio: use the KFileItem icon instead of determening it in KFilePropsPlugin
otherwise the icon does not match the one that dolphin shows for example,
not to mention KMimeType::findByUrl() can only guess from the name for
remote URLs instead of using the info KFileItem already has

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 02:49:47 +03:00
Ivailo Monev
c88415d03f kio: stat non-local URLs from KIO::pixmapForUrl()
no other way to figure out the MIME type (reliably, could be guessed from
the name but that is not exactly accurate guess)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 01:45:30 +03:00
Ivailo Monev
33e07a5bfd kio: move bits from KFileItem::iconName() to KMimeType::iconNameForUrl()
none of the bits actually belong there but KIO was designed in such a way
that it is not part of kdecore and as such KMimeType::iconNameForUrl() will
have to handle the cases for KIO (except overlays maybe)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-29 04:38:22 +03:00
Ivailo Monev
c045d9f57b kio: handle the special case of trash protocol and protocols in general in KFileItem::iconName()
more conditions are added into the mix but that is how it should be,
KMimeType::iconNameForUrl() barely covers some cases (no overlays?)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-29 02:00:49 +03:00
Ivailo Monev
93a71cccd8 kio: add favicon to the overlays from KFileItem::overlays()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-28 10:41:08 +03:00
Ivailo Monev
fe6daca7c7 kio: replace KMimeType::iconNameForUrl() with KIO::pixmapForUrl() where possible
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-28 10:34:23 +03:00
Ivailo Monev
c241daaf8a kio: use smaller buffer in KIO::number()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-28 10:21:27 +03:00
Ivailo Monev
cd0bf16803 kio: rework KIO::pixmapForUrl() to use KFileItem
for overlays and overall icon consistency (where possible, KHistoryComboBox
still cannot use it)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-28 10:16:47 +03:00
Ivailo Monev
02557d5dc4 kio: remove redundant KFileItem::pixmap() method
convenience method, was not applying all possible overlays nor was it
producing a pixmap that would match the icon returned by
KFileItem::iconName()

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-28 09:52:05 +03:00
Ivailo Monev
5f8a5ca497 kio: replace KFileItemPrivate::user() and KFileItemPrivate::group() with their body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-28 09:31:57 +03:00
Ivailo Monev
4f2ec79294 kio: remove redundant key checks in KFileItemActions::addServiceActionsTo()
neither X-KDE-ShowIfRunning nor X-KDE-ShowIfDBusCall is used, not
registered properties either

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 21:50:38 +03:00
Ivailo Monev
98b927aef3 kio: remove unused X-KDE-CfgDlgHierarchy property
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 21:45:42 +03:00
Ivailo Monev
ffd78c2bdb kio: testing build fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 21:37:08 +03:00
Ivailo Monev
8e76e09b00 kio: KFileItem::permissionsString() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 20:59:43 +03:00
Ivailo Monev
95e5af4190 kio: remove unused KFileItem methods
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 20:41:03 +03:00
Ivailo Monev
e88a8bd627 kio: do not cache the name in lower case from KFileItem::name()
case-insensitive comparison is faster and is already done by
KDirSortFilterProxyModel

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 20:08:38 +03:00
Ivailo Monev
8e1a9cfec7 kio: use KPixmapWidget instead of QLabel in KIO::RenameDialog
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 19:53:52 +03:00
Ivailo Monev
c5d63044f5 kio: merge KFileItem::refreshMimeType() into KFileItem::refresh()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 19:05:17 +03:00
Ivailo Monev
edbdb6dfbe kio: drop redundant KFileItem constructors and arguments
never set to anything other than empty QString or KFileItem::Unknown

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 18:26:44 +03:00
Ivailo Monev
b2a8af5dd6 kio: drop the boolean argument of KFileItem constructor
the argument name is so misleading, why is that? I did not name it..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 17:51:43 +03:00
Ivailo Monev
825763d73f kio: drop the feature to delay MIME type determination
it shall be delayed without the feature (which it was anyway)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 17:10:04 +03:00
Ivailo Monev
07b318f9ac kio: remove redundant private method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-24 21:25:55 +03:00
Ivailo Monev
75cf57aac5 kio: drop support for "most local URL"
was used by some slaves (e.g. the archive slave which is no more).

lets see if you can find it jira:
https://ivailo-monev.atlassian.net/browse/KDE-12

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-24 20:46:17 +03:00
Ivailo Monev
b5b1741ca5 kio: correct logic for hiding user name in KIO::SlaveBase::openPasswordDialog()
that nasty operator not..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-21 17:12:52 +03:00
Ivailo Monev
a224bab20c kdeui: drop the domain feature of KPasswordDialog
editing the domain does not make sense, showing domain can be done via
comment (the complete URL is shown via comment by the KIO curl slave for
example)

note the change to KIO::AuthInfo, this invalidates stored data

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 23:17:35 +03:00
Ivailo Monev
2983df9818 kio: properly initialize KIO::AuthInfo members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 22:33:21 +03:00
Ivailo Monev
f0dd6c73f5 kio: check cache only if the password store is not open from KIO::SlaveBase::openPasswordDialog()
if the password store is open and KIO::SlaveBase::openPasswordDialog() is
called then the password from the cache is not valid

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 11:02:26 +03:00
Ivailo Monev
42f9a2162c kio: remove unused headers inclusions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 11:01:17 +03:00
Ivailo Monev
03e6b05f68 kio: use members for extra KIO::AuthInfo fields
because streaming a map of QVariants is not exactly optimal, members remain
undocumented but refer to KPasswordDialog flags and such anyway

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 10:56:23 +03:00
Ivailo Monev
11b5a43a53 kio: MOC warning fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-17 08:14:42 +03:00
Ivailo Monev
3ebc020de4 kio: remove methods that are not implemented
the compiler is supposed to catch such errors (e.g. wrong type passed to
the method)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-17 07:46:17 +03:00
Ivailo Monev
8c8855d9a6 generic: drop temporary file option
any program launched with temporary file (as per the spec) argument
(because it does not support %u or %U) should not be responsible for
deleting the file, klauncher already handles that thus the option is
redundant. I don't know how other implemenatations (of program launchers)
do it but I cannot say I care either

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-16 01:37:20 +03:00
Ivailo Monev
381ab0a324 kio: wake up the slave before terminating it
otherwise (apparently) sending SIGTERM is not doing anything

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-14 11:54:19 +03:00
Ivailo Monev
9530356389 kio: use smaller type for sending KIO::JobUiDelegate::MessageBoxType type
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-14 09:02:23 +03:00
Ivailo Monev
e4ce49f138 kio: use the macro for sending data in KIO::SlaveInterface::setConfig()
no functional change

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-14 08:58:36 +03:00
Ivailo Monev
24336de9b9 kio: KIO::NetAccess review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-13 23:25:10 +03:00
Ivailo Monev
7f261aca95 kdecore: new KTemporaryFile::urlPath() method
based on the bits in kparts/part.cpp

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-13 22:52:30 +03:00
Ivailo Monev
75eeefb652 kio: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-13 08:50:41 +03:00