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

openSUSE Build Service is sponsored by