summaryrefslogtreecommitdiff
path: root/kde-apps/konsole
diff options
context:
space:
mode:
Diffstat (limited to 'kde-apps/konsole')
-rw-r--r--kde-apps/konsole/Manifest7
-rw-r--r--kde-apps/konsole/files/konsole-21.04.3-no-flash-on-session-close.patch81
-rw-r--r--kde-apps/konsole/files/konsole-21.08.0-fix-crash-w-blur.patch49
-rw-r--r--kde-apps/konsole/konsole-21.04.3-r1.ebuild (renamed from kde-apps/konsole/konsole-20.12.3.ebuild)12
-rw-r--r--kde-apps/konsole/konsole-21.08.0-r1.ebuild73
5 files changed, 217 insertions, 5 deletions
diff --git a/kde-apps/konsole/Manifest b/kde-apps/konsole/Manifest
index cb5a2275e84e..40ad18b14454 100644
--- a/kde-apps/konsole/Manifest
+++ b/kde-apps/konsole/Manifest
@@ -1,5 +1,8 @@
-DIST konsole-20.12.3.tar.xz 1250536 BLAKE2B 83d4af770e42feb9fe96dcebc2cddc6889d98a7d6ce637fde6f8665ce845430e2118b3fcb34ca6448025a397826f14804442a590f1ff4ca62383768af7007a30 SHA512 a48eaa0080b26369f5f163f3ae345bca7f35aa06d581ecc0bbeca54fee2e9b900a4b648f940a67f506ecb00dba971220f1c1c7a699efcbb6e27ee0932c27e37a
+AUX konsole-21.04.3-no-flash-on-session-close.patch 2711 BLAKE2B 0a50eb56a282be8189cb6c0c54abdab9d674fd2fa01842786af558671e2a51d752298ad084e285e1bef96a99ab28cdd5714f28cf9032238e8e172f497b9ee92f SHA512 577b3ebfc91543a3e4a5eebc9fed4db9414daab630b8e31c6530ea5d5de3b8944738527627ba7f47b9ca30fe4d428cd3d98beb7e73d7dd1097b09867256e774e
+AUX konsole-21.08.0-fix-crash-w-blur.patch 1613 BLAKE2B f4a54da701a24031f5a530896b6b4861bd90c0b4f6be9a32046582187da8dc35752e768a9f05e3492f6174990ef371a7570d556cf3e135a4c73049491d369e92 SHA512 fd600b7c3752364c311c727461627b6183e31084b5af36768f7ff2b84e024494b5ec1121202184e2301cbff72549fb99dd8c2475f749ce440ec6192ba70eed15
DIST konsole-21.04.3.tar.xz 1336960 BLAKE2B 2cbcdb3edaae0fec913d82dd0eb2ca80aca70e2b9d749ae1c22512946df8bf5e99aa8444996e41b7bc162727119c8f9216b28b5b15051dd0c6a89221fcbbd355 SHA512 490271a51304d5a64111f6ae74422a6b3143a5349359e55af0845c04a6e6d405fadd1f300dc4d866b7730c0cb852bebfddbb33b0ca9e68d22f264e379d1868e8
-EBUILD konsole-20.12.3.ebuild 1766 BLAKE2B 88c9959d519e25f987e7caa8dbb9a2369110eb852c59ab418c165bf5c46129c85841d0633331cf99c41dec20fabc0f87673fe9a5639d08c7572a46472b6a4e04 SHA512 7c79943e58bd422df01fbf26b1a2ed5f863a64bd4f038402fdad75a9e815d4ff0841b87be08272fc190ecee0b7d729308ce08fd1516a214c6f8eaa96e7bb06dd
+DIST konsole-21.08.0.tar.xz 1373652 BLAKE2B 52661bf8296cb1f64b065f32d0d6a7d4bcf689a45e54c18165b5d4bf6893b7312daa6b45418b9142042154801b34e22388d04998af7d406fed53ab20073dcc11 SHA512 7b59b43e1dd1374001570c7bc611c00c7de738cdf7030954173a8d5b901412cb5653616c12f0b85af38a48e3598bf64d6bce9ca068b520a6683f5fb7bac3c38f
+EBUILD konsole-21.04.3-r1.ebuild 1876 BLAKE2B 42e78abae3fe19c1f7fcaf1bfeca2598f8d0154702cb23b366450482c3e4d3c4d9ff35e88b4c927b1433e6c87df71ca85297364baed3765d307986856fc4f462 SHA512 42ad313c1a56514934ece7efaf1a6c682eafa06e5cd9906188e4ef7c1aafb4333d0630f3b45fe9b9afd3aa05c57c98d755209e7e5645a32fc0f194873da71f6c
EBUILD konsole-21.04.3.ebuild 1796 BLAKE2B e7db09011bb97c8aab943455427555f3c6058969f80ff517c8e8176a53660e6a30e6a7820a32497715d304c5c5f3c18d26460522c778f57fd653144ef1ed5141 SHA512 c06b7598f239d43263bf5dcc5741bb9c0c2eff6b741b44fa925097fb63bd21496950c87d7035b71fe1c4932cca3fe252f02f7bff5c060e26cc33903b617d7991
+EBUILD konsole-21.08.0-r1.ebuild 1854 BLAKE2B a93d607c6914115ad367d3d9b27b3b81d30b5b3d7d783e520bc598680f78e194bd42ba33831d000ba59914f642e612a010f4b91745ca69516b54f85ebe9e1335 SHA512 e4a1e4851f8aec3aaa9b519311b8a912ed2190eafbe986f7f2db0bf6bd1bb4c88ea0d47dfd12be475ccac7593c9483e70f0fd9092ef58dc9992136de828a78d7
MISC metadata.xml 249 BLAKE2B ad415db89e5dee1627aa77f44ded9d4e1e5b8217d06c7ca25bbaa3fe92ce67c2b1090957c45a821b407d7927e5af798498aa6a5b903895ee1af8ee20a446c7f7 SHA512 76a5a340b13f0053ca3c5e94ed24380ea8d29b45ac8655419e22eaadb1e4a827c04d2e7e36b65145c4964e6526f656618fc6ac144e277ef53cb7373e6239e3c3
diff --git a/kde-apps/konsole/files/konsole-21.04.3-no-flash-on-session-close.patch b/kde-apps/konsole/files/konsole-21.04.3-no-flash-on-session-close.patch
new file mode 100644
index 000000000000..d8b14f2f1660
--- /dev/null
+++ b/kde-apps/konsole/files/konsole-21.04.3-no-flash-on-session-close.patch
@@ -0,0 +1,81 @@
+From 302c16791935cc3cf262aee355afce13d694b00f Mon Sep 17 00:00:00 2001
+From: Ahmad Samir <a.samirh78@gmail.com>
+Date: Thu, 12 Aug 2021 13:58:20 +0200
+Subject: [PATCH] Prevent window "flashing" when closing the last session
+
+There are two scenarios when closing a window:
+A) clicking the close button on the title bar (or Ctrl+Shift+Q):
+~MainWindow()
+~ViewManager()
+~TabbedViewContainer()
+~TerminalDisplay()
+~Session()
+
+B) closing the last session/tab in a window:
+SessionController::sessionFinished()
+~Session()
+~TerminalDisplay()
+~TabbedViewContainer()
+~MainWindow()
+~ViewManager()
+
+the issue with the second case is that the TerminalDisplay is torn down
+first, which exposes the TabbedViewContainer widget, the latter has the same
+Qt::Window colour as the system colour scheme window background colour, if
+you're using a dark terminal colour scheme and a light-coloured system colour
+scheme, you could see some "flashing" when you close the last session with
+e.g. Ctrl+D.
+
+To fix this, in sessionFinished() check if TabbedViewContainer::count() is
+1 (i.e. closing last tab/session), and emit the empty() signal in that case,
+which is connected to MainwWindow::close(), then the order of tear down
+becomes:
+SessionController::sessionFinished()
+~Session()
+~MainWindow()
+~ViewManager()
+~TabbedViewContainer()
+~TerminalDisplay()
+
+BUG: 432077
+FIXED-IN: 21.12
+(cherry picked from commit bbec72250d080ce286a6762fb9beee4b6e7981c9)
+---
+ src/MainWindow.cpp | 2 +-
+ src/ViewManager.cpp | 7 +++++++
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp
+index cc38b3990..0fae334de 100644
+--- a/src/MainWindow.cpp
++++ b/src/MainWindow.cpp
+@@ -102,7 +102,7 @@ MainWindow::MainWindow() :
+
+ // create view manager
+ _viewManager = new ViewManager(this, actionCollection());
+- connect(_viewManager, &Konsole::ViewManager::empty, this, &Konsole::MainWindow::close);
++ connect(_viewManager, &Konsole::ViewManager::empty, this, &QWidget::close);
+ connect(_viewManager, &Konsole::ViewManager::activeViewChanged, this,
+ &Konsole::MainWindow::activeViewChanged);
+ connect(_viewManager, &Konsole::ViewManager::unplugController, this,
+diff --git a/src/ViewManager.cpp b/src/ViewManager.cpp
+index 751684dc8..4d33a4cf8 100644
+--- a/src/ViewManager.cpp
++++ b/src/ViewManager.cpp
+@@ -461,6 +461,13 @@ void ViewManager::sessionFinished()
+ return;
+ }
+
++ // The last session/tab? emit empty() so that close() is called in
++ // MainWindow, fixes #432077
++ if (_viewContainer->count() == 1) {
++ Q_EMIT empty();
++ return;
++ }
++
+ auto *session = qobject_cast<Session *>(sender());
+ Q_ASSERT(session);
+
+--
+GitLab
+
diff --git a/kde-apps/konsole/files/konsole-21.08.0-fix-crash-w-blur.patch b/kde-apps/konsole/files/konsole-21.08.0-fix-crash-w-blur.patch
new file mode 100644
index 000000000000..b0c7193eda84
--- /dev/null
+++ b/kde-apps/konsole/files/konsole-21.08.0-fix-crash-w-blur.patch
@@ -0,0 +1,49 @@
+From f24dd6acc28393ba6f731be1360731c01a9a1ef0 Mon Sep 17 00:00:00 2001
+From: Ahmad Samir <a.samirh78@gmail.com>
+Date: Fri, 16 Jul 2021 21:37:51 +0200
+Subject: [PATCH] Fix crash when setting blur effect
+
+Basically to use QWidget::windowHandle() to get a QWindow*, we need to first
+set the Qt::WA_NativeWindow attribute on the QWidget. See:
+https://phabricator.kde.org/D23108
+
+BUG: 439871
+FIXED-IN: 21.12
+(cherry picked from commit a6b2bd539162b39191e827566b656bd97266ffad)
+---
+ src/MainWindow.cpp | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp
+index ed5d8cc3d..c67acf8b9 100644
+--- a/src/MainWindow.cpp
++++ b/src/MainWindow.cpp
+@@ -56,6 +56,8 @@
+ #include "terminalDisplay/TerminalDisplay.h"
+ #include "widgets/ViewContainer.h"
+
++#include <konsoledebug.h>
++
+ using namespace Konsole;
+
+ MainWindow::MainWindow() :
+@@ -889,7 +891,15 @@ void MainWindow::setBlur(bool blur)
+ #if KWINDOWSYSTEM_VERSION < QT_VERSION_CHECK(5,82,0)
+ KWindowEffects::enableBlurBehind(winId(), blur);
+ #else
+- KWindowEffects::enableBlurBehind(windowHandle(), blur);
++ // Set the WA_NativeWindow attribute to force the creation of the QWindow.
++ // Without this QWidget::windowHandle() returns 0.
++ // See https://phabricator.kde.org/D23108
++ setAttribute(Qt::WA_NativeWindow);
++ if (QWindow *window = windowHandle()) {
++ KWindowEffects::enableBlurBehind(window, blur);
++ } else {
++ qCWarning(KonsoleDebug) << "Blur effect couldn't be enabled.";
++ }
+ #endif
+ }
+ }
+--
+GitLab
+
diff --git a/kde-apps/konsole/konsole-20.12.3.ebuild b/kde-apps/konsole/konsole-21.04.3-r1.ebuild
index bb7ae228c653..eb5601c28fcf 100644
--- a/kde-apps/konsole/konsole-20.12.3.ebuild
+++ b/kde-apps/konsole/konsole-21.04.3-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=7
ECM_HANDBOOK="optional"
ECM_TEST="true"
-KFMIN=5.75.0
+KFMIN=5.80.0
QTMIN=5.15.2
VIRTUALX_REQUIRED="test"
inherit ecm kde.org
@@ -15,7 +15,7 @@ HOMEPAGE="https://apps.kde.org/konsole/ https://konsole.kde.org"
LICENSE="GPL-2" # TODO: CHECK
SLOT="5"
-KEYWORDS="amd64 arm64 ~ppc64 x86"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
IUSE="X"
DEPEND="
@@ -26,7 +26,6 @@ DEPEND="
>=dev-qt/qtwidgets-${QTMIN}:5
>=dev-qt/qtxml-${QTMIN}:5
>=kde-frameworks/kbookmarks-${KFMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
>=kde-frameworks/kconfig-${KFMIN}:5
>=kde-frameworks/kconfigwidgets-${KFMIN}:5
>=kde-frameworks/kcoreaddons-${KFMIN}:5
@@ -52,6 +51,13 @@ DEPEND="
"
RDEPEND="${DEPEND}"
+PATCHES=( "${FILESDIR}/${P}-no-flash-on-session-close.patch" ) # bug 807933
+
+src_prepare() {
+ ecm_src_prepare
+ ecm_punt_bogus_dep KF5 Completion
+}
+
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package X X11)
diff --git a/kde-apps/konsole/konsole-21.08.0-r1.ebuild b/kde-apps/konsole/konsole-21.08.0-r1.ebuild
new file mode 100644
index 000000000000..4095d9ac5f9e
--- /dev/null
+++ b/kde-apps/konsole/konsole-21.08.0-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_HANDBOOK="optional"
+ECM_TEST="true"
+KFMIN=5.84.0
+QTMIN=5.15.2
+VIRTUALX_REQUIRED="test"
+inherit ecm kde.org
+
+DESCRIPTION="KDE's terminal emulator"
+HOMEPAGE="https://apps.kde.org/konsole/ https://konsole.kde.org"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="X"
+
+DEPEND="
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtprintsupport-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=kde-frameworks/kbookmarks-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kcrash-${KFMIN}:5
+ >=kde-frameworks/kdbusaddons-${KFMIN}:5
+ >=kde-frameworks/kguiaddons-${KFMIN}:5
+ >=kde-frameworks/kjobwidgets-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/knewstuff-${KFMIN}:5
+ >=kde-frameworks/knotifications-${KFMIN}:5
+ >=kde-frameworks/knotifyconfig-${KFMIN}:5
+ >=kde-frameworks/kparts-${KFMIN}:5
+ >=kde-frameworks/kpty-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/ktextwidgets-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ X? ( x11-libs/libX11 )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-21.04.3-no-flash-on-session-close.patch" # bug 807933
+ "${FILESDIR}/${P}-fix-crash-w-blur.patch" # bug 807905, fixed in 21.08.1
+)
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package X X11)
+ )
+
+ ecm_src_configure
+}
+
+src_test() {
+ # drkonqi process interferes. bug 702690
+ local myctestargs=(
+ -E "(DBusTest)"
+ )
+
+ ecm_src_test
+}