File 0001-Fix-KCompletionBox-on-wayland.patch of Package kcompletion
From fbb5609001abf6e04576b08cc8ceab82382be809 Mon Sep 17 00:00:00 2001
From: Aleix Pol <aleixpol@kde.org>
Date: Sun, 22 Apr 2018 16:19:02 +0200
Subject: [PATCH] Fix KCompletionBox on wayland
Summary: On wayland it would immediately disappear, now it doesn't anymore.
Test Plan: Tried kcompletionuitest on xcb and wayland
Reviewers: #frameworks, davidedmundson
Reviewed By: davidedmundson
Subscribers: anthonyfieroni
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D12448
---
src/kcompletionbox.cpp | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/kcompletionbox.cpp b/src/kcompletionbox.cpp
index 4c2c974..6e332cf 100644
--- a/src/kcompletionbox.cpp
+++ b/src/kcompletionbox.cpp
@@ -65,7 +65,13 @@ void KCompletionBoxPrivate::init()
//also, q->setAttribute(Qt::WA_X11NetWmWindowTypeCombo); is broken in Qt xcb
q->setProperty("_q_xcb_wm_window_type", 0x001000);
q->setAttribute(Qt::WA_ShowWithoutActivating);
- q->setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::BypassWindowManagerHint); // calls setVisible, so must be done after initializations
+
+ //on wayland, we need an xdg-popup but we don't want it to grab
+ // calls setVisible, so must be done after initializations
+ if (qGuiApp->platformName() == QLatin1String("wayland"))
+ q->setWindowFlags(Qt::ToolTip | Qt::FramelessWindowHint | Qt::BypassWindowManagerHint);
+ else
+ q->setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::BypassWindowManagerHint);
q->setUniformItemSizes(true);
q->setLineWidth(1);
--
2.16.2