mirror of
https://github.com/termux-pacman/termux-packages.git
synced 2026-01-20 09:43:25 +00:00
fix(x11/libqtxdg): patch and recompile for compatibility with Qt 6.9.0
- Fixes #24296
This commit is contained in:
@@ -3,7 +3,7 @@ TERMUX_PKG_DESCRIPTION="Qt implementation of freedesktop.org XDG specifications"
|
||||
TERMUX_PKG_LICENSE="LGPL-2.1"
|
||||
TERMUX_PKG_MAINTAINER="@termux"
|
||||
TERMUX_PKG_VERSION="4.1.0"
|
||||
TERMUX_PKG_REVISION=1
|
||||
TERMUX_PKG_REVISION=2
|
||||
TERMUX_PKG_SRCURL="https://github.com/lxqt/libqtxdg/releases/download/${TERMUX_PKG_VERSION}/libqtxdg-${TERMUX_PKG_VERSION}.tar.xz"
|
||||
TERMUX_PKG_SHA256=0604d397d9561a6a6148930a2b131f2bdee86cec6cca304f7513a8ec7b8e8809
|
||||
TERMUX_PKG_DEPENDS="libc++, qt6-qtbase, qt6-qtsvg, glib"
|
||||
|
||||
69
x11-packages/libqtxdg/qt-6.9.0-compatibility.patch
Normal file
69
x11-packages/libqtxdg/qt-6.9.0-compatibility.patch
Normal file
@@ -0,0 +1,69 @@
|
||||
Cherry-pick of https://github.com/lxqt/libqtxdg/commit/35ce74f1510a9f41b2aff82fd1eda63014c3fe2b
|
||||
|
||||
From 35ce74f1510a9f41b2aff82fd1eda63014c3fe2b Mon Sep 17 00:00:00 2001
|
||||
From: Palo Kisa <palo.kisa@gmail.com>
|
||||
Date: Sat, 22 Feb 2025 09:42:18 +0100
|
||||
Subject: [PATCH] Adapt to changes in private headers Qt v6.9 (#311)
|
||||
|
||||
* Adapt to changes in private headers Qt v6.9
|
||||
|
||||
* Added a missing condition
|
||||
|
||||
---------
|
||||
|
||||
Co-authored-by: Tsu Jan <tsujan2000@gmail.com>
|
||||
---
|
||||
src/xdgiconloader/xdgiconloader.cpp | 11 +++++++++--
|
||||
src/xdgiconloader/xdgiconloader_p.h | 3 ++-
|
||||
2 files changed, 11 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/xdgiconloader/xdgiconloader.cpp b/src/xdgiconloader/xdgiconloader.cpp
|
||||
index c299cca..7595069 100644
|
||||
--- a/src/xdgiconloader/xdgiconloader.cpp
|
||||
+++ b/src/xdgiconloader/xdgiconloader.cpp
|
||||
@@ -439,7 +439,11 @@ QThemeIconInfo XdgIconLoader::findIconHelper(const QString &themeName,
|
||||
} else if (gSupportsSvg) {
|
||||
const QString svgPath = subDir + svgIconName;
|
||||
if (QFile::exists(svgPath)) {
|
||||
- std::unique_ptr<ScalableEntry> iconEntry = (followColorScheme() && theme.followsColorScheme()) ? std::make_unique<ScalableFollowsColorEntry>() : std::make_unique<ScalableEntry>();
|
||||
+ std::unique_ptr<QIconLoaderEngineEntry> iconEntry;
|
||||
+ if (followColorScheme() && theme.followsColorScheme())
|
||||
+ iconEntry.reset(new ScalableFollowsColorEntry);
|
||||
+ else
|
||||
+ iconEntry.reset(new ScalableEntry);
|
||||
iconEntry->dir = dirInfo;
|
||||
iconEntry->filename = svgPath;
|
||||
info.entries.push_back(std::move(iconEntry));
|
||||
@@ -737,8 +741,11 @@ QSize XdgIconLoaderEngine::actualSize(const QSize &size, QIcon::Mode mode,
|
||||
QIconLoaderEngineEntry *entry = entryForSize(m_info, size);
|
||||
if (entry) {
|
||||
const QIconDirInfo &dir = entry->dir;
|
||||
- if (dir.type == QIconDirInfo::Scalable || dynamic_cast<ScalableEntry *>(entry))
|
||||
+ if (dir.type == QIconDirInfo::Scalable
|
||||
+ || dynamic_cast<ScalableEntry *>(entry)
|
||||
+ || dynamic_cast<ScalableFollowsColorEntry *>(entry)) {
|
||||
return size;
|
||||
+ }
|
||||
else {
|
||||
int dir_size = dir.size;
|
||||
//Note: fallback for directories that don't have its content size defined
|
||||
diff --git a/src/xdgiconloader/xdgiconloader_p.h b/src/xdgiconloader/xdgiconloader_p.h
|
||||
index 6c5f17f..cb990a9 100644
|
||||
--- a/src/xdgiconloader/xdgiconloader_p.h
|
||||
+++ b/src/xdgiconloader/xdgiconloader_p.h
|
||||
@@ -61,13 +61,14 @@
|
||||
|
||||
class XdgIconLoader;
|
||||
|
||||
-struct ScalableFollowsColorEntry : public ScalableEntry
|
||||
+struct ScalableFollowsColorEntry : public QIconLoaderEngineEntry
|
||||
{
|
||||
#if (QT_VERSION >= QT_VERSION_CHECK(6,8,0))
|
||||
QPixmap pixmap(const QSize &size, QIcon::Mode mode, QIcon::State state, qreal scale) override;
|
||||
#else
|
||||
QPixmap pixmap(const QSize &size, QIcon::Mode mode, QIcon::State state) override;
|
||||
#endif
|
||||
+ QIcon svgIcon;
|
||||
};
|
||||
|
||||
//class QIconLoaderEngine : public QIconEngine
|
||||
Reference in New Issue
Block a user