From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-misc/krusader/files/, kde-misc/krusader/
Date: Thu, 21 Dec 2023 10:15:55 +0000 (UTC) [thread overview]
Message-ID: <1703153738.8313cbf7011acb581fd5a9d9f9bb542345f4b874.asturm@gentoo> (raw)
commit: 8313cbf7011acb581fd5a9d9f9bb542345f4b874
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 21 09:47:01 2023 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Dec 21 10:15:38 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8313cbf7
kde-misc/krusader: Backport various upstream fixes
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../krusader-2.8.0-icon-dimming-w-hidpi.patch | 26 +++++++
.../krusader-2.8.0-icon-render-w-app-scaling.patch | 50 +++++++++++++
.../krusader/files/krusader-2.8.0-segfault.patch | 63 ++++++++++++++++
kde-misc/krusader/krusader-2.8.0-r1.ebuild | 83 ++++++++++++++++++++++
4 files changed, 222 insertions(+)
diff --git a/kde-misc/krusader/files/krusader-2.8.0-icon-dimming-w-hidpi.patch b/kde-misc/krusader/files/krusader-2.8.0-icon-dimming-w-hidpi.patch
new file mode 100644
index 000000000000..e0bf516bbdfb
--- /dev/null
+++ b/kde-misc/krusader/files/krusader-2.8.0-icon-dimming-w-hidpi.patch
@@ -0,0 +1,26 @@
+From 7ea9f1f0dbdd07cd5c5baae56bb672a7be519932 Mon Sep 17 00:00:00 2001
+From: Wladimir Palant <fqcgithub@palant.de>
+Date: Wed, 8 Mar 2023 17:07:15 +0100
+Subject: [PATCH] Fixed dimming of file icons in HiDPI environments
+
+Discussion: https://invent.kde.org/utilities/krusader/-/merge_requests/119
+---
+ app/Panel/PanelView/krview.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/app/Panel/PanelView/krview.cpp b/app/Panel/PanelView/krview.cpp
+index a974b1ad2..a5b1b3872 100644
+--- a/app/Panel/PanelView/krview.cpp
++++ b/app/Panel/PanelView/krview.cpp
+@@ -297,7 +297,7 @@ QPixmap KrView::processIcon(const QPixmap &icon, bool dim, const QColor & dimCol
+ p.fillRect(0, 0, icon.width(), icon.height(), dimColor);
+ p.setCompositionMode(QPainter::CompositionMode_SourceOver);
+ p.setOpacity((qreal)dimFactor / (qreal)100);
+- p.drawPixmap(0, 0, icon.width(), icon.height(), pixmap);
++ p.drawPixmap(0, 0, pixmap);
+
+ return QPixmap::fromImage(dimmed, Qt::ColorOnly | Qt::ThresholdDither |
+ Qt::ThresholdAlphaDither | Qt::NoOpaqueDetection );
+--
+GitLab
+
diff --git a/kde-misc/krusader/files/krusader-2.8.0-icon-render-w-app-scaling.patch b/kde-misc/krusader/files/krusader-2.8.0-icon-render-w-app-scaling.patch
new file mode 100644
index 000000000000..b56bc567a2ce
--- /dev/null
+++ b/kde-misc/krusader/files/krusader-2.8.0-icon-render-w-app-scaling.patch
@@ -0,0 +1,50 @@
+From 2bd5cd0db362db944bdea639bf0be33f6f439268 Mon Sep 17 00:00:00 2001
+From: Evgeny Brazgin <xapienz@phystech.edu>
+Date: Sun, 5 Mar 2023 22:48:27 -0800
+Subject: [PATCH 1/2] Add workaround for icon size in HiDPI environment
+
+---
+ app/Panel/PanelView/listmodel.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/app/Panel/PanelView/listmodel.cpp b/app/Panel/PanelView/listmodel.cpp
+index d6ad6c5f8..7731e8951 100644
+--- a/app/Panel/PanelView/listmodel.cpp
++++ b/app/Panel/PanelView/listmodel.cpp
+@@ -177,7 +177,7 @@ QVariant ListModel::data(const QModelIndex& index, int role) const
+ if (properties()->displayIcons) {
+ if (_justForSizeHint)
+ return QPixmap(_view->fileIconSize(), _view->fileIconSize());
+- return _view->getIcon(fileitem);
++ return QIcon(_view->getIcon(fileitem));
+ }
+ break;
+ }
+--
+GitLab
+
+
+From f447f96f14fdb4f86ccc1286692accbec535ecb0 Mon Sep 17 00:00:00 2001
+From: Evgeny Brazgin <xapienz@phystech.edu>
+Date: Sun, 12 Mar 2023 21:35:27 -0700
+Subject: [PATCH 2/2] Don't set QStyle::State_None for brief view
+
+---
+ app/Panel/PanelView/krinterbriefview.cpp | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/app/Panel/PanelView/krinterbriefview.cpp b/app/Panel/PanelView/krinterbriefview.cpp
+index 69496f890..4042c163c 100644
+--- a/app/Panel/PanelView/krinterbriefview.cpp
++++ b/app/Panel/PanelView/krinterbriefview.cpp
+@@ -401,7 +401,6 @@ void KrInterBriefView::paintEvent(QPaintEvent *e)
+ intersectionSet(area, intersectVector);
+
+ foreach(const QModelIndex &mndx, intersectVector) {
+- option.state = QStyle::State_None;
+ option.rect = visualRect(mndx);
+ painter.save();
+
+--
+GitLab
+
diff --git a/kde-misc/krusader/files/krusader-2.8.0-segfault.patch b/kde-misc/krusader/files/krusader-2.8.0-segfault.patch
new file mode 100644
index 000000000000..ac53d8772270
--- /dev/null
+++ b/kde-misc/krusader/files/krusader-2.8.0-segfault.patch
@@ -0,0 +1,63 @@
+From 2938db287f95a772792420f887dec2d88413409b Mon Sep 17 00:00:00 2001
+From: Pavel Karelin <hkarel@yandex.ru>
+Date: Fri, 25 Nov 2022 22:02:00 +0300
+Subject: [PATCH] Fixed segmentation fault when using CTRL+Left/Right on a
+ panel with invalid path
+
+FIXED: [ 462086 ] Segmentation fault when using CTRL+Left/Right on a panel with invalid path
+BUG: 462086
+
+Discussion: https://invent.kde.org/utilities/krusader/-/merge_requests/117
+---
+ app/Panel/listpanel.cpp | 30 +++++++++++++++---------------
+ 1 file changed, 15 insertions(+), 15 deletions(-)
+
+diff --git a/app/Panel/listpanel.cpp b/app/Panel/listpanel.cpp
+index dde22a257..be785a49f 100644
+--- a/app/Panel/listpanel.cpp
++++ b/app/Panel/listpanel.cpp
+@@ -913,26 +913,26 @@ void ListPanel::keyPressEvent(QKeyEvent *e)
+ // user pressed CTRL+Right/Left - refresh other panel to the selected path if it's a
+ // directory otherwise as this one
+ if ((isLeft() && e->key() == Qt::Key_Right) || (!isLeft() && e->key() == Qt::Key_Left)) {
+- QUrl newPath;
+- KrViewItem *it = view->getCurrentKrViewItem();
+-
+- if (it->name() == "..") {
+- newPath = KIO::upUrl(virtualPath());
+- } else {
+- FileItem *v = func->getFileItem(it);
+- // If it's a directory different from ".."
+- if (v && v->isDir() && v->getName() != "..") {
+- newPath = v->getUrl();
++ if (KrViewItem *it = view->getCurrentKrViewItem()) {
++ QUrl newPath;
++ if (it->name() == "..") {
++ newPath = KIO::upUrl(virtualPath());
+ } else {
+- // If it's a supported compressed file
+- if (v && KrArcHandler::arcSupported(v->getMime())) {
+- newPath = func->browsableArchivePath(v->getUrl().fileName());
++ FileItem *v = func->getFileItem(it);
++ // If it's a directory different from ".."
++ if (v && v->isDir() && v->getName() != "..") {
++ newPath = v->getUrl();
+ } else {
+- newPath = virtualPath();
++ // If it's a supported compressed file
++ if (v && KrArcHandler::arcSupported(v->getMime())) {
++ newPath = func->browsableArchivePath(v->getUrl().fileName());
++ } else {
++ newPath = virtualPath();
++ }
+ }
+ }
++ otherPanel()->func->openUrl(newPath);
+ }
+- otherPanel()->func->openUrl(newPath);
+ } else {
+ func->openUrl(otherPanel()->virtualPath());
+ }
+--
+GitLab
+
diff --git a/kde-misc/krusader/krusader-2.8.0-r1.ebuild b/kde-misc/krusader/krusader-2.8.0-r1.ebuild
new file mode 100644
index 000000000000..23da7d3ff242
--- /dev/null
+++ b/kde-misc/krusader/krusader-2.8.0-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="forceoptional"
+KFMIN=5.106.0
+QTMIN=5.15.9
+inherit ecm kde.org optfeature
+
+if [[ ${KDE_BUILD_TYPE} = release ]]; then
+ SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Advanced twin-panel (commander-style) file-manager with many extras"
+HOMEPAGE="https://krusader.org/"
+
+LICENSE="GPL-2+"
+SLOT="5"
+IUSE=""
+
+COMMON_DEPEND="
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtprintsupport-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=kde-frameworks/karchive-${KFMIN}:5
+ >=kde-frameworks/kbookmarks-${KFMIN}:5
+ >=kde-frameworks/kcodecs-${KFMIN}:5
+ >=kde-frameworks/kcompletion-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kguiaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kitemviews-${KFMIN}:5
+ >=kde-frameworks/kjobwidgets-${KFMIN}:5
+ >=kde-frameworks/knotifications-${KFMIN}:5
+ >=kde-frameworks/kparts-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/ktextwidgets-${KFMIN}:5
+ >=kde-frameworks/kwallet-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ >=kde-frameworks/solid-${KFMIN}:5
+ sys-apps/acl
+ sys-libs/zlib
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-qt/qtconcurrent-${QTMIN}:5
+"
+RDEPEND="${COMMON_DEPEND}
+ || (
+ kde-apps/kio-extras-kf5:5
+ kde-apps/kio-extras:5
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-icon-dimming-w-hidpi.patch"
+ "${FILESDIR}/${P}-icon-render-w-app-scaling.patch"
+ "${FILESDIR}/${P}-segfault.patch"
+)
+
+src_prepare() {
+ ecm_src_prepare
+ use handbook || cmake_comment_add_subdirectory doc/handbook
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ optfeature "Markdown text previews" "kde-misc/markdownpart:${SLOT}"
+ optfeature "PDF/PS and RAW image thumbnails" "kde-apps/thumbnailers:${SLOT}"
+ optfeature "video thumbnails" "kde-apps/ffmpegthumbs:${SLOT}"
+ optfeature "bookmarks support" "kde-apps/keditbookmarks:${SLOT}"
+ fi
+ ecm_pkg_postinst
+}
next reply other threads:[~2023-12-21 10:15 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-21 10:15 Andreas Sturmlechner [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-04-22 17:07 [gentoo-commits] repo/gentoo:master commit in: kde-misc/krusader/files/, kde-misc/krusader/ Andreas Sturmlechner
2017-01-23 8:04 Johannes Huber
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1703153738.8313cbf7011acb581fd5a9d9f9bb542345f4b874.asturm@gentoo \
--to=asturm@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox