From 616579b5d773c50af31ee56f00105d96ce641ca2 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Aug 2021 10:30:13 +0100 Subject: gentoo resync : 14.08.2021 --- .../files/konsole-21.08.0-fix-crash-w-blur.patch | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 kde-apps/konsole/files/konsole-21.08.0-fix-crash-w-blur.patch (limited to 'kde-apps/konsole/files/konsole-21.08.0-fix-crash-w-blur.patch') 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 +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 ++ + 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 + -- cgit v1.2.3