Commit graph

117 commits

Author SHA1 Message Date
Ivailo Monev
7a3db6fd57 kioslave: enable cursorthumbnail by default
because cursors are technically images and the thumbnails creation is cheap
(even tho the result is not cached, cursors are small images)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-08 15:31:44 +03:00
Ivailo Monev
7c2d1f3bd0 kioslave: discard the data buffer and pixmap once text thumbnail is created
to reclaim the memory allocated

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-29 20:21:48 +03:00
Ivailo Monev
6fcf4e8224 kioslave: copyright imagecreator to me
implemented rotation (with configuration interface), updated MIME types,
etc. for reference:
fce69c3dc4

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-29 20:15:44 +03:00
Ivailo Monev
866ba072f1 kioslave: drop support for sequenced thumbnails
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-15 00:48:58 +03:00
Ivailo Monev
1ef80f8af0 kioslave: directory thumbnailer optimization
by collecting sub-directories to possibly propagate later listing of the
directory has to be done only once reducing the overall I/O required for
generating directory thumbnails in case no thumbnail can be created from
the files in the directory

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-09 19:06:58 +03:00
Ivailo Monev
c6114b45d9 generic: do not install kcfg files
see the following commit in kdelibs repo:
ee1aa40904077b7cae3c3575ffeaab176e42a85b

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-09 05:50:15 +03:00
Ivailo Monev
24fa2781e2 kioslave: keep reference to the QByteArray object in CursorCreator::create()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-23 06:14:01 +03:00
Ivailo Monev
ce48bc0997 generic: preperations for kdelibs changes
automatically replaced via:
find -name CMakeLists.txt -exec sed -e 's|${KDE4_PLASMA_LIBS}|KDE4::plasma|g' -e 's|${KDE4_KIO_LIBS}|KDE4::kio|g' -e 's|${KDE4_SOLID_LIBS}|KDE4::solid|g' -e 's|${KDE4_KFILE_LIBS}|KDE4::kfile|g' -e 's|${KDE4_KDECORE_LIBS}|KDE4::kdecore|g' -e 's|${KDE4_KDEUI_LIBS}|KDE4::kdeui|g' -e 's|${KDE4_KCMUTILS_LIBS}|KDE4::kcmutils|g' -e 's|${KDE4_KDECLARATIVE_LIBS}|KDE4::kdeclarative|g' -e 's|${KDE4_KPTY_LIBS}|KDE4::kpty|g' -e 's|${KDE4_KEMAIL_LIBS}|KDE4::kemail|g' -e 's|${KDE4_KMEDIAPLAYER_LIBS}|KDE4::kmediaplayer|g' -e 's|${KDE4_KPARTS_LIBS}|KDE4::kparts|g' -e 's|${KDE4_KIDLETIME_LIBS}|KDE4::kidletime|g' -e 's|${KDE4_KTEXTEDITOR_LIBS}|KDE4::ktexteditor|g' -e 's|${KDE4_KPASSWDSTORE_LIBS}|KDE4::kpasswdstore|g' -e 's|${KDE4_KARCHIVE_LIBS}|KDE4::karchive|g' -e 's|${KDE4_KDNSSD_LIBS}|KDE4::kdnssd|g' -e 's|${KDE4_KNOTIFYCONFIG_LIBS}|KDE4::knotifyconfig|g' -e 's|${KDE4_KEXIV2_LIBS}|KDE4::kexiv2|g' -i {} +

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 23:27:11 +03:00
Ivailo Monev
3be2388c2f kioslave: remove redundant qsrand() call in ThumbnailProtocol::drawSubThumbnail()
the pseudo-random number generator is automatically seeded per-thread now

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-10 19:52:08 +03:00
Ivailo Monev
fab1ea4289 generic: adjust to KIO protocol changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 02:42:24 +02:00
Ivailo Monev
c7a9f67a23 kioslave: do not convert the image from imagethumbnail
if the depth is required to be 32 somewhere else then it should be
converted there

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-18 22:59:12 +02:00
Ivailo Monev
17cd523fb2 kioslave: drop windowsimagecreator thumbnailer
it uses the ICO image format handler which can read only
image/vnd.microsoft.icon

also optimized the windowsexecreator while at it to not created
temporary file (which later wrestool would overwrite anyway) but
rather just generate output file path via KTemporaryFile::filePath()
and delete it manually when done

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-16 14:40:02 +02:00
Ivailo Monev
aabd7af209 kioslave: use QApplication instead of KApplication in the thumbnail slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-14 16:30:55 +02:00
Ivailo Monev
5e162c27fe generic: sync preview defaults
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 14:29:20 +02:00
Ivailo Monev
c6c9a014f5 kioslave: do not paint icon if the image is too small
the icon is OK when painted on preview displayed in the file properties
dialog (because it is big) but not when it is painted on the previews
generated for Dolphin for example (depending on the icon size which is in
the 16x16-256x256 range)

the ratio may be tweaked in the future, have to play around with it and see
how it goes for the plasma folder applet, tooltips, etc.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 12:23:46 +02:00
Ivailo Monev
d9cefe86c4 kioslave: release the format before the page from djvucreator
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 11:57:05 +02:00
Ivailo Monev
04fd07eec7 kioslave: scale the page size to the requested thumbnail width and height from djvucreator thumbnailer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 10:54:06 +02:00
Ivailo Monev
2988a77e82 kioslave: draw blended icon for document thumbnails
since the document thumbnails look pretty much the same (i.e. a text page)
drawing icon not only from the generic text thumbnailer as indicator what
type of document the thumbnail is for makes sense

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 10:34:36 +02:00
Ivailo Monev
72e935557a kioslave: install the djvuthumbnail.desktop conditionally
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 09:28:51 +02:00
Ivailo Monev
69a1de37d2 kioslave: wait for document decoding to complete in djvucreator
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 06:15:45 +02:00
Ivailo Monev
715b840e4a kioslave: djvucreator rewrite to use DjVu library
rendering into memory block allocated for the QImage without extra process
should speed things up

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-12 17:46:44 +02:00
Ivailo Monev
2315772e5a generic: MOC warnings fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-06 23:59:08 +02:00
Ivailo Monev
78f0224414 generic: adjust to KIO changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-06 04:05:59 +02:00
Ivailo Monev
906c5331da kioslave: use QTextCodec::codecForText() for text encoding detection in textthumbnail thumbnailer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-29 08:20:18 +02:00
Ivailo Monev
12491d988d kioslave: add image/vnd.djvu+multipage to the djvuthumbnail MIME types
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-26 00:23:52 +02:00
Ivailo Monev
16862f5e52 kioslave: const-ify variable in ThumbnailProtocol::pluginForMimeType()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-26 00:19:33 +02:00
Ivailo Monev
b01b2a2d42 kioslave: sync preview defaults
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 23:54:02 +02:00
Ivailo Monev
8b2eba7361 generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 01:41:49 +02:00
Ivailo Monev
382ab1e4a9 generic: sync default preview sizes limits
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-26 07:34:23 +03:00
Ivailo Monev
9471b46f07 kioslave: remove EXR thumbnailer
no image handler for EXR now and the thumbnail may be too small to fit
well in the file properties dialog, if there is image handler (plugin)
for EXR the generic image thumbnailer can still create one

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-12 04:14:59 +03:00
Ivailo Monev
dcc3b987b4 kioslave: remove unused IcoUtils::loadIcoImageFromExe() function argument
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 00:32:49 +03:00
Ivailo Monev
ba947123bf kioslave: merge ICO format related function overloads
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 00:28:41 +03:00
Ivailo Monev
e4e6a281b3 kioslave: remove unused ICO format related utility functions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 00:16:32 +03:00
Ivailo Monev
21296837e2 kioslave: ignore maximum size limit for epubthumbnail and comicbookthumbnail thumbnailers
often files in such format are larger than the default limit for local
files which is 5MB (was 1MB not long ago)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 14:23:54 +03:00
Ivailo Monev
16014529c1 kioslave: make use of KTemporaryFile::filePath()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-07 14:13:37 +03:00
Ivailo Monev
88db934aa7 generic: use the new karchive library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 16:56:10 +03:00
Ivailo Monev
878bdec878 kioslave: exrcreator thumbnailer review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 13:40:17 +03:00
Ivailo Monev
83720e6c80 kioslave: minor thumbnailers review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 03:38:56 +03:00
Ivailo Monev
cc7518889c kioslave: fix double-free in epubthumbnail
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 00:07:52 +03:00
Ivailo Monev
aa27f33e87 kioslave: epubthumbnail rewrite
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 23:51:12 +03:00
Ivailo Monev
d82746be82 generic: adjust to KLocale changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-30 20:19:42 +03:00
Ivailo Monev
a3bc9cf437 generic: make use of the new KRandom::randomMax() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 11:55:36 +03:00
Ivailo Monev
acabd50003 kioslave: use glob as MimeType to register imagethumbnail for all images MIME types
fixes thumbnail generation for HEIF images for example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-27 07:13:25 +03:00
Ivailo Monev
efb984cfae generic: bump minimum Katie version requirement to 4.12.0
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 03:59:41 +03:00
Ivailo Monev
6b43e45753 kioslave: discard thumbnail from Exiv2 metadata if it is smaller than the requested size
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-07 23:16:01 +03:00
Ivailo Monev
b400ca1b7a kioslave: sync thumbnail name code with kdelibs
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-20 14:14:42 +02:00
Ivailo Monev
f46cea0ed1 kioslave: sync thumbnail name code with kdelibs
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-13 10:08:44 +02:00
Ivailo Monev
037fee5241 kioslave: reimplement DjVu thumbnail creator [ci reset]
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-09 18:54:34 +02:00
Ivailo Monev
769ed9882b kioslave: correct format for thumbnails
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-02 15:08:32 +02:00
Ivailo Monev
5666a4ba6e kioslave: save thumbnails in Katie's default image format
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-28 01:56:06 +02:00