Commit graph

938 commits

Author SHA1 Message Date
Ivailo Monev
2880bc1677 kio: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-09 15:35:05 +03:00
Ivailo Monev
bb0c031b69 kio: remove checks for .ui3 and .ui4 files in Messages.sh script
obsolete UI files..

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-08 23:24:04 +03:00
Ivailo Monev
2280f55199 kio: localize the date and time obtained from kfilemetadata_exiv2 plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-08 21:59:25 +03:00
Ivailo Monev
b591e29541 kio: create KHostInfoThread on the heap and terminate it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-07 11:31:55 +03:00
Ivailo Monev
0f7d9f8ea3 kdecore: setup KCrash to log to the system log, update its documentation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-04 11:51:35 +03:00
Ivailo Monev
410d0cdd30 kio: handle compressed PDF documents in kfilemetadata_poppler plugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-01 04:08:36 +00:00
Ivailo Monev
58145187d6 kio: return empty QString from getTime() function for invalid poppler time
QDateTime::fromTime_t() should probably check for such

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-01 03:46:52 +00:00
Ivailo Monev
5545cb7e2f kio: remove unused KProtocolManager::supportsOpening() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-31 20:35:46 +00:00
Ivailo Monev
899f789b07 kdecore: move KToolInvocation to kdeui
to get rid of the KApplication signal which is a hack really

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-31 08:09:02 +00:00
Ivailo Monev
1177b5d671 kio: replace KFileMetaDataWidget::Private::initMetaInfoSettings() with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-30 04:49:10 +03:00
Ivailo Monev
7098b9d98e kio: remove unused and private KFileMetaDataWidget slots
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-30 04:46:07 +03:00
Ivailo Monev
5e358d3015 kio: remove unused KFileItemDelegate::Private::transition() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-29 21:48:11 +03:00
Ivailo Monev
964f78287f kio: call QMimeData constructor in KUrlDragPushButton::dragObject()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-29 20:54:14 +03:00
Ivailo Monev
a2e6cb8a18 kio: remove deprecated and non-operational KIO::Job::canceled() signal
never emitted

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-29 03:16:19 +03:00
Ivailo Monev
e413cbc41f kdecore: reimplement KLocale::formatDuration()
much like the old (and now gone) KLocale::prettyFormatDuration() except
with miliseconds precision instead of days

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-27 07:12:53 +03:00
Ivailo Monev
1a45508306 kdecore: reimplement KLocale
by using QLocale in KLocale and separating the date, time and numbers
conversion from translation KLocale actually gets extended locale
support from QLocale (which uses CLDR data v43 currently). translation
remains unaffected. for comparison here is the result of two function
calls the result of which should explain the whole change:
KLocale::allLanguagesList().size() = 669
KLocale::installedLanguages().size() = 68

the first number is locales Katie supports, the second being the
number of languages Katana is translated into

KSwitchLanguageDialog needs a rewrite but that is on the TODO

also copyrighting KCatalog to me because I rewrote it, for reference:
881b47b8ea

KCalendarSystem gets the middle finger - batteries not included for date
and time. extra calendar systems can, but are unlikely to be, supported
in the future

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-26 23:50:18 +03:00
Ivailo Monev
f452e2e50b kdecore: reimplement KDateTime via QDateTime
KDateTime shall be used only for storing date and time while KLocale
shall be used to display such, not even going to test what KDateTime
does because it is basically a few methods on top of QDateTime now.

and because QDateTime knows not much about calendar systems while
KLocale supports several it makes sense for KDateTime to not be used for
displaying date and time thus the TODOs for KLocale are simply removed

note that KLocale still uses its own parser and formatter which means
that the change affects only KDateTime and its uses, not KLocale

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 07:51:13 +03:00
Ivailo Monev
53a5c81a3a kio: minor KRecentDocument::recentDocuments() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 01:46:20 +03:00
Ivailo Monev
da154d3195 kio: replace KFileItemPrivate::readUDSEntry() with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 01:30:56 +03:00
Ivailo Monev
8475feef40 kio: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 01:26:19 +03:00
Ivailo Monev
1f028422e8 kio: remove unused KIO::StandardFieldTypes::UDS_HIDDEN enum
UNIX being UNIX the leading dot meaning a file/directory is hidden is not
going anywhere, the private KFileItem hidden member is always set to
KFileItemPrivate::Auto too

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 00:29:10 +03:00
Ivailo Monev
3251c5eb1b kio: replace KFileItemPrivate::size() and KFileItemPrivate::cmp() with their body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 00:14:18 +03:00
Ivailo Monev
a990de2b93 kio: KFileItemList::urlList() and KFileItemList::targetUrlList() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-21 00:08:22 +03:00
Ivailo Monev
ea56b1c92f kio: KFileItem::mimeComment() optimization
KFileItem::mimeTypePtr() is lesser version of
KFileItem::determineMimeType() and if KFileItem::determineMimeType() did
not return valid KMimeType::Ptr then neither will KFileItem::mimeTypePtr()
but calling KFileItem::::mimeTypePtr() after KFileItem::determineMimeType()
is redundant

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-20 23:57:46 +03:00
Ivailo Monev
632f5e52de kio: make the internal KIO::CopyInfo actually private, remove unused KIO::CopyJob signal
the signal is actually not used, see the following commit in kde-workspace:
45bbcd5e5e963d029974e09fd66edc454e7e9dc4

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-20 23:23:05 +03:00
Ivailo Monev
903e15327d kio: remove unused headers inclusions in kfileitem source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-20 22:45:14 +03:00
Ivailo Monev
29a6bc934a kio: convert KFileItem::permissionsString() to proper getter
way too much private and mutable KFileItem members, not used a lot so the
performance impact is next to none

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-20 22:08:35 +03:00
Ivailo Monev
a487c9edc6 kio: drop KFileItem metadata related getter and setter
first thing first - KFileMetaInfo does not support non-local files and
KFileItem is ment to be wrapper for both local and (most importantly)
remote (including virtual KIO) files. KIO::UDSEntry does not carry metadata
either so having a metadata getter and setter in KFileItem is simply
redundant, both are not tested and used only by plasma folderview applet
(see kde-workspace/plasma/applets/folderview/tooltipwidget.cpp)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-20 21:03:18 +03:00
Ivailo Monev
39daa5baf3 kio: check if the KMimeType pointer is null in KFileItem::mimetype()
fixes possible crash (in the unusual case when the MIME type cannot be
determinted)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-19 07:38:04 +03:00
Ivailo Monev
757ac43baf kio: do not attempt to get metadata for non-local file URLs
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-18 03:48:11 +03:00
Ivailo Monev
4e1fc45705 kio: remove unused KFileMetaInfo flags
when it comes to KFileMetaInfo its bottleneck is determening what plugin to
use for the given URL/path - determening MIME type, matching globs, etc.
and it still is quite fast to the point where the flags are simply
redundant

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-18 03:36:06 +03:00
Ivailo Monev
3371f4866a kio: KFileMetaInfo::name() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-18 03:16:12 +03:00
Ivailo Monev
7e01cd1bee kio: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 23:14:02 +03:00
Ivailo Monev
f35801d3ee kio: initialize KIO::FileCopyJobPrivate members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 22:53:33 +03:00
Ivailo Monev
e94cf597a6 kio: use the QByteArray::append() method in KIO::StoredTransferJobPrivate::slotStoredData()
does the same really

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 22:08:06 +03:00
Ivailo Monev
7452efccf4 kio: format and indent
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 22:05:51 +03:00
Ivailo Monev
2186a064bb kio: replace KIO::SimpleJobPrivate::simpleJobInit() with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 21:48:21 +03:00
Ivailo Monev
c20c6cc64f kio: remove unused KIO::JobPrivate::emitMounting() and KIO::JobPrivate::emitUnmounting() methods
mounting and unmounting is no longer done by kio

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 21:44:01 +03:00
Ivailo Monev
f987d060a2 kio: remove unused async data sending feature
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 21:37:09 +03:00
Ivailo Monev
bce5621ae2 kio: remove unused and private KIO::TransferJobPrivate members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-17 21:19:25 +03:00
Ivailo Monev
bccf27bfe0 kio: compare the items via KFileItem::cmp() too in KDirListerPrivate::_k_slotUpdateResult()
contrary to common sense the KFileItem comparison operator does not compare
the item attributes, only the URL

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-16 08:11:12 +03:00
Ivailo Monev
888f1bec7c generic: drop support for sequenced thumbnails
unused

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-15 00:24:33 +03:00
Ivailo Monev
2c647b3eee kio: initialize the KIO::PreviewJob members from already created config instance
no point to delay it and re-open config

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-15 00:07:17 +03:00
Ivailo Monev
16950e124e kio: remove unused KIO::PreviewJobPrivate member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-15 00:04:33 +03:00
Ivailo Monev
084a03fb5e kio: iterate over a copy of the watched URLs list in KDirLister::openUrl()
because KDirListerPrivate::unwatchUrl() modifies the list, fixes possible
crash (if the watched URLs list was not empty)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-14 08:09:28 +03:00
Ivailo Monev
f8871a44ff kio: remove reference to non-existing drag-n-drop format
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-13 07:05:27 +03:00
Ivailo Monev
71bfaa374e kio: always create KDirNotify isntance for KDirLister
for emblem icon on shared directories for example (file property change)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-09 20:53:39 +03:00
Ivailo Monev
16f575c7e9 kio: do not emit refresh for the root item on KDirLister update
dolphin for example assumes that signals are emitted only for the filtered
items, not for the root too

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-07 18:15:41 +03:00
Ivailo Monev
cf207aaa67 kio: remove redundant KDirNotify signals
see 693febf429, and since mount points are
local directories (or rather not a KIO thing) KDirWatch will notify
about the changes when the mount point directory no longer contains
entries

bonus points for reducung the D-Bus traffic

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-06 18:29:56 +03:00
Ivailo Monev
49e58e0380 kio: emit deleted before added items from KDirLister
fixes dolphin model inconsistency

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-06 18:00:56 +03:00