From 86b267ee8ab4a9c59b6c0098cf014d3cd695cb99 Mon Sep 17 00:00:00 2001 From: Bart Ribbers Date: Sat, 22 Jun 2019 19:16:33 +0200 Subject: [PATCH] temp/kwin: new aport to fix Plasma Mobile issue (!456) [ci:skip-build] Won't succeed in time --- temp/kwin/APKBUILD | 35 +++++++++++++++++++++++++++++++++++ temp/kwin/fix-top-bar.patch | 30 ++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 temp/kwin/APKBUILD create mode 100644 temp/kwin/fix-top-bar.patch diff --git a/temp/kwin/APKBUILD b/temp/kwin/APKBUILD new file mode 100644 index 000000000..e0597c74a --- /dev/null +++ b/temp/kwin/APKBUILD @@ -0,0 +1,35 @@ +# Fork from Alpine to add temporary patch to fix the Plasma Mobile top bar +# This will not be needed anymore from kwin 5.16.2 +pkgname=kwin +pkgver=5.16.1 +pkgrel=1 +pkgdesc="An easy to use, but flexible, composited Window Manager" +arch="all" +url="https://www.kde.org/workspaces/plasmadesktop/" +license="GPL-2.0-or-later AND (GPL-2.0-only OR GPL-3.0-only) AND LGPL-2.1-only" +depends="qt5-qtwayland qt5-qtmultimedia kirigami2 xorg-server-xwayland" +depends_dev="qt5-qtbase-dev qt5-qtdeclarative-dev qt5-qtscript-dev qt5-qtsensors-dev qt5-qtx11extras-dev kconfig-dev kconfigwidgets-dev kcoreaddons-dev kcrash-dev kglobalaccel-dev ki18n-dev kinit-dev knotifications-dev kpackage-dev plasma-framework-dev kwidgetsaddons-dev kwindowsystem-dev kiconthemes-dev kidletime-dev kwayland-dev kcompletion-dev kdeclarative-dev kcmutils-dev kio-dev ktextwidgets-dev knewstuff-dev kservice-dev kxmlgui-dev kactivities-dev kdecoration-dev kscreenlocker-dev breeze-dev libepoxy-dev mesa-dev wayland-dev xcb-util-cursor-dev xcb-util-image-dev xcb-util-wm-dev libinput-dev eudev-dev libdrm-dev mesa-gbm fontconfig-dev libxkbcommon-dev libxi-dev" +makedepends="$depends_dev extra-cmake-modules qt5-qttools-dev kdoctools-dev" +checkdepends="xvfb-run" +source="https://download.kde.org/stable/plasma/$pkgver/$pkgname-$pkgver.tar.xz + fix-top-bar.patch" +subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" +options="!check" # Broken + +build() { + cmake \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib + make +} + +check() { + CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run ctest +} + +package() { + DESTDIR="$pkgdir" make install +} +sha512sums="0f739ac0b60d6869b7a24b948c72a6371b11a6d40c8f3013228ef300f3963e374e69409f8e2699aa0cb3c07b1d2204f8d9dc2a56e09ca459b6024befd7c77aef kwin-5.16.1.tar.xz +45d7e0907416e7d3dcd6f516431cf73bcdebbf50e6dd928f7dd99c8df46ba3042006bfa23a7fe49d30a3e14a9d3163c43c2b1fce6087e42f208613ce3a94b400 fix-top-bar.patch" diff --git a/temp/kwin/fix-top-bar.patch b/temp/kwin/fix-top-bar.patch new file mode 100644 index 000000000..cc8b9d002 --- /dev/null +++ b/temp/kwin/fix-top-bar.patch @@ -0,0 +1,30 @@ +From bc97232dfd16c4fe88903d3b9fdb58166e26d544 Mon Sep 17 00:00:00 2001 +From: David Edmundson +Date: Sat, 22 Jun 2019 17:13:43 +0200 +Subject: [wayland] Obey m_requestGeometryBlockCounter inside updateDecoration + +Otherwise we can send our configure request too early + +Reviewed-by: Bhushun Shah +--- + shell_client.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/shell_client.cpp b/shell_client.cpp +index ff7ee34..65417d5 100644 +--- a/shell_client.cpp ++++ b/shell_client.cpp +@@ -591,7 +591,9 @@ void ShellClient::updateDecoration(bool check_workspace_pos, bool force) + if (m_xdgDecoration) { + auto mode = isDecorated() || m_userNoBorder ? XdgDecorationInterface::Mode::ServerSide: XdgDecorationInterface::Mode::ClientSide; + m_xdgDecoration->configure(mode); +- m_xdgShellSurface->configure(xdgSurfaceStates(), m_requestedClientSize); ++ if (m_requestGeometryBlockCounter == 0) { ++ m_xdgShellSurface->configure(xdgSurfaceStates(), m_requestedClientSize); ++ } + } + getShadow(); + if (check_workspace_pos) +-- +cgit v1.1 +