Sync with Fedora
Resolves: bz#1951152
This commit is contained in:
parent
32904734b9
commit
4146ab18f8
23
0001-Bump-version.patch
Normal file
23
0001-Bump-version.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
From 30cb2a87fcc6265232cb5a3ffce9836da6e531d6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jani Heikkinen <jani.heikkinen@qt.io>
|
||||||
|
Date: Tue, 27 Oct 2020 07:48:51 +0200
|
||||||
|
Subject: [PATCH 01/19] Bump version
|
||||||
|
|
||||||
|
Change-Id: I6b2c26a9fea447f1de1d768a72aba72055a13cb7
|
||||||
|
---
|
||||||
|
.qmake.conf | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/.qmake.conf b/.qmake.conf
|
||||||
|
index f63b6641..bb8d0645 100644
|
||||||
|
--- a/.qmake.conf
|
||||||
|
+++ b/.qmake.conf
|
||||||
|
@@ -4,4 +4,4 @@ DEFINES += QT_NO_FOREACH
|
||||||
|
DEFINES += QT_NO_JAVA_STYLE_ITERATORS
|
||||||
|
DEFINES += QT_NO_LINKED_LIST
|
||||||
|
|
||||||
|
-MODULE_VERSION = 5.15.2
|
||||||
|
+MODULE_VERSION = 5.15.3
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
972
0002-Replace-remaining-LGPLv3-headers-in-QtWaylandComposi.patch
Normal file
972
0002-Replace-remaining-LGPLv3-headers-in-QtWaylandComposi.patch
Normal file
@ -0,0 +1,972 @@
|
|||||||
|
From f9d5fc2e94c2116130456f4b4f8bd2f3a0c88d20 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kai Koehne <kai.koehne@qt.io>
|
||||||
|
Date: Tue, 27 Oct 2020 16:12:30 +0100
|
||||||
|
Subject: [PATCH 02/19] Replace remaining LGPLv3 headers in QtWaylandCompositor
|
||||||
|
with GPLv3
|
||||||
|
|
||||||
|
Use same header as for the rest of the module.
|
||||||
|
|
||||||
|
This was forgotten in commit bb1b46a4862e0a5
|
||||||
|
|
||||||
|
Change-Id: I7e61b43f0387a9affa9488566cb5aaca51b3bc0b
|
||||||
|
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
||||||
|
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
||||||
|
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
||||||
|
(cherry picked from commit 2bf41c736719654d0d6b15eec280a4667ebc28c5)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
.../extensions/qwaylandidleinhibitv1.cpp | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandidleinhibitv1.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandidleinhibitv1_p.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandquickxdgoutputv1.cpp | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandquickxdgoutputv1.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandviewporter.cpp | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandviewporter.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandviewporter_p.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgdecorationv1.cpp | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgdecorationv1.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgdecorationv1_p.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgoutputv1.cpp | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgoutputv1.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgoutputv1_p.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgshell.cpp | 27 +++++++------------
|
||||||
|
src/compositor/extensions/qwaylandxdgshell.h | 27 +++++++------------
|
||||||
|
.../extensions/qwaylandxdgshell_p.h | 27 +++++++------------
|
||||||
|
.../qwaylandxdgshellintegration.cpp | 27 +++++++------------
|
||||||
|
.../qwaylandxdgshellintegration_p.h | 27 +++++++------------
|
||||||
|
19 files changed, 190 insertions(+), 323 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandidleinhibitv1.cpp b/src/compositor/extensions/qwaylandidleinhibitv1.cpp
|
||||||
|
index d034c47f..3d7e4d13 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandidleinhibitv1.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandidleinhibitv1.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandidleinhibitv1.h b/src/compositor/extensions/qwaylandidleinhibitv1.h
|
||||||
|
index 53c09d08..390ef9df 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandidleinhibitv1.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandidleinhibitv1.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandidleinhibitv1_p.h b/src/compositor/extensions/qwaylandidleinhibitv1_p.h
|
||||||
|
index 38055180..a87fa871 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandidleinhibitv1_p.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandidleinhibitv1_p.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandquickxdgoutputv1.cpp b/src/compositor/extensions/qwaylandquickxdgoutputv1.cpp
|
||||||
|
index eb6717a7..b61cc490 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandquickxdgoutputv1.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandquickxdgoutputv1.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandquickxdgoutputv1.h b/src/compositor/extensions/qwaylandquickxdgoutputv1.h
|
||||||
|
index c8b16ab8..d6701cc8 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandquickxdgoutputv1.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandquickxdgoutputv1.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandviewporter.cpp b/src/compositor/extensions/qwaylandviewporter.cpp
|
||||||
|
index 3856c135..b98274b1 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandviewporter.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandviewporter.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandviewporter.h b/src/compositor/extensions/qwaylandviewporter.h
|
||||||
|
index 811c7414..fb640a49 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandviewporter.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandviewporter.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandviewporter_p.h b/src/compositor/extensions/qwaylandviewporter_p.h
|
||||||
|
index d22da699..bf9e197a 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandviewporter_p.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandviewporter_p.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgdecorationv1.cpp b/src/compositor/extensions/qwaylandxdgdecorationv1.cpp
|
||||||
|
index a58601cd..9fb2c955 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgdecorationv1.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgdecorationv1.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgdecorationv1.h b/src/compositor/extensions/qwaylandxdgdecorationv1.h
|
||||||
|
index 4390716e..7b39091f 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgdecorationv1.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgdecorationv1.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgdecorationv1_p.h b/src/compositor/extensions/qwaylandxdgdecorationv1_p.h
|
||||||
|
index fdd555ab..cd9c38c2 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgdecorationv1_p.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgdecorationv1_p.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgoutputv1.cpp b/src/compositor/extensions/qwaylandxdgoutputv1.cpp
|
||||||
|
index 817cb2e4..a78a9f62 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgoutputv1.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgoutputv1.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgoutputv1.h b/src/compositor/extensions/qwaylandxdgoutputv1.h
|
||||||
|
index 957ac3be..e86fb405 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgoutputv1.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgoutputv1.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgoutputv1_p.h b/src/compositor/extensions/qwaylandxdgoutputv1_p.h
|
||||||
|
index 2e8a6fff..ab08f5d4 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgoutputv1_p.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgoutputv1_p.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2019 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgshell.cpp b/src/compositor/extensions/qwaylandxdgshell.cpp
|
||||||
|
index 6b7e8600..e1888529 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgshell.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgshell.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgshell.h b/src/compositor/extensions/qwaylandxdgshell.h
|
||||||
|
index 0535f8e4..ae3be8d0 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgshell.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgshell.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgshell_p.h b/src/compositor/extensions/qwaylandxdgshell_p.h
|
||||||
|
index de48f481..0a0972ac 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgshell_p.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgshell_p.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgshellintegration.cpp b/src/compositor/extensions/qwaylandxdgshellintegration.cpp
|
||||||
|
index 0aa16054..a30eb228 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgshellintegration.cpp
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgshellintegration.cpp
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
diff --git a/src/compositor/extensions/qwaylandxdgshellintegration_p.h b/src/compositor/extensions/qwaylandxdgshellintegration_p.h
|
||||||
|
index cd6bad57..16bb3354 100644
|
||||||
|
--- a/src/compositor/extensions/qwaylandxdgshellintegration_p.h
|
||||||
|
+++ b/src/compositor/extensions/qwaylandxdgshellintegration_p.h
|
||||||
|
@@ -1,34 +1,27 @@
|
||||||
|
/****************************************************************************
|
||||||
|
**
|
||||||
|
** Copyright (C) 2018 The Qt Company Ltd.
|
||||||
|
-** Contact: http://www.qt.io/licensing/
|
||||||
|
+** Contact: https://www.qt.io/licensing/
|
||||||
|
**
|
||||||
|
** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
|
||||||
|
**
|
||||||
|
-** $QT_BEGIN_LICENSE:LGPL3$
|
||||||
|
+** $QT_BEGIN_LICENSE:GPL$
|
||||||
|
** Commercial License Usage
|
||||||
|
** Licensees holding valid commercial Qt licenses may use this file in
|
||||||
|
** accordance with the commercial license agreement provided with the
|
||||||
|
** Software or, alternatively, in accordance with the terms contained in
|
||||||
|
** a written agreement between you and The Qt Company. For licensing terms
|
||||||
|
-** and conditions see http://www.qt.io/terms-conditions. For further
|
||||||
|
-** information use the contact form at http://www.qt.io/contact-us.
|
||||||
|
-**
|
||||||
|
-** GNU Lesser General Public License Usage
|
||||||
|
-** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||||
|
-** General Public License version 3 as published by the Free Software
|
||||||
|
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||||
|
-** packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU Lesser General Public License version 3 requirements
|
||||||
|
-** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||||
|
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||||
|
+** information use the contact form at https://www.qt.io/contact-us.
|
||||||
|
**
|
||||||
|
** GNU General Public License Usage
|
||||||
|
** Alternatively, this file may be used under the terms of the GNU
|
||||||
|
-** General Public License version 2.0 or later as published by the Free
|
||||||
|
-** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||||
|
-** the packaging of this file. Please review the following information to
|
||||||
|
-** ensure the GNU General Public License version 2.0 requirements will be
|
||||||
|
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||||
|
+** General Public License version 3 or (at your option) any later version
|
||||||
|
+** approved by the KDE Free Qt Foundation. The licenses are as published by
|
||||||
|
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
|
||||||
|
+** included in the packaging of this file. Please review the following
|
||||||
|
+** information to ensure the GNU General Public License requirements will
|
||||||
|
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||||
|
**
|
||||||
|
** $QT_END_LICENSE$
|
||||||
|
**
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,39 @@
|
|||||||
|
From cc652bdd4ec7692a68db8afef2a709b74581c2cd Mon Sep 17 00:00:00 2001
|
||||||
|
From: Paul Wicking <paul.wicking@qt.io>
|
||||||
|
Date: Tue, 27 Oct 2020 14:56:32 +0100
|
||||||
|
Subject: [PATCH 03/19] Doc: List correct license information for the module
|
||||||
|
|
||||||
|
Fixes: QTBUG-87959
|
||||||
|
Change-Id: I1c5cd15e0dd6f81e87690e54cd4e526ce668a8aa
|
||||||
|
Reviewed-by: Tino Pyssysalo <tino.pyssysalo@qt.io>
|
||||||
|
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
||||||
|
(cherry picked from commit 7cadb86e5b151459bd06f46a90f28bd157078df7)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
.../doc/src/qtwaylandcompositor-overview.qdoc | 10 +++++++---
|
||||||
|
1 file changed, 7 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/compositor/doc/src/qtwaylandcompositor-overview.qdoc b/src/compositor/doc/src/qtwaylandcompositor-overview.qdoc
|
||||||
|
index dc95dc5b..fcdd13f7 100644
|
||||||
|
--- a/src/compositor/doc/src/qtwaylandcompositor-overview.qdoc
|
||||||
|
+++ b/src/compositor/doc/src/qtwaylandcompositor-overview.qdoc
|
||||||
|
@@ -111,9 +111,13 @@
|
||||||
|
|
||||||
|
Qt Wayland Compositor and the Qt Wayland integration plugin
|
||||||
|
are available under commercial licenses from \l{The Qt Company}.
|
||||||
|
- In addition, they are available under the
|
||||||
|
- \l{GNU Lesser General Public License, version 3}, or
|
||||||
|
- the \l{GNU General Public License, version 2}.
|
||||||
|
+
|
||||||
|
+ In addition, Qt Wayland Compositor is available under the
|
||||||
|
+ \l{GNU General Public License, version 3}, while
|
||||||
|
+ the Qt Wayland integration plugin is available under the
|
||||||
|
+ \l{GNU General Public License, version 3} or the
|
||||||
|
+ \l{GNU General Public License, version 2}.
|
||||||
|
+
|
||||||
|
See \l{Qt Licensing} for further details.
|
||||||
|
|
||||||
|
Qt Wayland Compositor and the Qt Wayland integration plugin
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
77
0004-Add-changes-file-for-Qt-5.15.2.patch
Normal file
77
0004-Add-changes-file-for-Qt-5.15.2.patch
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
From 88c8df4eab81316bc055c8be82b0febc70330dbe Mon Sep 17 00:00:00 2001
|
||||||
|
From: Antti Kokko <antti.kokko@qt.io>
|
||||||
|
Date: Tue, 27 Oct 2020 10:02:11 +0200
|
||||||
|
Subject: [PATCH 04/19] Add changes file for Qt 5.15.2
|
||||||
|
|
||||||
|
+ 7d7ac7f0a4bd6a7956448ddb0ba44c12755dca2e Client: Send subsurface expose event when toplevel is configured
|
||||||
|
+ 18ab3edaf2a4cdd1e9df6e166cf51a69a9785ecd Client: Initialize mScale on creation instead of on show
|
||||||
|
+ b1564c87e3fd1271575122c6b932c5e9324f07a7 Client: Fix scroll direction with touchpads
|
||||||
|
- bd48b6b341482720652dd02866690f937e25619d Add changes file for Qt 5.15.1
|
||||||
|
+ 96cfbda63a249385eef02e7996098079569a13b8 Fix brcm-egl wayland integration
|
||||||
|
+ 6a7c6eedbaf00b1f2102247810987b6d9246f34e Bump version
|
||||||
|
+ 9c8e59a7a6b0cfaa7caf899bdb577270c83b9a12 Build with -no-opengl
|
||||||
|
+ 1344ca6b5a8fbc1b28727feea6d856af8bf3bc93 fix libdrm related configure test failure
|
||||||
|
+ 65922085c3ba302b9049e62c1e132236b726adf9 Implement MockRegion
|
||||||
|
+ 407c240bf52f0c5d23cd87be48ced51a58562f19 Scanner: Generate code that cleans up m_resource
|
||||||
|
+ 45a3a3208a4243d9b0a6500e3dcd0fcfed2dfcea Scanner: Generate code that destroys inert resources
|
||||||
|
+ 707b23cf11586304912b3ea87099cf46a0aac912 Implement CoreProtocol::compositor_create_region
|
||||||
|
+ 2a77384a4f2485364cefeb825eea63daf13dd3b1 Fix race condition on frame callback
|
||||||
|
+ 51f0466e01df52eb07e589006744f405dfd40bdd Client: Advertise all supported mime types
|
||||||
|
+ f637fcdbbabeb060cdd223d8bc6662d5cace6b90 Address WlCompositor::compositor_create_region in tests
|
||||||
|
+ cc779e0ed47ec4759dc3c23953dd02cfacc6885c Issue set_opaque_region on opaque surfaces
|
||||||
|
+ 8824452f5b259ab1f295f1237789b2693ae8f232 Add changes file for Qt 5.12.10
|
||||||
|
|
||||||
|
Change-Id: I9158c0bb827a54421b205abc6c637e6cdfc5cebd
|
||||||
|
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
(cherry picked from commit 3cc17177b1b03053276eb6236fda137c588261a7)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
dist/changes-5.15.2 | 35 +++++++++++++++++++++++++++++++++++
|
||||||
|
1 file changed, 35 insertions(+)
|
||||||
|
create mode 100644 dist/changes-5.15.2
|
||||||
|
|
||||||
|
diff --git a/dist/changes-5.15.2 b/dist/changes-5.15.2
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..e12ac096
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/dist/changes-5.15.2
|
||||||
|
@@ -0,0 +1,35 @@
|
||||||
|
+Qt 5.15.2 is a bug-fix release. It maintains both forward and backward
|
||||||
|
+compatibility (source and binary) with Qt 5.15.1.
|
||||||
|
+
|
||||||
|
+For more details, refer to the online documentation included in this
|
||||||
|
+distribution. The documentation is also available online:
|
||||||
|
+
|
||||||
|
+ https://doc.qt.io/qt-5.15/index.html
|
||||||
|
+
|
||||||
|
+The Qt version 5.15 series is binary compatible with the 5.14.x series.
|
||||||
|
+Applications compiled for 5.14 will continue to run with 5.15.
|
||||||
|
+
|
||||||
|
+Some of the changes listed in this file include issue tracking numbers
|
||||||
|
+corresponding to tasks in the Qt Bug Tracker:
|
||||||
|
+
|
||||||
|
+ https://bugreports.qt.io/
|
||||||
|
+
|
||||||
|
+Each of these identifiers can be entered in the bug tracker to obtain more
|
||||||
|
+information about a particular change.
|
||||||
|
+
|
||||||
|
+****************************************************************************
|
||||||
|
+* Compositor *
|
||||||
|
+****************************************************************************
|
||||||
|
+
|
||||||
|
+ - [QTBUG-83263] Fixed a race condition on frame callback.
|
||||||
|
+ - [QTBUG-86109] Fix brcm-egl wayland integration.
|
||||||
|
+
|
||||||
|
+****************************************************************************
|
||||||
|
+* QPA plugin *
|
||||||
|
+****************************************************************************
|
||||||
|
+
|
||||||
|
+ - [QTBUG-87657] Clipboard selection now advertises all supported mime types.
|
||||||
|
+ - [QTBUG-86291] Fixed the build with -no-opengl.
|
||||||
|
+ - [QTBUG-85767] Touchpad scrolling is no longer inverted.
|
||||||
|
+ - [QTBUG-86176] We now send subsurface expose events when a different
|
||||||
|
+ toplevel (such as a dialog) is configured.
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -1,7 +1,8 @@
|
|||||||
From e5c272423d1bba2825086b82fd97499237a6fa4b Mon Sep 17 00:00:00 2001
|
From e5c272423d1bba2825086b82fd97499237a6fa4b Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Fri, 30 Oct 2020 16:55:30 +0200
|
Date: Fri, 30 Oct 2020 16:55:30 +0200
|
||||||
Subject: [PATCH] Scanner: Avoid accessing dangling pointers in destroy_func()
|
Subject: [PATCH 05/19] Scanner: Avoid accessing dangling pointers in
|
||||||
|
destroy_func()
|
||||||
|
|
||||||
Usually, the object associated with the resource gets destroyed in the
|
Usually, the object associated with the resource gets destroyed in the
|
||||||
destroy_resource() function.
|
destroy_resource() function.
|
||||||
@ -14,12 +15,14 @@ Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|||||||
(cherry picked from commit 735164b5c2a2637a8d53a8803a2401e4ef477ff0)
|
(cherry picked from commit 735164b5c2a2637a8d53a8803a2401e4ef477ff0)
|
||||||
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
---
|
---
|
||||||
|
src/qtwaylandscanner/qtwaylandscanner.cpp | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/src/qtwaylandscanner/qtwaylandscanner.cpp b/src/qtwaylandscanner/qtwaylandscanner.cpp
|
diff --git a/src/qtwaylandscanner/qtwaylandscanner.cpp b/src/qtwaylandscanner/qtwaylandscanner.cpp
|
||||||
index 1d635f0..e2f87bb 100644
|
index 1d635f06..e2f87bbd 100644
|
||||||
--- a/src/qtwaylandscanner/qtwaylandscanner.cpp
|
--- a/src/qtwaylandscanner/qtwaylandscanner.cpp
|
||||||
+++ b/src/qtwaylandscanner/qtwaylandscanner.cpp
|
+++ b/src/qtwaylandscanner/qtwaylandscanner.cpp
|
||||||
@@ -814,7 +814,9 @@
|
@@ -814,7 +814,9 @@ bool Scanner::process()
|
||||||
printf(" if (Q_LIKELY(that)) {\n");
|
printf(" if (Q_LIKELY(that)) {\n");
|
||||||
printf(" that->m_resource_map.remove(resource->client(), resource);\n");
|
printf(" that->m_resource_map.remove(resource->client(), resource);\n");
|
||||||
printf(" that->%s_destroy_resource(resource);\n", interfaceNameStripped);
|
printf(" that->%s_destroy_resource(resource);\n", interfaceNameStripped);
|
||||||
@ -30,3 +33,6 @@ index 1d635f0..e2f87bb 100644
|
|||||||
printf(" that->m_resource = nullptr;\n");
|
printf(" that->m_resource = nullptr;\n");
|
||||||
printf(" }\n");
|
printf(" }\n");
|
||||||
printf(" delete resource;\n");
|
printf(" delete resource;\n");
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
38
0006-Make-setting-QT_SCALE_FACTOR-work-on-Wayland.patch
Normal file
38
0006-Make-setting-QT_SCALE_FACTOR-work-on-Wayland.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From a825fb5f714fd79d16cc3ebbdd327e7961b07d0a Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= <morten.sorvig@qt.io>
|
||||||
|
Date: Mon, 16 Nov 2020 19:37:33 +0100
|
||||||
|
Subject: [PATCH 06/19] Make setting QT_SCALE_FACTOR work on Wayland
|
||||||
|
|
||||||
|
Follow-up to 8cb1b07aea12d50b4fecc45c903705dfd368022a,
|
||||||
|
fixes one additional case (Use of minimum/maximum size).
|
||||||
|
|
||||||
|
Fixes: QTBUG-87762
|
||||||
|
Change-Id: I73e0df2529b0cadf25ad50ea7459cdbb92caf424
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
(cherry picked from commit 6ed363e3665f17d935f8636d9c958154c898f5c5)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
src/client/qwaylandwindow.cpp | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||||
|
index bc031ed5..eb053406 100644
|
||||||
|
--- a/src/client/qwaylandwindow.cpp
|
||||||
|
+++ b/src/client/qwaylandwindow.cpp
|
||||||
|
@@ -332,9 +332,11 @@ void QWaylandWindow::setWindowIcon(const QIcon &icon)
|
||||||
|
|
||||||
|
void QWaylandWindow::setGeometry_helper(const QRect &rect)
|
||||||
|
{
|
||||||
|
+ QSize minimum = windowMinimumSize();
|
||||||
|
+ QSize maximum = windowMaximumSize();
|
||||||
|
QPlatformWindow::setGeometry(QRect(rect.x(), rect.y(),
|
||||||
|
- qBound(window()->minimumWidth(), rect.width(), window()->maximumWidth()),
|
||||||
|
- qBound(window()->minimumHeight(), rect.height(), window()->maximumHeight())));
|
||||||
|
+ qBound(minimum.width(), rect.width(), maximum.width()),
|
||||||
|
+ qBound(minimum.height(), rect.height(), maximum.height())));
|
||||||
|
|
||||||
|
if (mSubSurfaceWindow) {
|
||||||
|
QMargins m = QPlatformWindow::parent()->frameMargins();
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
62
0007-Do-not-try-to-eglMakeCurrent-for-unintended-case.patch
Normal file
62
0007-Do-not-try-to-eglMakeCurrent-for-unintended-case.patch
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
From 2c0a03e9aea13831d05ac03996949f888afd5085 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jaehak Lee <jaehak.lee@mobis.co.kr>
|
||||||
|
Date: Sun, 8 Nov 2020 11:40:06 +0900
|
||||||
|
Subject: [PATCH 07/19] Do not try to eglMakeCurrent for unintended case
|
||||||
|
|
||||||
|
The QSGThreadedRenderLoop::hide can be called at twice,
|
||||||
|
when the QWindowPrivate::setVisible(false) is called.
|
||||||
|
|
||||||
|
The eglSurface is EGL_NO_SURFACE when the second QSGThreadedRenderLoop::hide is
|
||||||
|
called. And if EGL_KHR_surfaceless_context is supported, the eglMakeCurrent
|
||||||
|
don't return the false.
|
||||||
|
|
||||||
|
But this case is not intended. So, add the defence code for above case.
|
||||||
|
|
||||||
|
Fixes: QTBUG-88277
|
||||||
|
Change-Id: Ia9e5990303e98f0eedc48531e5af62ff9961f419
|
||||||
|
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
---
|
||||||
|
.../client/wayland-egl/qwaylandglcontext.cpp | 6 ++++++
|
||||||
|
.../client/wayland-egl/qwaylandglcontext.h | 1 +
|
||||||
|
2 files changed, 7 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
index ccebf43d..681f82f4 100644
|
||||||
|
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
@@ -336,6 +336,8 @@ QWaylandGLContext::QWaylandGLContext(EGLDisplay eglDisplay, QWaylandDisplay *dis
|
||||||
|
<< "It may also cause the event loop to freeze in some situations";
|
||||||
|
}
|
||||||
|
|
||||||
|
+ m_supportSurfaceLessContext = q_hasEglExtension(m_eglDisplay, "EGL_KHR_surfaceless_context");
|
||||||
|
+
|
||||||
|
updateGLFormat();
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -439,6 +441,10 @@ bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
||||||
|
eglSurface = window->eglSurface();
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (eglSurface == EGL_NO_SURFACE && m_supportSurfaceLessContext) {
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
if (!eglMakeCurrent(m_eglDisplay, eglSurface, eglSurface, m_context)) {
|
||||||
|
qWarning("QWaylandGLContext::makeCurrent: eglError: %x, this: %p \n", eglGetError(), this);
|
||||||
|
window->setCanResize(true);
|
||||||
|
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
|
||||||
|
index 46c7bb76..93edaec0 100644
|
||||||
|
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
|
||||||
|
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
|
||||||
|
@@ -93,6 +93,7 @@ private:
|
||||||
|
DecorationsBlitter *m_blitter = nullptr;
|
||||||
|
uint m_api;
|
||||||
|
bool m_supportNonBlockingSwap = true;
|
||||||
|
+ bool m_supportSurfaceLessContext = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
112
0008-Make-setting-QT_SCALE_FACTOR-work-on-Wayland.patch
Normal file
112
0008-Make-setting-QT_SCALE_FACTOR-work-on-Wayland.patch
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
From 10005185e06857ce119c50fe710f9eedde06ec5e Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= <morten.sorvig@qt.io>
|
||||||
|
Date: Fri, 13 Nov 2020 11:21:50 +0100
|
||||||
|
Subject: [PATCH 08/19] Make setting QT_SCALE_FACTOR work on Wayland
|
||||||
|
|
||||||
|
QWindow geometry accessors return geometry in device
|
||||||
|
independent pixels. Normally this coordinate system
|
||||||
|
is equivalent to the Wayland native coordinate system,
|
||||||
|
but this is not the case when QT_SCALE_FACTOR is set.
|
||||||
|
|
||||||
|
Replace QWindow geometry calls with the helpers from
|
||||||
|
QPlatformWindow which return geometry in the native
|
||||||
|
coordinate system:
|
||||||
|
|
||||||
|
QWindow::geometry() -> QPlatformWindow::windowGeometry()
|
||||||
|
QWindow::frameGeometry() -> QPlatformWindow::windowFrameGeometry()
|
||||||
|
|
||||||
|
Task-number: QTBUG-87762
|
||||||
|
Fixes: QTBUG-88064
|
||||||
|
(cherry-picked from commit 8cb1b07aea12d50b4fecc45c903705dfd368022a)
|
||||||
|
Change-Id: I6e2029bc6210f12441ae7c9d8b678271e9922dde
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
---
|
||||||
|
src/client/qwaylandwindow.cpp | 7 ++++---
|
||||||
|
.../shellintegration/wl-shell/qwaylandwlshellsurface.cpp | 2 +-
|
||||||
|
.../shellintegration/xdg-shell-v5/qwaylandxdgsurfacev5.cpp | 2 +-
|
||||||
|
.../shellintegration/xdg-shell-v6/qwaylandxdgshellv6.cpp | 2 +-
|
||||||
|
.../shellintegration/xdg-shell/qwaylandxdgshell.cpp | 2 +-
|
||||||
|
5 files changed, 8 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||||
|
index eb053406..9b343702 100644
|
||||||
|
--- a/src/client/qwaylandwindow.cpp
|
||||||
|
+++ b/src/client/qwaylandwindow.cpp
|
||||||
|
@@ -194,10 +194,11 @@ void QWaylandWindow::initWindow()
|
||||||
|
if (QScreen *s = window()->screen())
|
||||||
|
setOrientationMask(s->orientationUpdateMask());
|
||||||
|
setWindowFlags(window()->flags());
|
||||||
|
- if (window()->geometry().isEmpty())
|
||||||
|
+ QRect geometry = windowGeometry();
|
||||||
|
+ if (geometry.isEmpty())
|
||||||
|
setGeometry_helper(QRect(QPoint(), QSize(500,500)));
|
||||||
|
else
|
||||||
|
- setGeometry_helper(window()->geometry());
|
||||||
|
+ setGeometry_helper(geometry);
|
||||||
|
setMask(window()->mask());
|
||||||
|
if (mShellSurface)
|
||||||
|
mShellSurface->requestWindowStates(window()->windowStates());
|
||||||
|
@@ -431,7 +432,7 @@ void QWaylandWindow::setVisible(bool visible)
|
||||||
|
initWindow();
|
||||||
|
mDisplay->flushRequests();
|
||||||
|
|
||||||
|
- setGeometry(window()->geometry());
|
||||||
|
+ setGeometry(windowGeometry());
|
||||||
|
// Don't flush the events here, or else the newly visible window may start drawing, but since
|
||||||
|
// there was no frame before it will be stuck at the waitForFrameSync() in
|
||||||
|
// QWaylandShmBackingStore::beginPaint().
|
||||||
|
diff --git a/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp b/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp
|
||||||
|
index 245fec19..8f41118d 100644
|
||||||
|
--- a/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp
|
||||||
|
+++ b/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp
|
||||||
|
@@ -134,7 +134,7 @@ void QWaylandWlShellSurface::applyConfigure()
|
||||||
|
{
|
||||||
|
if ((m_pending.states & (Qt::WindowMaximized|Qt::WindowFullScreen))
|
||||||
|
&& !(m_applied.states & (Qt::WindowMaximized|Qt::WindowFullScreen))) {
|
||||||
|
- m_normalSize = m_window->window()->frameGeometry().size();
|
||||||
|
+ m_normalSize = m_window->windowFrameGeometry().size();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (m_pending.states != m_applied.states)
|
||||||
|
diff --git a/src/plugins/shellintegration/xdg-shell-v5/qwaylandxdgsurfacev5.cpp b/src/plugins/shellintegration/xdg-shell-v5/qwaylandxdgsurfacev5.cpp
|
||||||
|
index 770fad7e..73aba1ee 100644
|
||||||
|
--- a/src/plugins/shellintegration/xdg-shell-v5/qwaylandxdgsurfacev5.cpp
|
||||||
|
+++ b/src/plugins/shellintegration/xdg-shell-v5/qwaylandxdgsurfacev5.cpp
|
||||||
|
@@ -157,7 +157,7 @@ void QWaylandXdgSurfaceV5::applyConfigure()
|
||||||
|
if (m_pending.isResizing)
|
||||||
|
m_normalSize = m_pending.size;
|
||||||
|
else if (!(m_acked.states & (Qt::WindowMaximized|Qt::WindowFullScreen)))
|
||||||
|
- m_normalSize = m_window->window()->frameGeometry().size();
|
||||||
|
+ m_normalSize = m_window->windowFrameGeometry().size();
|
||||||
|
|
||||||
|
if ((m_pending.states & Qt::WindowActive) && !(m_acked.states & Qt::WindowActive))
|
||||||
|
m_window->display()->handleWindowActivated(m_window);
|
||||||
|
diff --git a/src/plugins/shellintegration/xdg-shell-v6/qwaylandxdgshellv6.cpp b/src/plugins/shellintegration/xdg-shell-v6/qwaylandxdgshellv6.cpp
|
||||||
|
index c137b308..8c371661 100644
|
||||||
|
--- a/src/plugins/shellintegration/xdg-shell-v6/qwaylandxdgshellv6.cpp
|
||||||
|
+++ b/src/plugins/shellintegration/xdg-shell-v6/qwaylandxdgshellv6.cpp
|
||||||
|
@@ -72,7 +72,7 @@ QWaylandXdgSurfaceV6::Toplevel::~Toplevel()
|
||||||
|
void QWaylandXdgSurfaceV6::Toplevel::applyConfigure()
|
||||||
|
{
|
||||||
|
if (!(m_applied.states & (Qt::WindowMaximized|Qt::WindowFullScreen)))
|
||||||
|
- m_normalSize = m_xdgSurface->m_window->window()->frameGeometry().size();
|
||||||
|
+ m_normalSize = m_xdgSurface->m_window->windowFrameGeometry().size();
|
||||||
|
|
||||||
|
if ((m_pending.states & Qt::WindowActive) && !(m_applied.states & Qt::WindowActive))
|
||||||
|
m_xdgSurface->m_window->display()->handleWindowActivated(m_xdgSurface->m_window);
|
||||||
|
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
|
index b6d23ac1..1c762944 100644
|
||||||
|
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
|
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
|
@@ -83,7 +83,7 @@ QWaylandXdgSurface::Toplevel::~Toplevel()
|
||||||
|
void QWaylandXdgSurface::Toplevel::applyConfigure()
|
||||||
|
{
|
||||||
|
if (!(m_applied.states & (Qt::WindowMaximized|Qt::WindowFullScreen)))
|
||||||
|
- m_normalSize = m_xdgSurface->m_window->window()->frameGeometry().size();
|
||||||
|
+ m_normalSize = m_xdgSurface->m_window->windowFrameGeometry().size();
|
||||||
|
|
||||||
|
if ((m_pending.states & Qt::WindowActive) && !(m_applied.states & Qt::WindowActive))
|
||||||
|
m_xdgSurface->m_window->display()->handleWindowActivated(m_xdgSurface->m_window);
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,35 @@
|
|||||||
|
From dba4bc4f1d6dfee9fe9433c55b15653d703bed4f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andreas Cord-Landwehr <cordlandwehr@kde.org>
|
||||||
|
Date: Wed, 2 Dec 2020 20:55:52 +0100
|
||||||
|
Subject: [PATCH 09/19] Ensure that grabbing is performed in correct context
|
||||||
|
|
||||||
|
For multi-display rendering on EGL, it is mandatory that the grabbing of
|
||||||
|
the surface happens in the same EGL context as the surface belongs to.
|
||||||
|
By adding the grabbing to the rendering stage of the image, this
|
||||||
|
relation is forced.
|
||||||
|
|
||||||
|
Task-number: QTBUG-87597
|
||||||
|
Change-Id: I50f40df1215aa771d714065e942c5a738ba6269f
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
(cherry picked from commit ab3a1a07f3d1e0d5a9e9d97b6b3b587180e2f4c8)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
src/compositor/compositor_api/qwaylandquickcompositor.cpp | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/compositor/compositor_api/qwaylandquickcompositor.cpp b/src/compositor/compositor_api/qwaylandquickcompositor.cpp
|
||||||
|
index 49f0860e..db1cf00f 100644
|
||||||
|
--- a/src/compositor/compositor_api/qwaylandquickcompositor.cpp
|
||||||
|
+++ b/src/compositor/compositor_api/qwaylandquickcompositor.cpp
|
||||||
|
@@ -161,7 +161,7 @@ void QWaylandQuickCompositor::grabSurface(QWaylandSurfaceGrabber *grabber, const
|
||||||
|
GrabState *state = new GrabState;
|
||||||
|
state->grabber = grabber;
|
||||||
|
state->buffer = buffer;
|
||||||
|
- static_cast<QQuickWindow *>(output->window())->scheduleRenderJob(state, QQuickWindow::NoStage);
|
||||||
|
+ static_cast<QQuickWindow *>(output->window())->scheduleRenderJob(state, QQuickWindow::AfterRenderingStage);
|
||||||
|
#else
|
||||||
|
emit grabber->failed(QWaylandSurfaceGrabber::UnknownBufferType);
|
||||||
|
#endif
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
36
0010-Fix-leaked-subsurface-wayland-items.patch
Normal file
36
0010-Fix-leaked-subsurface-wayland-items.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
From a8d35b3c18bdb05a0da3ed50a554a7b7bd4ebed3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
Date: Mon, 30 Nov 2020 13:13:18 +0100
|
||||||
|
Subject: [PATCH 10/19] Fix leaked subsurface wayland items
|
||||||
|
|
||||||
|
Whenever a subsurface was added we would create a QWaylandQuickItem,
|
||||||
|
but this was never deleted. It is one-to-one with the surface, so it
|
||||||
|
should be deleted at the same time.
|
||||||
|
|
||||||
|
[ChangeLog][QtWaylandCompositor] Fixed a memory leak when creating
|
||||||
|
subsurfaces.
|
||||||
|
|
||||||
|
Task-number: QTBUG-88782
|
||||||
|
Change-Id: If4b3f15200ce3bd123ff73847d3593d174a39229
|
||||||
|
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
||||||
|
(cherry picked from commit 38fc568b30bf916165324c2cd2db127d2a9aa68c)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
src/compositor/compositor_api/qwaylandquickitem.cpp | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/src/compositor/compositor_api/qwaylandquickitem.cpp b/src/compositor/compositor_api/qwaylandquickitem.cpp
|
||||||
|
index 15f0195c..2218f43a 100644
|
||||||
|
--- a/src/compositor/compositor_api/qwaylandquickitem.cpp
|
||||||
|
+++ b/src/compositor/compositor_api/qwaylandquickitem.cpp
|
||||||
|
@@ -737,6 +737,7 @@ void QWaylandQuickItem::handleSubsurfaceAdded(QWaylandSurface *childSurface)
|
||||||
|
childItem->setVisible(true);
|
||||||
|
childItem->setParentItem(this);
|
||||||
|
connect(childSurface, &QWaylandSurface::subsurfacePositionChanged, childItem, &QWaylandQuickItem::handleSubsurfacePosition);
|
||||||
|
+ connect(childSurface, &QWaylandSurface::destroyed, childItem, &QObject::deleteLater);
|
||||||
|
} else {
|
||||||
|
bool success = QMetaObject::invokeMethod(d->subsurfaceHandler, "handleSubsurfaceAdded", Q_ARG(QWaylandSurface *, childSurface));
|
||||||
|
if (!success)
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,38 @@
|
|||||||
|
From 9ee2ea141adc7765f6c212e63839ef23a4494b30 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Weng Xuetian <wengxt@gmail.com>
|
||||||
|
Date: Tue, 9 Mar 2021 10:43:59 -0800
|
||||||
|
Subject: [PATCH 11/19] Use qWarning and _exit() instead of qFatal for wayland
|
||||||
|
error
|
||||||
|
|
||||||
|
This type of error is likely to happen upon system logout. qFatal would
|
||||||
|
trigger sigabrt and leave unnecessary coredump on the system. Using
|
||||||
|
qWarning here would make it consistent with xcb's io error.
|
||||||
|
|
||||||
|
Pick-to: 5.15 6.0 6.1
|
||||||
|
Change-Id: I571ba007bf2453486b81837cccdbefa5f181b63d
|
||||||
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
|
---
|
||||||
|
src/client/qwaylanddisplay.cpp | 5 +++--
|
||||||
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylanddisplay.cpp b/src/client/qwaylanddisplay.cpp
|
||||||
|
index fe094f6f..f10c1f79 100644
|
||||||
|
--- a/src/client/qwaylanddisplay.cpp
|
||||||
|
+++ b/src/client/qwaylanddisplay.cpp
|
||||||
|
@@ -206,10 +206,11 @@ void QWaylandDisplay::checkError() const
|
||||||
|
int ecode = wl_display_get_error(mDisplay);
|
||||||
|
if ((ecode == EPIPE || ecode == ECONNRESET)) {
|
||||||
|
// special case this to provide a nicer error
|
||||||
|
- qFatal("The Wayland connection broke. Did the Wayland compositor die?");
|
||||||
|
+ qWarning("The Wayland connection broke. Did the Wayland compositor die?");
|
||||||
|
} else {
|
||||||
|
- qFatal("The Wayland connection experienced a fatal error: %s", strerror(ecode));
|
||||||
|
+ qWarning("The Wayland connection experienced a fatal error: %s", strerror(ecode));
|
||||||
|
}
|
||||||
|
+ _exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
void QWaylandDisplay::flushRequests()
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
38
0012-Fix-memory-leak-in-QWaylandGLContext.patch
Normal file
38
0012-Fix-memory-leak-in-QWaylandGLContext.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From 9df11e79b46c77d8c83f765b2a8e85b639fd55a2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
Date: Tue, 5 Jan 2021 09:08:50 +0100
|
||||||
|
Subject: [PATCH 12/19] Fix memory leak in QWaylandGLContext
|
||||||
|
|
||||||
|
We were leaking an EGL context with every GL context created,
|
||||||
|
which lead to rapid OOM errors in stress tests.
|
||||||
|
|
||||||
|
[ChangeLog][Qt Wayland Client] Fixed a memory leak when creating
|
||||||
|
QOpenGLContexts on Wayland and using the wayland-egl backend.
|
||||||
|
|
||||||
|
Fixes: QTBUG-85608
|
||||||
|
Pick-to: 5.15
|
||||||
|
Pick-to: 6.0
|
||||||
|
Change-Id: I8426b5df36ec7ab9e66ce15f9e02edad3aca60b9
|
||||||
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
|
---
|
||||||
|
.../client/wayland-egl/qwaylandglcontext.cpp | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
index 681f82f4..befadedc 100644
|
||||||
|
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
@@ -406,7 +406,9 @@ void QWaylandGLContext::updateGLFormat()
|
||||||
|
QWaylandGLContext::~QWaylandGLContext()
|
||||||
|
{
|
||||||
|
delete m_blitter;
|
||||||
|
- eglDestroyContext(m_eglDisplay, m_context);
|
||||||
|
+ m_blitter = nullptr;
|
||||||
|
+ if (m_decorationsContext != EGL_NO_CONTEXT)
|
||||||
|
+ eglDestroyContext(eglDisplay(), m_decorationsContext);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,41 @@
|
|||||||
|
From 7db4f83c39d2a0c709bc0b9c0de3946d3b4ebfd5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
|
Date: Mon, 16 Nov 2020 14:57:36 +0000
|
||||||
|
Subject: [PATCH 13/19] Client: Send set_window_geometry only once configured
|
||||||
|
|
||||||
|
The geometry only makes sense when a buffer exists, our currently send
|
||||||
|
value is somewhat meaningless, but till now harmless.
|
||||||
|
|
||||||
|
A specification clarification implies that it is an error if the
|
||||||
|
calculated effective window geometry is null, rather than just checking
|
||||||
|
the sent value. This is the case if set_window_geometry is sent before a
|
||||||
|
buffer is attached.
|
||||||
|
|
||||||
|
On our first configure call we enter resizeFromApplyConfigure which will
|
||||||
|
hit this path and send the initial state.
|
||||||
|
|
||||||
|
Pick-to: 5.15
|
||||||
|
Pick-to: 6.1
|
||||||
|
Pick-to: 6.0
|
||||||
|
Change-Id: Ib57ebe8b64210eae86e79dfdd6b5cb8a986b020b
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
---
|
||||||
|
src/client/qwaylandwindow.cpp | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||||
|
index 9b343702..e875af3a 100644
|
||||||
|
--- a/src/client/qwaylandwindow.cpp
|
||||||
|
+++ b/src/client/qwaylandwindow.cpp
|
||||||
|
@@ -365,7 +365,7 @@ void QWaylandWindow::setGeometry(const QRect &rect)
|
||||||
|
if (isExposed() && !mInResizeFromApplyConfigure && exposeGeometry != mLastExposeGeometry)
|
||||||
|
sendExposeEvent(exposeGeometry);
|
||||||
|
|
||||||
|
- if (mShellSurface)
|
||||||
|
+ if (mShellSurface && isExposed())
|
||||||
|
mShellSurface->setWindowGeometry(windowContentGeometry());
|
||||||
|
|
||||||
|
if (isOpaque() && mMask.isEmpty())
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
40
0014-Translate-opaque-area-with-frame-margins.patch
Normal file
40
0014-Translate-opaque-area-with-frame-margins.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From a3e3ac1c86a956b25b1dc24f14518b6e6c96bcfc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan Grulich <jgrulich@redhat.com>
|
||||||
|
Date: Wed, 10 Feb 2021 17:11:27 +0100
|
||||||
|
Subject: [PATCH 14/19] Translate opaque area with frame margins
|
||||||
|
|
||||||
|
The opaque area doesn't take window decorations into account, which may
|
||||||
|
result into possible graphical artefacts.
|
||||||
|
|
||||||
|
Pick-to: 5.15 6.0 6.1
|
||||||
|
Change-Id: I1606e8256e7e204dad927931eb1221b576e227fd
|
||||||
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
|
---
|
||||||
|
src/client/qwaylandwindow.cpp | 8 +++++---
|
||||||
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||||
|
index e875af3a..2af39977 100644
|
||||||
|
--- a/src/client/qwaylandwindow.cpp
|
||||||
|
+++ b/src/client/qwaylandwindow.cpp
|
||||||
|
@@ -1234,12 +1234,14 @@ bool QWaylandWindow::isOpaque() const
|
||||||
|
|
||||||
|
void QWaylandWindow::setOpaqueArea(const QRegion &opaqueArea)
|
||||||
|
{
|
||||||
|
- if (opaqueArea == mOpaqueArea || !mSurface)
|
||||||
|
+ const QRegion translatedOpaqueArea = opaqueArea.translated(frameMargins().left(), frameMargins().top());
|
||||||
|
+
|
||||||
|
+ if (translatedOpaqueArea == mOpaqueArea || !mSurface)
|
||||||
|
return;
|
||||||
|
|
||||||
|
- mOpaqueArea = opaqueArea;
|
||||||
|
+ mOpaqueArea = translatedOpaqueArea;
|
||||||
|
|
||||||
|
- struct ::wl_region *region = mDisplay->createRegion(opaqueArea);
|
||||||
|
+ struct ::wl_region *region = mDisplay->createRegion(translatedOpaqueArea);
|
||||||
|
mSurface->set_opaque_region(region);
|
||||||
|
wl_region_destroy(region);
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,97 @@
|
|||||||
|
From 2073ff99e62d4f99ed3f1f45559c5b68a61c5f66 Mon Sep 17 00:00:00 2001
|
||||||
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
|
Date: Mon, 14 Sep 2020 17:08:39 +0100
|
||||||
|
Subject: [PATCH 15/19] Client: Send exposeEvent to parent on subsurface
|
||||||
|
position changes
|
||||||
|
|
||||||
|
When a subsurface is moved, we need the parent window to commit to apply
|
||||||
|
that move. Ideally we want this in sync with any potential rendering on
|
||||||
|
the parent window.
|
||||||
|
|
||||||
|
Currently the code calls requestUpdate() which acts more like a frame
|
||||||
|
callback; it will only do something if the main QWindow considers itself
|
||||||
|
dirty.
|
||||||
|
|
||||||
|
We want to force a repaint, which is semantically more similar to an
|
||||||
|
ExposeEvent.
|
||||||
|
|
||||||
|
Fixes: QTBUG-86177
|
||||||
|
Pick-to: 5.15
|
||||||
|
Change-Id: I30bdfa357beee860ce2b00a256eaea6d040dd55c
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
---
|
||||||
|
src/client/qwaylandwindow.cpp | 7 ++++-
|
||||||
|
tests/auto/client/surface/tst_surface.cpp | 33 +++++++++++++++++++----
|
||||||
|
2 files changed, 34 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||||
|
index 2af39977..e96d8fe9 100644
|
||||||
|
--- a/src/client/qwaylandwindow.cpp
|
||||||
|
+++ b/src/client/qwaylandwindow.cpp
|
||||||
|
@@ -342,7 +342,12 @@ void QWaylandWindow::setGeometry_helper(const QRect &rect)
|
||||||
|
if (mSubSurfaceWindow) {
|
||||||
|
QMargins m = QPlatformWindow::parent()->frameMargins();
|
||||||
|
mSubSurfaceWindow->set_position(rect.x() + m.left(), rect.y() + m.top());
|
||||||
|
- mSubSurfaceWindow->parent()->window()->requestUpdate();
|
||||||
|
+
|
||||||
|
+ QWaylandWindow *parentWindow = mSubSurfaceWindow->parent();
|
||||||
|
+ if (parentWindow && parentWindow->isExposed()) {
|
||||||
|
+ QRect parentExposeGeometry(QPoint(), parentWindow->geometry().size());
|
||||||
|
+ parentWindow->sendExposeEvent(parentExposeGeometry);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/tests/auto/client/surface/tst_surface.cpp b/tests/auto/client/surface/tst_surface.cpp
|
||||||
|
index b8a65f15..95e4e609 100644
|
||||||
|
--- a/tests/auto/client/surface/tst_surface.cpp
|
||||||
|
+++ b/tests/auto/client/surface/tst_surface.cpp
|
||||||
|
@@ -167,17 +167,40 @@ void tst_surface::negotiateShmFormat()
|
||||||
|
void tst_surface::createSubsurface()
|
||||||
|
{
|
||||||
|
QRasterWindow window;
|
||||||
|
- window.resize(64, 64);
|
||||||
|
- window.show();
|
||||||
|
- QCOMPOSITOR_TRY_VERIFY(xdgToplevel());
|
||||||
|
- exec([=] { xdgToplevel()->sendCompleteConfigure(); });
|
||||||
|
- QCOMPOSITOR_TRY_VERIFY(xdgSurface()->m_committedConfigureSerial);
|
||||||
|
+ window.setObjectName("main");
|
||||||
|
+ window.resize(200, 200);
|
||||||
|
|
||||||
|
QRasterWindow subWindow;
|
||||||
|
+ subWindow.setObjectName("subwindow");
|
||||||
|
subWindow.setParent(&window);
|
||||||
|
subWindow.resize(64, 64);
|
||||||
|
+
|
||||||
|
+ window.show();
|
||||||
|
subWindow.show();
|
||||||
|
+
|
||||||
|
QCOMPOSITOR_TRY_VERIFY(subSurface());
|
||||||
|
+ QCOMPOSITOR_TRY_VERIFY(xdgToplevel());
|
||||||
|
+ exec([=] { xdgToplevel()->sendCompleteConfigure(); });
|
||||||
|
+ QCOMPOSITOR_TRY_VERIFY(xdgSurface()->m_committedConfigureSerial);
|
||||||
|
+
|
||||||
|
+ const Surface *mainSurface = exec([=] {return surface(0);});
|
||||||
|
+ const Surface *childSurface = exec([=] {return surface(1);});
|
||||||
|
+ QSignalSpy mainSurfaceCommitSpy(mainSurface, &Surface::commit);
|
||||||
|
+ QSignalSpy childSurfaceCommitSpy(childSurface, &Surface::commit);
|
||||||
|
+
|
||||||
|
+ // Move subsurface. The parent should redraw and commit
|
||||||
|
+ subWindow.setGeometry(100, 100, 64, 64);
|
||||||
|
+ // the toplevel should commit to indicate the subsurface moved
|
||||||
|
+ QCOMPOSITOR_TRY_COMPARE(mainSurfaceCommitSpy.count(), 1);
|
||||||
|
+ mainSurfaceCommitSpy.clear();
|
||||||
|
+ childSurfaceCommitSpy.clear();
|
||||||
|
+
|
||||||
|
+ // Move and resize the subSurface. The parent should redraw and commit
|
||||||
|
+ // The child should also redraw
|
||||||
|
+ subWindow.setGeometry(50, 50, 80, 80);
|
||||||
|
+ QCOMPOSITOR_TRY_COMPARE(mainSurfaceCommitSpy.count(), 1);
|
||||||
|
+ QCOMPOSITOR_TRY_COMPARE(childSurfaceCommitSpy.count(), 1);
|
||||||
|
+
|
||||||
|
}
|
||||||
|
|
||||||
|
// Used to cause a crash in libwayland (QTBUG-79674)
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
39
0016-Get-correct-decoration-margins-region.patch
Normal file
39
0016-Get-correct-decoration-margins-region.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
From 6810b0f66a34056bfe0da7299d7a768e700e58f5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan Grulich <jgrulich@redhat.com>
|
||||||
|
Date: Thu, 11 Feb 2021 15:12:32 +0100
|
||||||
|
Subject: [PATCH 16/19] Get correct decoration margins region
|
||||||
|
|
||||||
|
Size we use to calculate margins region already contains size including
|
||||||
|
margins. This resulted into bigger region and not properly damaging
|
||||||
|
region we need to update.
|
||||||
|
|
||||||
|
Pick-to: 5.15 6.0 6.1
|
||||||
|
Change-Id: Id1b7f4cd2a7b894b82db09c5af2b2d1f1f43fa2a
|
||||||
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
|
---
|
||||||
|
src/client/qwaylandabstractdecoration.cpp | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylandabstractdecoration.cpp b/src/client/qwaylandabstractdecoration.cpp
|
||||||
|
index 87dd6cea..b6ee43c9 100644
|
||||||
|
--- a/src/client/qwaylandabstractdecoration.cpp
|
||||||
|
+++ b/src/client/qwaylandabstractdecoration.cpp
|
||||||
|
@@ -108,11 +108,11 @@ void QWaylandAbstractDecoration::setWaylandWindow(QWaylandWindow *window)
|
||||||
|
static QRegion marginsRegion(const QSize &size, const QMargins &margins)
|
||||||
|
{
|
||||||
|
QRegion r;
|
||||||
|
- const int widthWithMargins = margins.left() + size.width() + margins.right();
|
||||||
|
- r += QRect(0, 0, widthWithMargins, margins.top()); // top
|
||||||
|
- r += QRect(0, size.height()+margins.top(), widthWithMargins, margins.bottom()); //bottom
|
||||||
|
+
|
||||||
|
+ r += QRect(0, 0, size.width(), margins.top()); // top
|
||||||
|
+ r += QRect(0, size.height()-margins.bottom(), size.width(), margins.bottom()); //bottom
|
||||||
|
r += QRect(0, margins.top(), margins.left(), size.height()); //left
|
||||||
|
- r += QRect(size.width()+margins.left(), margins.top(), margins.right(), size.height()); // right
|
||||||
|
+ r += QRect(size.width()-margins.left(), margins.top(), margins.right(), size.height()-margins.top()); // right
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -0,0 +1,41 @@
|
|||||||
|
From cea69b8adec1e61adc1fa04cbf46b77c0d72c75e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Aleix Pol <aleixpol@kde.org>
|
||||||
|
Date: Mon, 23 Nov 2020 20:07:02 +0100
|
||||||
|
Subject: [PATCH 17/19] xdgshell: Tell the compositor the screen we're
|
||||||
|
expecting to fill
|
||||||
|
|
||||||
|
The xdgshell protocol allows us to tell the output to fill. This makes
|
||||||
|
it possible to use fullscreen confidently on systems with multiple
|
||||||
|
screens knowing that our windows won't be overlapping one another by
|
||||||
|
calling setScreen accordingly before QWindow::showFullScreen.
|
||||||
|
|
||||||
|
Pick-to: 6.1 6.0 5.15
|
||||||
|
Change-Id: I757854c3698639472f3a25ef298ddcca031e1ed5
|
||||||
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
|
---
|
||||||
|
.../shellintegration/xdg-shell/qwaylandxdgshell.cpp | 9 ++++++---
|
||||||
|
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
|
index 1c762944..3a1569f7 100644
|
||||||
|
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
|
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
|
@@ -178,9 +178,12 @@ void QWaylandXdgSurface::Toplevel::requestWindowStates(Qt::WindowStates states)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (changedStates & Qt::WindowFullScreen) {
|
||||||
|
- if (states & Qt::WindowFullScreen)
|
||||||
|
- set_fullscreen(nullptr);
|
||||||
|
- else
|
||||||
|
+ if (states & Qt::WindowFullScreen) {
|
||||||
|
+ auto screen = m_xdgSurface->window()->waylandScreen();
|
||||||
|
+ if (screen) {
|
||||||
|
+ set_fullscreen(screen->output());
|
||||||
|
+ }
|
||||||
|
+ } else
|
||||||
|
unset_fullscreen();
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
26
0018-Fix-compilation.patch
Normal file
26
0018-Fix-compilation.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 2f84a874da064069461284db1da36dc818949ec1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Albert Astals Cid <aacid@kde.org>
|
||||||
|
Date: Sat, 10 Apr 2021 12:10:16 +0200
|
||||||
|
Subject: [PATCH 18/19] Fix compilation
|
||||||
|
|
||||||
|
9df11e79b46c77d8c83f765b2a8e85b639fd55a2 can't be backported 1:1
|
||||||
|
---
|
||||||
|
.../client/wayland-egl/qwaylandglcontext.cpp | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
index befadedc..95d1049c 100644
|
||||||
|
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
||||||
|
@@ -408,7 +408,7 @@ QWaylandGLContext::~QWaylandGLContext()
|
||||||
|
delete m_blitter;
|
||||||
|
m_blitter = nullptr;
|
||||||
|
if (m_decorationsContext != EGL_NO_CONTEXT)
|
||||||
|
- eglDestroyContext(eglDisplay(), m_decorationsContext);
|
||||||
|
+ eglDestroyContext(m_eglDisplay, m_decorationsContext);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
257
0019-client-Allow-QWaylandInputContext-to-accept-composed.patch
Normal file
257
0019-client-Allow-QWaylandInputContext-to-accept-composed.patch
Normal file
@ -0,0 +1,257 @@
|
|||||||
|
From 91c48320633e493b4cd519e5d73b836a878b2b77 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Aleix Pol <aleixpol@kde.org>
|
||||||
|
Date: Wed, 10 Mar 2021 01:09:13 +0100
|
||||||
|
Subject: [PATCH 19/19] client: Allow QWaylandInputContext to accept composed
|
||||||
|
key combinations
|
||||||
|
|
||||||
|
At the moment, we are forcing user to choose to either compose or use
|
||||||
|
the text-input channel. This patch brings some of the QComposeInputContext
|
||||||
|
functionality in order to let applications understand dead key
|
||||||
|
combinations like they are supposed to.
|
||||||
|
|
||||||
|
Having it in QWaylandInputContext rather than in QWaylandInputDevice
|
||||||
|
should solve the problems 3aedd01271dc4f4a13103d632df224971ab2b6df had
|
||||||
|
with 57c4af2b18c0fb1d266b245a107fa6cb876b9d9e, because we are doing it
|
||||||
|
in the input context rather than before. This way, if the user is
|
||||||
|
overriding the input method (e.g. by setting QT_IM_MODULE), all the key
|
||||||
|
strokes will still be properly forwarded to the module to use.
|
||||||
|
|
||||||
|
This in turn allows us to solve https://bugs.kde.org/show_bug.cgi?id=411729
|
||||||
|
and https://bugs.kde.org/show_bug.cgi?id=405388 since we don't need to
|
||||||
|
choose anymore between physical and virual keyboards anymore.
|
||||||
|
|
||||||
|
Pick-to: 5.15
|
||||||
|
Change-Id: I8601f5d7ae21edf4b3a1191fa75877286e505588
|
||||||
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
|
---
|
||||||
|
src/client/qwaylanddisplay_p.h | 3 -
|
||||||
|
src/client/qwaylandinputcontext.cpp | 95 ++++++++++++++++++++++++++++-
|
||||||
|
src/client/qwaylandinputcontext_p.h | 21 +++++++
|
||||||
|
src/client/qwaylandinputdevice.cpp | 2 +-
|
||||||
|
src/client/qwaylandintegration.cpp | 8 +--
|
||||||
|
5 files changed, 119 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/client/qwaylanddisplay_p.h b/src/client/qwaylanddisplay_p.h
|
||||||
|
index 188e9131..3b092bc8 100644
|
||||||
|
--- a/src/client/qwaylanddisplay_p.h
|
||||||
|
+++ b/src/client/qwaylanddisplay_p.h
|
||||||
|
@@ -175,8 +175,6 @@ public:
|
||||||
|
QWaylandHardwareIntegration *hardwareIntegration() const { return mHardwareIntegration.data(); }
|
||||||
|
QWaylandXdgOutputManagerV1 *xdgOutputManager() const { return mXdgOutputManager.data(); }
|
||||||
|
|
||||||
|
- bool usingInputContextFromCompositor() const { return mUsingInputContextFromCompositor; }
|
||||||
|
-
|
||||||
|
struct RegistryGlobal {
|
||||||
|
uint32_t id;
|
||||||
|
QString interface;
|
||||||
|
@@ -282,7 +280,6 @@ private:
|
||||||
|
QReadWriteLock m_frameQueueLock;
|
||||||
|
|
||||||
|
bool mClientSideInputContextRequested = !QPlatformInputContextFactory::requested().isNull();
|
||||||
|
- bool mUsingInputContextFromCompositor = false;
|
||||||
|
|
||||||
|
void registry_global(uint32_t id, const QString &interface, uint32_t version) override;
|
||||||
|
void registry_global_remove(uint32_t id) override;
|
||||||
|
diff --git a/src/client/qwaylandinputcontext.cpp b/src/client/qwaylandinputcontext.cpp
|
||||||
|
index e9afe05e..ef5aa375 100644
|
||||||
|
--- a/src/client/qwaylandinputcontext.cpp
|
||||||
|
+++ b/src/client/qwaylandinputcontext.cpp
|
||||||
|
@@ -406,6 +406,8 @@ bool QWaylandInputContext::isValid() const
|
||||||
|
void QWaylandInputContext::reset()
|
||||||
|
{
|
||||||
|
qCDebug(qLcQpaInputMethods) << Q_FUNC_INFO;
|
||||||
|
+ if (m_composeState)
|
||||||
|
+ xkb_compose_state_reset(m_composeState);
|
||||||
|
|
||||||
|
QPlatformInputContext::reset();
|
||||||
|
|
||||||
|
@@ -526,9 +528,14 @@ Qt::LayoutDirection QWaylandInputContext::inputDirection() const
|
||||||
|
return textInput()->inputDirection();
|
||||||
|
}
|
||||||
|
|
||||||
|
-void QWaylandInputContext::setFocusObject(QObject *)
|
||||||
|
+void QWaylandInputContext::setFocusObject(QObject *object)
|
||||||
|
{
|
||||||
|
qCDebug(qLcQpaInputMethods) << Q_FUNC_INFO;
|
||||||
|
+#if QT_CONFIG(xkbcommon)
|
||||||
|
+ m_focusObject = object;
|
||||||
|
+#else
|
||||||
|
+ Q_UNUSED(object);
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
if (!textInput())
|
||||||
|
return;
|
||||||
|
@@ -561,6 +568,92 @@ QWaylandTextInput *QWaylandInputContext::textInput() const
|
||||||
|
return mDisplay->defaultInputDevice()->textInput();
|
||||||
|
}
|
||||||
|
|
||||||
|
+#if QT_CONFIG(xkbcommon)
|
||||||
|
+
|
||||||
|
+void QWaylandInputContext::ensureInitialized()
|
||||||
|
+{
|
||||||
|
+ if (m_initialized)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ if (!m_XkbContext) {
|
||||||
|
+ qCWarning(qLcQpaInputMethods) << "error: xkb context has not been set on" << metaObject()->className();
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ m_initialized = true;
|
||||||
|
+ const char *locale = setlocale(LC_CTYPE, "");
|
||||||
|
+ if (!locale)
|
||||||
|
+ locale = setlocale(LC_CTYPE, nullptr);
|
||||||
|
+ qCDebug(qLcQpaInputMethods) << "detected locale (LC_CTYPE):" << locale;
|
||||||
|
+
|
||||||
|
+ m_composeTable = xkb_compose_table_new_from_locale(m_XkbContext, locale, XKB_COMPOSE_COMPILE_NO_FLAGS);
|
||||||
|
+ if (m_composeTable)
|
||||||
|
+ m_composeState = xkb_compose_state_new(m_composeTable, XKB_COMPOSE_STATE_NO_FLAGS);
|
||||||
|
+
|
||||||
|
+ if (!m_composeTable) {
|
||||||
|
+ qCWarning(qLcQpaInputMethods, "failed to create compose table");
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+ if (!m_composeState) {
|
||||||
|
+ qCWarning(qLcQpaInputMethods, "failed to create compose state");
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+bool QWaylandInputContext::filterEvent(const QEvent *event)
|
||||||
|
+{
|
||||||
|
+ auto keyEvent = static_cast<const QKeyEvent *>(event);
|
||||||
|
+ if (keyEvent->type() != QEvent::KeyPress)
|
||||||
|
+ return false;
|
||||||
|
+
|
||||||
|
+ if (!inputMethodAccepted())
|
||||||
|
+ return false;
|
||||||
|
+
|
||||||
|
+ // lazy initialization - we don't want to do this on an app startup
|
||||||
|
+ ensureInitialized();
|
||||||
|
+
|
||||||
|
+ if (!m_composeTable || !m_composeState)
|
||||||
|
+ return false;
|
||||||
|
+
|
||||||
|
+ xkb_compose_state_feed(m_composeState, keyEvent->nativeVirtualKey());
|
||||||
|
+
|
||||||
|
+ switch (xkb_compose_state_get_status(m_composeState)) {
|
||||||
|
+ case XKB_COMPOSE_COMPOSING:
|
||||||
|
+ return true;
|
||||||
|
+ case XKB_COMPOSE_CANCELLED:
|
||||||
|
+ reset();
|
||||||
|
+ return false;
|
||||||
|
+ case XKB_COMPOSE_COMPOSED:
|
||||||
|
+ {
|
||||||
|
+ const int size = xkb_compose_state_get_utf8(m_composeState, nullptr, 0);
|
||||||
|
+ QVarLengthArray<char, 32> buffer(size + 1);
|
||||||
|
+ xkb_compose_state_get_utf8(m_composeState, buffer.data(), buffer.size());
|
||||||
|
+ QString composedText = QString::fromUtf8(buffer.constData());
|
||||||
|
+
|
||||||
|
+ QInputMethodEvent event;
|
||||||
|
+ event.setCommitString(composedText);
|
||||||
|
+
|
||||||
|
+ if (!m_focusObject && qApp)
|
||||||
|
+ m_focusObject = qApp->focusObject();
|
||||||
|
+
|
||||||
|
+ if (m_focusObject)
|
||||||
|
+ QCoreApplication::sendEvent(m_focusObject, &event);
|
||||||
|
+ else
|
||||||
|
+ qCWarning(qLcQpaInputMethods, "no focus object");
|
||||||
|
+
|
||||||
|
+ reset();
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+ case XKB_COMPOSE_NOTHING:
|
||||||
|
+ return false;
|
||||||
|
+ default:
|
||||||
|
+ Q_UNREACHABLE();
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
}
|
||||||
|
|
||||||
|
QT_END_NAMESPACE
|
||||||
|
diff --git a/src/client/qwaylandinputcontext_p.h b/src/client/qwaylandinputcontext_p.h
|
||||||
|
index 10132dfe..50db6344 100644
|
||||||
|
--- a/src/client/qwaylandinputcontext_p.h
|
||||||
|
+++ b/src/client/qwaylandinputcontext_p.h
|
||||||
|
@@ -61,6 +61,10 @@
|
||||||
|
|
||||||
|
#include <QtWaylandClient/private/qwayland-text-input-unstable-v2.h>
|
||||||
|
#include <qwaylandinputmethodeventbuilder_p.h>
|
||||||
|
+#include <qtwaylandclientglobal_p.h>
|
||||||
|
+#if QT_CONFIG(xkbcommon)
|
||||||
|
+#include <xkbcommon/xkbcommon-compose.h>
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
struct wl_callback;
|
||||||
|
struct wl_callback_listener;
|
||||||
|
@@ -155,11 +159,28 @@ public:
|
||||||
|
|
||||||
|
void setFocusObject(QObject *object) override;
|
||||||
|
|
||||||
|
+#if QT_CONFIG(xkbcommon)
|
||||||
|
+ bool filterEvent(const QEvent *event) override;
|
||||||
|
+
|
||||||
|
+ // This invokable is called from QXkbCommon::setXkbContext().
|
||||||
|
+ Q_INVOKABLE void setXkbContext(struct xkb_context *context) { m_XkbContext = context; }
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
private:
|
||||||
|
QWaylandTextInput *textInput() const;
|
||||||
|
|
||||||
|
QWaylandDisplay *mDisplay = nullptr;
|
||||||
|
QPointer<QWindow> mCurrentWindow;
|
||||||
|
+
|
||||||
|
+#if QT_CONFIG(xkbcommon)
|
||||||
|
+ void ensureInitialized();
|
||||||
|
+
|
||||||
|
+ bool m_initialized = false;
|
||||||
|
+ QObject *m_focusObject = nullptr;
|
||||||
|
+ xkb_compose_table *m_composeTable = nullptr;
|
||||||
|
+ xkb_compose_state *m_composeState = nullptr;
|
||||||
|
+ struct xkb_context *m_XkbContext = nullptr;
|
||||||
|
+#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp
|
||||||
|
index ed4a0eb4..ae045f4f 100644
|
||||||
|
--- a/src/client/qwaylandinputdevice.cpp
|
||||||
|
+++ b/src/client/qwaylandinputdevice.cpp
|
||||||
|
@@ -1201,7 +1201,7 @@ void QWaylandInputDevice::Keyboard::handleKey(ulong timestamp, QEvent::Type type
|
||||||
|
QPlatformInputContext *inputContext = QGuiApplicationPrivate::platformIntegration()->inputContext();
|
||||||
|
bool filtered = false;
|
||||||
|
|
||||||
|
- if (inputContext && !mParent->mQDisplay->usingInputContextFromCompositor()) {
|
||||||
|
+ if (inputContext) {
|
||||||
|
QKeyEvent event(type, key, modifiers, nativeScanCode, nativeVirtualKey,
|
||||||
|
nativeModifiers, text, autorepeat, count);
|
||||||
|
event.setTimestamp(timestamp);
|
||||||
|
diff --git a/src/client/qwaylandintegration.cpp b/src/client/qwaylandintegration.cpp
|
||||||
|
index 7ad8e05e..c53ccb78 100644
|
||||||
|
--- a/src/client/qwaylandintegration.cpp
|
||||||
|
+++ b/src/client/qwaylandintegration.cpp
|
||||||
|
@@ -474,13 +474,11 @@ void QWaylandIntegration::reconfigureInputContext()
|
||||||
|
|
||||||
|
#if QT_CONFIG(xkbcommon)
|
||||||
|
QXkbCommon::setXkbContext(mInputContext.data(), mDisplay->xkbContext());
|
||||||
|
+ if (QWaylandInputContext* waylandInput = qobject_cast<QWaylandInputContext*>(mInputContext.get())) {
|
||||||
|
+ waylandInput->setXkbContext(mDisplay->xkbContext());
|
||||||
|
+ }
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- // Even if compositor-side input context handling has been requested, we fallback to
|
||||||
|
- // client-side handling if compositor does not provide the text-input extension. This
|
||||||
|
- // is why we need to check here which input context actually is being used.
|
||||||
|
- mDisplay->mUsingInputContextFromCompositor = qobject_cast<QWaylandInputContext *>(mInputContext.data());
|
||||||
|
-
|
||||||
|
qCDebug(lcQpaWayland) << "using input method:" << inputContext()->metaObject()->className();
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -3,15 +3,39 @@
|
|||||||
Summary: Qt5 - Wayland platform support and QtCompositor module
|
Summary: Qt5 - Wayland platform support and QtCompositor module
|
||||||
Name: qt5-%{qt_module}
|
Name: qt5-%{qt_module}
|
||||||
Version: 5.15.2
|
Version: 5.15.2
|
||||||
Release: 5%{?dist}
|
Release: 6%{?dist}
|
||||||
|
|
||||||
License: LGPLv3
|
License: LGPLv3
|
||||||
Url: http://www.qt.io
|
Url: http://www.qt.io
|
||||||
%global majmin %(echo %{version} | cut -d. -f1-2)
|
%global majmin %(echo %{version} | cut -d. -f1-2)
|
||||||
Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz
|
Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz
|
||||||
|
|
||||||
# Upstream patches
|
## Upstream patches
|
||||||
Patch0: qtwayland-scanner-avoid-accessing-dangling-pointers-in-destroy-func.patch
|
## repo: https://invent.kde.org/qt/qt/qtwayland
|
||||||
|
## branch: kde/5.15
|
||||||
|
## git format-patch v5.15.2
|
||||||
|
## These are already included in stock 5.15.2 tarball, referenced here for completeness
|
||||||
|
#Patch1: 0001-Bump-version.patch
|
||||||
|
#Patch2: 0002-Replace-remaining-LGPLv3-headers-in-QtWaylandComposi.patch
|
||||||
|
#Patch3: 0003-Doc-List-correct-license-information-for-the-module.patch
|
||||||
|
#Patch4: 0004-Add-changes-file-for-Qt-5.15.2.patch
|
||||||
|
Patch5: 0005-Scanner-Avoid-accessing-dangling-pointers-in-destroy.patch
|
||||||
|
Patch6: 0006-Make-setting-QT_SCALE_FACTOR-work-on-Wayland.patch
|
||||||
|
Patch7: 0007-Do-not-try-to-eglMakeCurrent-for-unintended-case.patch
|
||||||
|
Patch8: 0008-Make-setting-QT_SCALE_FACTOR-work-on-Wayland.patch
|
||||||
|
Patch9: 0009-Ensure-that-grabbing-is-performed-in-correct-context.patch
|
||||||
|
Patch10: 0010-Fix-leaked-subsurface-wayland-items.patch
|
||||||
|
Patch11: 0011-Use-qWarning-and-_exit-instead-of-qFatal-for-wayland.patch
|
||||||
|
Patch12: 0012-Fix-memory-leak-in-QWaylandGLContext.patch
|
||||||
|
Patch13: 0013-Client-Send-set_window_geometry-only-once-configured.patch
|
||||||
|
Patch14: 0014-Translate-opaque-area-with-frame-margins.patch
|
||||||
|
Patch15: 0015-Client-Send-exposeEvent-to-parent-on-subsurface-posi.patch
|
||||||
|
Patch16: 0016-Get-correct-decoration-margins-region.patch
|
||||||
|
Patch17: 0017-xdgshell-Tell-the-compositor-the-screen-we-re-expect.patch
|
||||||
|
Patch18: 0018-Fix-compilation.patch
|
||||||
|
Patch19: 0019-client-Allow-QWaylandInputContext-to-accept-composed.patch
|
||||||
|
|
||||||
|
Patch51: qtwayland-fix-issue-with-repeated-window-size-changes.patch
|
||||||
|
|
||||||
# Upstreamable patches
|
# Upstreamable patches
|
||||||
|
|
||||||
@ -122,6 +146,10 @@ popd
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon May 03 2021 Jan Grulich <jgrulich@redhat.com> - 5.15.2-6
|
||||||
|
- Sync with Fedora
|
||||||
|
Resolves: bz#1951152
|
||||||
|
|
||||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 5.15.2-5
|
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 5.15.2-5
|
||||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||||
|
|
||||||
|
54
qtwayland-fix-issue-with-repeated-window-size-changes.patch
Normal file
54
qtwayland-fix-issue-with-repeated-window-size-changes.patch
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
From 14d066c61025e548227ccd8d655e80ffa31fa15e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jaeyoon Jung <jaeyoon.jung@lge.com>
|
||||||
|
Date: Mon, 15 Feb 2021 08:31:06 +0900
|
||||||
|
Subject: [PATCH] Fix issue with repeated window size changes
|
||||||
|
|
||||||
|
Check if the new window size is different from the size requested
|
||||||
|
previously before calling wl_egl_window_resize. It addresses the issue
|
||||||
|
where repeated setGeometry calls between two sizes might not work as
|
||||||
|
expected. The problem occurs when wl_egl_window_get_attached_size does
|
||||||
|
not get the same size that was requested by the previous setGeometry
|
||||||
|
call. If the returned size happened to match the new size instead,
|
||||||
|
we would mistakenly skip the resize.
|
||||||
|
|
||||||
|
Change-Id: Iafe4a91cc707f854b9099b6109b6be1423d7bd29
|
||||||
|
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
|
---
|
||||||
|
.../client/wayland-egl/qwaylandeglwindow.cpp | 4 +++-
|
||||||
|
.../client/wayland-egl/qwaylandeglwindow.h | 1 +
|
||||||
|
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
|
||||||
|
index 1e8dc06f7..355aca864 100644
|
||||||
|
--- a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
|
||||||
|
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
|
||||||
|
@@ -131,14 +131,16 @@ void QWaylandEglWindow::updateSurface(bool create)
|
||||||
|
if (!disableResizeCheck) {
|
||||||
|
wl_egl_window_get_attached_size(m_waylandEglWindow, ¤t_width, ¤t_height);
|
||||||
|
}
|
||||||
|
- if (disableResizeCheck || (current_width != sizeWithMargins.width() || current_height != sizeWithMargins.height())) {
|
||||||
|
+ if (disableResizeCheck || (current_width != sizeWithMargins.width() || current_height != sizeWithMargins.height()) || m_requestedSize != sizeWithMargins) {
|
||||||
|
wl_egl_window_resize(m_waylandEglWindow, sizeWithMargins.width(), sizeWithMargins.height(), mOffset.x(), mOffset.y());
|
||||||
|
+ m_requestedSize = sizeWithMargins;
|
||||||
|
mOffset = QPoint();
|
||||||
|
|
||||||
|
m_resize = true;
|
||||||
|
}
|
||||||
|
} else if (create && wlSurface()) {
|
||||||
|
m_waylandEglWindow = wl_egl_window_create(wlSurface(), sizeWithMargins.width(), sizeWithMargins.height());
|
||||||
|
+ m_requestedSize = sizeWithMargins;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!m_eglSurface && m_waylandEglWindow && create) {
|
||||||
|
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.h b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.h
|
||||||
|
index 5b1f4d56f..0079dfef8 100644
|
||||||
|
--- a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.h
|
||||||
|
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.h
|
||||||
|
@@ -88,6 +88,7 @@ class QWaylandEglWindow : public QWaylandWindow
|
||||||
|
mutable QOpenGLFramebufferObject *m_contentFBO = nullptr;
|
||||||
|
|
||||||
|
QSurfaceFormat m_format;
|
||||||
|
+ QSize m_requestedSize;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user