Commit graph

78 commits

Author SHA1 Message Date
Ivailo Monev
45674c0c4e kdeui: replace KFontDialog and KFontChooser with QFontDialog
requires the following commit from the Katie repo:
97fea30784dfdc41a6599ea31219d0b366d8efaa

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-31 19:01:45 +03:00
Ivailo Monev
688f770e6e kdeui: remove KIconTheme getters for non-standard properties
other changes were made while at it, for reference:
https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-31 15:10:06 +03:00
Ivailo Monev
49378a1e75 kdeui: remove now redundant hack
see the following commit in the Katie repo:
9a8258aed315cfc9eb50a903ecf997ce8f10a87c

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-31 14:26:35 +03:00
Ivailo Monev
1eaf89824e generic: make use of the new QPixmap comparison operators
requires the following commit from the Katie repo:
e28900041a4e78589f3ba28c36fda5bfd6e0f150

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-30 13:07:11 +02:00
Ivailo Monev
0c5d00727e generic: remove redundant Q_OS_UNIX definition checks
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-15 09:28:30 +02:00
Ivailo Monev
abfdeb0244 kdeui: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-15 06:37:21 +02:00
Ivailo Monev
1f2f01be55 kdeui: better KIconEngine::availableSizes()
expensive as it may be it is more reliable check if the icon is actually
available than QIcon::isNull() (for system icons anyway)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-22 22:43:10 +03:00
Ivailo Monev
ba2d781573 kdeui: implement availableSizes() for KIcon
it is actually implemented in the underlaying icon engine (KIconEngine)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-22 20:50:09 +03:00
Ivailo Monev
0f50ef0a87 kdeui: KIconEngine::pixmap() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-22 20:48:55 +03:00
Ivailo Monev
245a161cc8 kdeui: de-duplicate code in KIconEngine::pixmap()
QColor(0,0,0,0) is the same as QColor(Qt::transparent)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-12 23:19:29 +03:00
Ivailo Monev
86f370b395 kdeui: reimplement QIconEngine::iconName() from KIconEngine
this makes KIcon serializable by name (e.g. by KDBusMenuExporter) in
most cases, that however means lookup on the other end (if the icon pixmap
is not serialized it is essentially the same as calling QIcon::fromTheme()
on the other end of the serialization)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-12 23:15:40 +03:00
Ivailo Monev
a2101eec56 kdeui: remove invalid KIconLoader resource directory
considered - nothing installs icons in such directory

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-09 03:08:36 +03:00
Ivailo Monev
c29db4dd9c kdeui: remove toolbar directory from appicon resource
no icons are installed there

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-27 16:53:34 +03:00
Ivailo Monev
dc208c52fd generic: update references to shared data directory
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-18 00:20:22 +03:00
Ivailo Monev
11ddbf175a kdeui: minor KIconLoader optimizations
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-24 22:31:39 +03:00
Ivailo Monev
d032a0ed6d kdeui: move KIconLoader::Type enums to KIconThemeDir
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-24 21:42:15 +03:00
Ivailo Monev
c552f4bb86 kdeui: get rid of K3Icon
the information it holds is not used anywhere, bonus points for
optimizing the icons lookup

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-24 21:16:45 +03:00
Ivailo Monev
25336bda89 kdeui: mark KIconEngine reimplementations as final
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-24 20:18:00 +03:00
Ivailo Monev
fe93b26370 kdeui: remove unused KIcon and K3Icon data pointer members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-24 19:29:26 +03:00
Ivailo Monev
15252c920e kdeui: fix possible out-of-bounds in KIconEffect::apply() methods
e.g. if KIconLoader::NoGroup (-1) is passed as group

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-21 23:53:28 +03:00
Ivailo Monev
c2618febf9 kdeui: convert some KIconEffect::apply() methods to static
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-21 22:41:34 +03:00
Ivailo Monev
29bd64349f kdeui: do not use global static QString for the null effect fingerprint
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-20 01:00:02 +03:00
Ivailo Monev
ed4ebbe70e kdeui: remove unused KIconEffect::doublePixels() method
that's actually just scaling/transformation

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-20 00:49:00 +03:00
Ivailo Monev
4c7db025ff kdeui: someone's typos
why do KIconLoader methods take two size arguments overriding each other?
could've used negative values for KIconLoader::Group. I guess I will have
to fix someone's mess at some point

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-28 15:51:11 +02:00
Ivailo Monev
148110f398 generic: drop locolor support
`apt-file` search yeilds 221 files matching (8 packages provide such),
it is also unused by plasma even tho there are leftovers from support for it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 01:30:27 +02:00
Ivailo Monev
d37a7c4c6e kdeui: ensure the favicon has size suitable for overlay
with commit de8c7f6af1d79c6b3cd3e8b2a21a56a020163b73 (in kde-workspace) I
changed the behaviour of favicon KDED module to not down-scale the favicons
to 16x16 and that ofcourse means large favicons (e.g. 256x256, yes some
websites have favicon with such size) may be overlayed on top of 32x32 icon
which does not look OK.

with this change the icon overlay will match the visual ratio of any
other icon overlay, unfortunetly that means scaling the favicon (i.e. for
large icons such 256x256, favicon with size 16x16 may be up-scaled to 32x32
) but it will still look better than it used to

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 04:44:04 +02:00
Ivailo Monev
9b41127ecb generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 00:40:18 +02:00
Ivailo Monev
b63686e9d0 generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 04:43:56 +02:00
Ivailo Monev
803e38914d kdeui: include now required system limits header
was previously included by qcontiguouscache header

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-31 05:55:19 +02:00
Ivailo Monev
6cf96c3a87 kdeui: remove unused KAnimatedButton class and KIconLoader getters for movies
KIconLoader::loadMovie() and KIconLoader::moviePath() are attempting to
load non-standard .mng files which, as far as I am aware, no icon theme
ships. for reference:
https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html#context

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-28 17:56:47 +03:00
Ivailo Monev
e79637377e kdeui: remove hardcoded pixmaps directories and filter duplicate directories in KIconTheme
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-23 05:03:56 +03:00
Ivailo Monev
2431839ba0 kdeui: avoid temporary in KIconEffect::semiTransparent()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-21 02:04:08 +03:00
Ivailo Monev
4e192e5660 kdeui: remove checks for obsolete index.desktop icon theme files
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-20 16:22:57 +03:00
Ivailo Monev
5b8b2af7c4 kdeui: remove code for images with depth equal to 8
indexed, Katie does not support such anymore

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-29 22:22:04 +03:00
Ivailo Monev
b6af68c97d generic: trim the lines when reading files
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-29 14:09:07 +03:00
Ivailo Monev
6f34ee6809 generic: optimize reading from files
QTextStream uses internal buffer

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-29 10:54:57 +03:00
Ivailo Monev
eb3ea2e4b0 kdeui: remove duplicate QPixmap header inclusion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-28 14:45:13 +03:00
Ivailo Monev
926345627a generic: bump minimum Katie version requirement to 4.12.0
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 03:54:07 +03:00
Ivailo Monev
3422ca4413 generic: get rid of KGLobal::staticQString()
global statics are static objects and the method is using one

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-18 19:49:54 +02:00
Ivailo Monev
2ef0b94051 kdeui: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-12-22 08:39:39 +02:00
Ivailo Monev
b187d42601 kdeui: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-12-22 07:08:49 +02:00
Ivailo Monev
58efc0af13 generic: rename KIconEffect::shadowBlur() method and use it in Plasma::PaintUtils::shadowBlur()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-11-12 03:25:28 +02:00
Ivailo Monev
6509d1f533 kdeui: make shadow blur effect function public
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-11-11 06:28:04 +02:00
Ivailo Monev
409301e9d0 kdeui: ensure icon image used to paint overlay is in format supported by QPainter
fixes drawing of favourite icons in bookmarks runner

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-10-03 06:37:39 +03:00
Ivailo Monev
ea8fad680c generic: load SVG images as any other format
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-09-15 00:20:09 +03:00
Ivailo Monev
3b1c1d09a5 kdeui: move default switch case to bottom in qIconModeToKIconState() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-28 05:08:24 +03:00
Ivailo Monev
c809676fc1 kdeui: use Q_BYTE_ORDER to determine byte order
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-06 23:07:36 +03:00
Ivailo Monev
921e497471 generic: correct codec names in KMimeTypeRepository::parents() and KIconLoaderGlobalData::parseGenericIconsFiles()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-07-11 17:56:24 +03:00
Ivailo Monev
b24622f35d kdeui: use QDir::exists() to check for icon directory existence
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2020-01-13 04:01:04 +00:00
Ivailo Monev
956151a106 kdeui: let QCache decide the cost and when to trim
the problem is that even 128x128 pixmaps would trigger cache trim with the
w*h+1 formula because the max cost is set to 10240 and as noted in the
icon loaded source comments some applications use it to load icons with
size greater than that

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-05-28 16:44:55 +00:00