Merge branch 'rawhide' into f36

epel9
Marc Deop 3 years ago
commit 31d599d8f0

@ -0,0 +1,69 @@
From 1be046edd455969b74417ded6871d25eba8a1112 Mon Sep 17 00:00:00 2001
From: David Edmundson <kde@davidedmundson.co.uk>
Date: Mon, 27 Jun 2022 17:12:09 +0200
Subject: [PATCH] Disable toplevel fixed positions on Wayland
Given that the wayland protocol does not have window positions a recent
change to Qt development branch avoids having a mismatch of positions
and tells client code the window is at the topleft of the screen. This
fixes multiple bugs.
Unfortuantely this breaks a few usages within plasma where a
side-channel sends that absolute positional information over a bespoke
protocol. Currently we proxy this all through QWindow geometry where the
new Qt behaviour will throw is askew.
Whilst our longterm plans are to find future options away from the
plasmashell protocol we may as well have our Qt6
build work given the patch is trivial and harmless.
It also allows for potential backporting if our software is
already secured against issues.
---
krunner/main.cpp | 2 ++
shell/main.cpp | 3 +++
2 files changed, 5 insertions(+)
diff --git a/krunner/main.cpp b/krunner/main.cpp
index a05402a01..f19382cad 100644
--- a/krunner/main.cpp
+++ b/krunner/main.cpp
@@ -34,6 +34,7 @@ int main(int argc, char **argv)
QCoreApplication::setAttribute(Qt::AA_DisableHighDpiScaling);
}
+ qputenv("QT_WAYLAND_DISABLE_FIXED_POSITIONS", {});
const bool qpaVariable = qEnvironmentVariableIsSet("QT_QPA_PLATFORM");
KWorkSpace::detectPlatform(argc, argv);
QQuickWindow::setDefaultAlphaBuffer(true);
@@ -42,6 +43,7 @@ int main(int argc, char **argv)
// don't leak the env variable to processes we start
qunsetenv("QT_QPA_PLATFORM");
}
+ qunsetenv("QT_WAYLAND_DISABLE_FIXED_POSITIONS");
KLocalizedString::setApplicationDomain("krunner");
// TODO: Make it a QGuiApplication once we don't depend on KDELibs4Support
diff --git a/shell/main.cpp b/shell/main.cpp
index 26e4ecede..147483df4 100644
--- a/shell/main.cpp
+++ b/shell/main.cpp
@@ -79,6 +79,7 @@ int main(int argc, char *argv[])
oldCategoryFilter = QLoggingCategory::installFilter(filterConnectionSyntaxWarning);
+ qputenv("QT_WAYLAND_DISABLE_FIXED_POSITIONS", {});
const bool qpaVariable = qEnvironmentVariableIsSet("QT_QPA_PLATFORM");
KWorkSpace::detectPlatform(argc, argv);
QApplication app(argc, argv);
@@ -86,6 +87,8 @@ int main(int argc, char *argv[])
// don't leak the env variable to processes we start
qunsetenv("QT_QPA_PLATFORM");
}
+ qunsetenv("QT_WAYLAND_DISABLE_FIXED_POSITIONS");
+
KLocalizedString::setApplicationDomain("plasmashell");
// The executable's path is added to the library/plugin paths.
--
GitLab

@ -0,0 +1,38 @@
From d6d47393bab32dc60b43e0eeac16c035000a0358 Mon Sep 17 00:00:00 2001
From: Eugene Popov <popov895@ukr.net>
Date: Sun, 24 Jul 2022 00:18:44 +0000
Subject: [PATCH] [FIX] Unable to remove manually added wallpaper
It's not necessary to assign m_removableWallpapers asynchronously, because the value assigned to it doesn't depend on the result of that asynch function.
!!! This MR is for the Plasma/5.25 branch only and it SHOULD NOT be cherry-picket into the master branch.
BUG: 457019
---
wallpapers/image/plugin/backgroundlistmodel.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/wallpapers/image/plugin/backgroundlistmodel.cpp b/wallpapers/image/plugin/backgroundlistmodel.cpp
index 8c5630712..0b12470a5 100644
--- a/wallpapers/image/plugin/backgroundlistmodel.cpp
+++ b/wallpapers/image/plugin/backgroundlistmodel.cpp
@@ -107,6 +107,8 @@ void BackgroundListModel::reload(const QStringList &selected)
return;
}
+ m_removableWallpapers = QSet<QString>(selected.constBegin(), selected.constEnd());
+
const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QStringLiteral("wallpapers/"), QStandardPaths::LocateDirectory);
BackgroundFinder *finder = new BackgroundFinder(m_wallpaper.data(), dirs);
@@ -117,7 +119,6 @@ void BackgroundListModel::reload(const QStringList &selected)
}
processPaths(selected + wallpapersFound);
- m_removableWallpapers = QSet<QString>(selected.constBegin(), selected.constEnd());
});
m_findToken = token;
finder->start();
--
GitLab

@ -28,7 +28,7 @@
Name: plasma-workspace
Summary: Plasma workspace, applications and applets
Version: 5.25.3.1
Release: 1%{?dist}
Release: 5%{?dist}
License: GPLv2+
URL: https://invent.kde.org/plasma/%{name}
@ -63,6 +63,11 @@ Source40: ssh-agent.conf
Source41: spice-vdagent.conf
## upstream Patches (master branch)
# https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1879
Patch50: disable-toplevel-fixed-positions-on-wayland.patch
# Fix for 457019: Can't remove manually added wallpaper
# (https://bugs.kde.org/show_bug.cgi?id=457019)
Patch60: plasma-workspace-5.25.3.1-fix-unable-to-remove-manually-added-wallpaper.patch
## upstreamable Patches
@ -118,7 +123,7 @@ BuildRequires: kf5-prison-devel
BuildRequires: qt5-qtbase-devel >= 5.15
BuildRequires: qt5-qtbase-private-devel
%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
BuildRequires: qt5-qtx11extras-devel
BuildRequires: qt5-qtscript-devel
BuildRequires: qt5-qtdeclarative-devel
@ -771,6 +776,18 @@ fi
%changelog
* Sun Jul 24 2022 Yaroslav Sidlovsky <zawertun@gmail.com> - 5.25.3.1-5
- Added patch to fix #457019
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.25.3.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jul 20 2022 Jan Grulich <jgrulich@redhat.com> - 5.25.3.1-3
- Disable toplevel fixed positions on Wayland
* Thu Jul 14 2022 Jan Grulich <jgrulich@redhat.com> - 5.25.3.1-2
- Rebuild (qt5)
* Tue Jul 12 2022 Marc Deop <marcdeop@fedoraproject.org> - 5.25.3.1-1
- 5.25.3.1

Loading…
Cancel
Save