aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Lübking <thomas.luebking@gmail.com>2013-01-07 18:50:47 (GMT)
committerThomas Lübking <thomas.luebking@gmail.com>2013-01-08 19:48:34 (GMT)
commit9b2f9cc354cbb1a4032b8238299b5f57f68cb10b (patch)
treeb20c97ad40288d0562f730b18272e397450054e2
parente7c775631eea5ab983688e08199cd4e0b9939fc5 (diff)
don't use input windows on Qt < 4.8.3
According to aacid, it's been broken in every Qt version before BUG: 312784 REVIEW: 108249
-rw-r--r--kwin/client.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/kwin/client.cpp b/kwin/client.cpp
index 43296b3..0e9c10d 100644
--- a/kwin/client.cpp
+++ b/kwin/client.cpp
@@ -353,8 +353,22 @@ void Client::destroyClient()
deleteClient(this, Allowed);
}
+// DnD handling for input shaping is broken in the clients for all Qt versions before 4.8.3
+// NOTICE do not query the Qt version macro, this is a runtime problem!
+// TODO KDE5 remove this
+static inline bool qtBefore483()
+{
+ QStringList l = QString(qVersion()).split(".");
+ // "4.x.y"
+ return l.at(1).toUInt() < 5 && l.at(1).toUInt() < 9 && l.at(2).toUInt() < 3;
+}
+
void Client::updateInputWindow()
{
+ static bool brokenQtInputHandling = qtBefore483();
+ if (brokenQtInputHandling)
+ return;
+
QRegion region;
if (!noBorder()) {