Ivailo Monev
010a2f9054
kio: check only the major poppler version in poppler metadata plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-17 04:19:08 +02:00
Ivailo Monev
998d57874d
kio: use QString instead of KUrl as argument for KFileMetaDataPlugin::metaData()
...
for performance reasons (to not convert KUrl to QString from each plugin)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-21 00:34:54 +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
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
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
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
5613e5483c
generic: remove redundant build varibles
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 20:25:52 +03:00
Ivailo Monev
219bea5656
kio: deprecation warning fix
...
next time just change the poppler::time_type typedef (less ifdef spaghetti)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 21:51:17 +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
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
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
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
Ivailo Monev
2b2ac283e8
kio: move metadata plugin keys to the .desktop files
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-04 14:40:57 +02:00
Ivailo Monev
1e982a7e2d
kio: move metadata plugin MIME types to the .desktop files
...
ideally, the keys would also be stored in the .desktop files so that
plugin instances would not have to be created from
KFileMetaInfo::supportedKeys() too
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-04 13:59:00 +02:00
Ivailo Monev
feb0869d29
kio: avoid temporary in kfilematadata_exiv2 plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-16 01:02:53 +03:00
Ivailo Monev
e29151a728
kutils: essentially KExiv2 rewrite
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-16 00:59:16 +03:00
Ivailo Monev
451301f58f
kio: implement fonts meta information extractor via Freetype
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 20:51:32 +03:00
Ivailo Monev
4a4c85431e
kdecore: move K_EXPORT_PLUGIN() macro to kpluginfactory header [ci reset]
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-31 09:06:11 +03:00
Ivailo Monev
e4c7b66490
kdecore: move K_EXPORT_PLUGIN() macro to kpluginloader header
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-30 22:01:35 +03:00
Ivailo Monev
7271414eed
kio: set the comment key for metadata extractors
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 18:35:10 +03:00
Ivailo Monev
4ccf3f79a6
kio: const-ify variable
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 03:11:54 +03:00
Ivailo Monev
48745abc86
kio: implement Postscript meta information extractor via libspectre
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 03:02:36 +03:00
Ivailo Monev
f875fea2ef
kio: extract page count via Poppler metadata plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-13 02:40:36 +03:00
Ivailo Monev
a70b97b0e2
kio: fix rare ffmpeg metadata extractor crash
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-28 20:56:15 +03:00
Ivailo Monev
69f4e8b329
kio: extract FPS via FFmpeg metadata plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-17 12:15:36 +03:00
Ivailo Monev
05b34e20b5
kio: implement PDF meta information extractor via Poppler
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-17 04:09:12 +03:00
Ivailo Monev
187385a291
kio: assume KMimeType::allMimeTypes() does not have duplicates in FFmpeg metadata plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-16 21:58:59 +03:00
Ivailo Monev
af9a8dbd86
kio: implement EPUB meta information extractor via ebook-tools
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-16 03:38:30 +03:00
Ivailo Monev
b4f5cc99f6
kio: use kio4 catalog in metadata plugins
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-15 05:08:18 +03:00
Ivailo Monev
2485fe0959
kio: mark KFileMetaDataPlugin as stable
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-15 00:04:18 +03:00
Ivailo Monev
256441eb3f
kio: extract more metadata via FFmpeg
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 23:36:18 +03:00
Ivailo Monev
827cea933d
kio: ignore whatever MIME types FFmpeg codecs claim
...
there is apparently codec for text/x-nfo and video codec meta information
was shown for such files (ansi)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 23:05:52 +03:00
Ivailo Monev
f53ee7d15a
kio: extract more metadata via FFmpeg
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 22:56:28 +03:00
Ivailo Monev
1d5bd20054
kio: extract duration metadata via FFmpeg
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 21:08:24 +03:00
Ivailo Monev
a49685fcf5
kio: extract more metadata via exiv2
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 20:03:15 +03:00
Ivailo Monev
e175ca1377
kio: implement option to disable metadata plugins
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 12:10:48 +03:00
Ivailo Monev
6197c25884
kio: implement audio and video meta information extractor via TagLib
...
TODO: elide meta information values or this may happen:
https://ibb.co/MZGv4Vz
2022-04-14 11:09:24 +03:00
Ivailo Monev
5e6e38e9a6
generic: fix build with older versions of FFmpeg by referencing meta-headers
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 10:45:27 +03:00
Ivailo Monev
2cc6924ac3
kio: explicitly link to avcodec library
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 08:26:13 +03:00
Ivailo Monev
0e2ffeebe9
kio: implement audio and video meta information extractor via FFmpeg
2022-04-14 08:04:46 +03:00
Ivailo Monev
e722b26ea5
kio: reimplement meta information extraction
...
TODO: plugins for audio and video meta information extraction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-14 04:45:36 +03:00