Commit graph

5505 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
37cfd2fd46 kutils: do not attempt to open already open KPasswdStore
purely for optimization purpose (e.g. not logging debug messages, the check
is cheap)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-01 04:43:28 +03:00
Ivailo Monev
7f0d7fa885 kioslave: const-ify variable in curl slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-01 04:42:36 +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
71d51a985e kutils: fix build without openssl
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-01 04:03:37 +03:00
Ivailo Monev
3c7b0419cf kioslave: do not redirect to URL that shows the password from curl slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-06-01 03:49:39 +03:00
Ivailo Monev
610ce35050 kdecore: log debug messages for KLockFile
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 20:14:41 +03:00
Ivailo Monev
1689a9288d kdeui: do not change the spin boxes suffix to empty one on value change from KIntNumInput and KDoubleNumInput
because suffix may be set via the KDoubleNumInput::setSuffix() overload
that takes QString argument

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 18:50:42 +03:00
Ivailo Monev
07fecca8d0 kutils: store empty passwords from KPasswdStoreImpl
setting the password to empty may mean that password is no longer required

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 18:10:45 +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
1d0d3598c7 kdeui: use KToolInvocation::startServiceForUrl() instead of spawning kde-open process in KWidgetJobTracker
kde-open does exactly the same - it calls
KToolInvocation::startServiceForUrl() with the URL as argument

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 05:10:06 +03:00
Ivailo Monev
d06988eeaf kutils: remove unused header inclusion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-31 04:37:55 +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
22d6167ae8 kdeui: map properties for all widgets KConfigDialogManager supports
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 13:02:20 +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
8364192b45 kdeui: map properties in KConfigDialogManager for all currently used widgets
the widgets used by kwin, gwenview and okular

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 04:03:24 +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
3bbbe4f382 kdecore: PCI IDs database update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-30 03:04:37 +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
58627ac198 kdecore: update comment in KMimeType::iconNameForUrl()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-29 05:06:52 +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
192a7ee9bc kinit: mimic KFileItem::run() when starting a service for remote URL
KRun did not do that, it is done now tho and (essentially) instead of
starting the service for inode/vnd.kde.service.http (which there is no
registered service for, that MIME type is made up for the sake of KIO)
the service for the target URL (e.g. http://192.168.1.100:12216) will be
started (which since that is http service would be most likely web browser)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-29 04:00:02 +03:00
Ivailo Monev
16f1dbd84e kdecore: do not cache icon names that are not made up in KMimeType::iconName()
KMimeType itself is shared data cached by KMimeTypeRepository

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-29 03:04:54 +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
1cdb2c631f kioslave: fix possible crash in case the FTP mode string is invalid
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-27 20:40:41 +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
cea5737e95 kinit: different take on duplicate URLs
to not pass temporary files more than once to programs

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-25 11:37:21 +03:00