mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 00:48:18 -07:00
kde-plasma/kdeplasma-addons: Fix comic strip widget crash
Upstream commit 352ecf9aa151e842f5304b8f4dc1fa7c7689b32f KDE-bug: https://bugs.kde.org/show_bug.cgi?id=406991 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
From 352ecf9aa151e842f5304b8f4dc1fa7c7689b32f Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Fella <nicolas.fella@gmx.de>
|
||||
Date: Wed, 20 Jul 2022 15:00:02 +0200
|
||||
Subject: [PATCH] [applets/comic] Disable most context menu actions when comic
|
||||
is not ready
|
||||
|
||||
This can be either because the loading failed or is not done yet
|
||||
|
||||
In those cases the actions don't make sense and can lead to crashes
|
||||
|
||||
BUG: 406991
|
||||
(cherry picked from commit 6a0aec81074135c210a2ed11127ef9cfb138dbca)
|
||||
---
|
||||
applets/comic/comic.cpp | 3 +++
|
||||
applets/comic/comicdata.cpp | 1 +
|
||||
applets/comic/comicdata.h | 6 ++++++
|
||||
3 files changed, 10 insertions(+)
|
||||
|
||||
diff --git a/applets/comic/comic.cpp b/applets/comic/comic.cpp
|
||||
index 1ad3e83a4..b4f8154fa 100644
|
||||
--- a/applets/comic/comic.cpp
|
||||
+++ b/applets/comic/comic.cpp
|
||||
@@ -495,6 +495,9 @@ void ComicApplet::updateContextMenu()
|
||||
{
|
||||
if (mCurrent.id().isEmpty()) {
|
||||
mActiveComicModel->clear();
|
||||
+ }
|
||||
+
|
||||
+ if (mCurrent.id().isEmpty() || !mCurrent.ready()) {
|
||||
mActionNextNewStripTab->setEnabled(false);
|
||||
mActionGoFirst->setEnabled(false);
|
||||
mActionGoLast->setEnabled(false);
|
||||
diff --git a/applets/comic/comicdata.cpp b/applets/comic/comicdata.cpp
|
||||
index 52cc57e91..60eb475c9 100644
|
||||
--- a/applets/comic/comicdata.cpp
|
||||
+++ b/applets/comic/comicdata.cpp
|
||||
@@ -62,6 +62,7 @@ void ComicData::setData(const Plasma::DataEngine::Data &data)
|
||||
mPrev = data[QStringLiteral("Previous identifier suffix")].toString();
|
||||
mNext = data[QStringLiteral("Next identifier suffix")].toString();
|
||||
mAdditionalText = data[QStringLiteral("Additional text")].toString();
|
||||
+ mReady = true;
|
||||
}
|
||||
|
||||
mWebsiteUrl = data[QStringLiteral("Website Url")].toUrl();
|
||||
diff --git a/applets/comic/comicdata.h b/applets/comic/comicdata.h
|
||||
index 9c884a291..b5f5ee3a7 100644
|
||||
--- a/applets/comic/comicdata.h
|
||||
+++ b/applets/comic/comicdata.h
|
||||
@@ -190,6 +190,11 @@ public:
|
||||
return mMaxStripNum;
|
||||
}
|
||||
|
||||
+ bool ready() const
|
||||
+ {
|
||||
+ return mReady;
|
||||
+ }
|
||||
+
|
||||
void save();
|
||||
|
||||
private:
|
||||
@@ -226,6 +231,7 @@ private:
|
||||
bool mScaleComic = false;
|
||||
bool mIsLeftToRight = false;
|
||||
bool mIsTopToBottom = false;
|
||||
+ bool mReady = false;
|
||||
|
||||
KConfigGroup mCfg;
|
||||
};
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
ECM_HANDBOOK="forceoptional"
|
||||
KFMIN=5.92.0
|
||||
PVCUT=$(ver_cut 1-3)
|
||||
QTMIN=5.15.4
|
||||
VIRTUALX_REQUIRED="test"
|
||||
inherit ecm plasma.kde.org optfeature
|
||||
|
||||
DESCRIPTION="Extra Plasma applets and engines"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2"
|
||||
SLOT="5"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
|
||||
IUSE="share webengine"
|
||||
|
||||
RESTRICT="test" # bug 727846
|
||||
|
||||
DEPEND="
|
||||
>=dev-qt/qtdbus-${QTMIN}:5
|
||||
>=dev-qt/qtdeclarative-${QTMIN}:5
|
||||
>=dev-qt/qtgui-${QTMIN}:5
|
||||
>=dev-qt/qtwidgets-${QTMIN}:5
|
||||
>=kde-frameworks/karchive-${KFMIN}:5
|
||||
>=kde-frameworks/kcmutils-${KFMIN}:5
|
||||
>=kde-frameworks/kcompletion-${KFMIN}:5
|
||||
>=kde-frameworks/kconfig-${KFMIN}:5
|
||||
>=kde-frameworks/kconfigwidgets-${KFMIN}:5
|
||||
>=kde-frameworks/kcoreaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kdeclarative-${KFMIN}:5
|
||||
>=kde-frameworks/kholidays-${KFMIN}:5
|
||||
>=kde-frameworks/ki18n-${KFMIN}:5
|
||||
>=kde-frameworks/kio-${KFMIN}:5
|
||||
>=kde-frameworks/knewstuff-${KFMIN}:5
|
||||
>=kde-frameworks/knotifications-${KFMIN}:5
|
||||
>=kde-frameworks/kpackage-${KFMIN}:5
|
||||
>=kde-frameworks/krunner-${KFMIN}:5
|
||||
>=kde-frameworks/kservice-${KFMIN}:5
|
||||
>=kde-frameworks/kunitconversion-${KFMIN}:5
|
||||
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kwindowsystem-${KFMIN}:5
|
||||
>=kde-frameworks/kxmlgui-${KFMIN}:5
|
||||
>=kde-frameworks/plasma-${KFMIN}:5
|
||||
>=kde-frameworks/sonnet-${KFMIN}:5
|
||||
share? ( >=kde-frameworks/purpose-${KFMIN}:5 )
|
||||
webengine? ( >=dev-qt/qtwebengine-${QTMIN}:5 )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
>=dev-qt/qtquickcontrols-${QTMIN}:5
|
||||
>=dev-qt/qtquickcontrols2-${QTMIN}:5
|
||||
>=kde-plasma/plasma-workspace-${PVCUT}:5
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}/${P}-disable-actions-when-comic-is-not-ready.patch" ) # KDE-bug 406991
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
$(cmake_use_find_package share KF5Purpose)
|
||||
$(cmake_use_find_package webengine Qt5WebEngine)
|
||||
)
|
||||
|
||||
ecm_src_configure
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]]; then
|
||||
optfeature "Disk quota applet" sys-fs/quota
|
||||
fi
|
||||
ecm_pkg_postinst
|
||||
}
|
||||
Reference in New Issue
Block a user