commit:     1143b8d33309489ded30c7ea409a47c6b01efb72
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 26 17:18:37 2016 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Sun Jun 26 17:19:07 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1143b8d3

kde-plasma/plasma-workspace: backport patch from upstream to fix panel geometry

This resolves a regression introduced by 
plasma-workspace-5.6.5-drop-kscreen-dep.patch.

Package-Manager: portage-2.3.0

 .../files/plasma-workspace-5.6.5.1-struts.patch    |  29 ++++
 .../plasma-workspace-5.6.5.1-r1.ebuild             | 167 +++++++++++++++++++++
 2 files changed, 196 insertions(+)

diff --git 
a/kde-plasma/plasma-workspace/files/plasma-workspace-5.6.5.1-struts.patch 
b/kde-plasma/plasma-workspace/files/plasma-workspace-5.6.5.1-struts.patch
new file mode 100644
index 0000000..4fc7bd2
--- /dev/null
+++ b/kde-plasma/plasma-workspace/files/plasma-workspace-5.6.5.1-struts.patch
@@ -0,0 +1,29 @@
+From b866bbe75e04584f0a54980c2c21cba2eadc123b Mon Sep 17 00:00:00 2001
+From: Marco Martin <[email protected]>
+Date: Mon, 13 Jun 2016 14:23:43 +0200
+Subject: [PATCH] use the whole geometry for the struts
+
+screen()->virtualSize() is the union of the sizes
+of all screens
+screen()->geometry().size() is the size of just the
+single screen
+---
+ shell/panelview.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/shell/panelview.cpp b/shell/panelview.cpp
+index fb965e8..b27c18b 100644
+--- a/shell/panelview.cpp
++++ b/shell/panelview.cpp
+@@ -856,7 +856,7 @@ void PanelView::updateStruts()
+     if (m_visibilityMode == NormalPanel) {
+         const QRect thisScreen = screen()->geometry();
+         // QScreen::virtualGeometry() is very unreliable (Qt 5.5)
+-        const QRect wholeScreen = QRect(QPoint(0, 0), 
screen()->geometry().size());
++        const QRect wholeScreen = QRect(QPoint(0, 0), 
screen()->virtualSize());
+ 
+         //Extended struts against a screen edge near to another screen are 
really harmful, so windows maximized under the panel is a lesser pain
+         //TODO: force "windows can cover" in those cases?
+-- 
+2.7.3
+

diff --git a/kde-plasma/plasma-workspace/plasma-workspace-5.6.5.1-r1.ebuild 
b/kde-plasma/plasma-workspace/plasma-workspace-5.6.5.1-r1.ebuild
new file mode 100644
index 0000000..e4e3f55
--- /dev/null
+++ b/kde-plasma/plasma-workspace/plasma-workspace-5.6.5.1-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+KDE_HANDBOOK="forceoptional"
+KDE_TEST="forceoptional"
+VIRTUALX_REQUIRED="test"
+inherit kde5 multilib qmake-utils
+
+DESCRIPTION="KDE Plasma workspace"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="+geolocation gps prison qalculate"
+
+COMMON_DEPEND="
+       $(add_frameworks_dep baloo)
+       $(add_frameworks_dep kactivities)
+       $(add_frameworks_dep kauth)
+       $(add_frameworks_dep kbookmarks)
+       $(add_frameworks_dep kcmutils)
+       $(add_frameworks_dep kcompletion)
+       $(add_frameworks_dep kconfig)
+       $(add_frameworks_dep kconfigwidgets)
+       $(add_frameworks_dep kcoreaddons)
+       $(add_frameworks_dep kcrash)
+       $(add_frameworks_dep kdbusaddons)
+       $(add_frameworks_dep kdeclarative)
+       $(add_frameworks_dep kdelibs4support)
+       $(add_frameworks_dep kdesu)
+       $(add_frameworks_dep kglobalaccel)
+       $(add_frameworks_dep kguiaddons)
+       $(add_frameworks_dep ki18n)
+       $(add_frameworks_dep kiconthemes)
+       $(add_frameworks_dep kidletime)
+       $(add_frameworks_dep kio)
+       $(add_frameworks_dep kitemviews)
+       $(add_frameworks_dep kjobwidgets)
+       $(add_frameworks_dep kjs)
+       $(add_frameworks_dep kjsembed)
+       $(add_frameworks_dep knewstuff)
+       $(add_frameworks_dep knotifications)
+       $(add_frameworks_dep knotifyconfig)
+       $(add_frameworks_dep kpackage)
+       $(add_frameworks_dep krunner)
+       $(add_frameworks_dep kservice)
+       $(add_frameworks_dep ktexteditor)
+       $(add_frameworks_dep ktextwidgets)
+       $(add_frameworks_dep kwallet)
+       $(add_frameworks_dep kwayland)
+       $(add_frameworks_dep kwidgetsaddons)
+       $(add_frameworks_dep kwindowsystem)
+       $(add_frameworks_dep kxmlgui)
+       $(add_frameworks_dep kxmlrpcclient)
+       $(add_frameworks_dep plasma)
+       $(add_frameworks_dep solid)
+       $(add_plasma_dep kscreenlocker)
+       $(add_plasma_dep kwin)
+       $(add_plasma_dep libksysguard)
+       $(add_qt_dep qtconcurrent)
+       $(add_qt_dep qtdbus)
+       $(add_qt_dep qtdeclarative 'widgets')
+       $(add_qt_dep qtgui 'jpeg')
+       $(add_qt_dep qtnetwork)
+       $(add_qt_dep qtscript)
+       $(add_qt_dep qtsql)
+       $(add_qt_dep qtwidgets)
+       $(add_qt_dep qtx11extras)
+       $(add_qt_dep qtxml)
+       dev-libs/libdbusmenu-qt[qt5]
+       media-libs/phonon[qt5]
+       sys-libs/zlib
+       x11-libs/libICE
+       x11-libs/libSM
+       x11-libs/libX11
+       x11-libs/libXau
+       x11-libs/libxcb
+       x11-libs/libXfixes
+       x11-libs/libXrender
+       x11-libs/xcb-util
+       x11-libs/xcb-util-image
+       geolocation? ( $(add_frameworks_dep networkmanager-qt) )
+       gps? ( sci-geosciences/gpsd )
+       prison? ( media-libs/prison:5 )
+       qalculate? ( sci-libs/libqalculate )
+"
+RDEPEND="${COMMON_DEPEND}
+       $(add_frameworks_dep kded)
+       $(add_kdeapps_dep kio-extras)
+       $(add_plasma_dep kde-cli-tools)
+       $(add_plasma_dep ksysguard)
+       $(add_plasma_dep milou)
+       $(add_qt_dep qdbus)
+       $(add_qt_dep qtgraphicaleffects)
+       $(add_qt_dep qtpaths)
+       $(add_qt_dep qtquickcontrols 'widgets')
+       app-text/iso-codes
+       x11-apps/mkfontdir
+       x11-apps/xmessage
+       x11-apps/xprop
+       x11-apps/xrdb
+       x11-apps/xset
+       x11-apps/xsetroot
+       !dev-libs/xembed-sni-proxy
+       !kde-base/freespacenotifier:4
+       !kde-base/libtaskmanager:4
+       !kde-base/kcminit:4
+       !kde-base/kdebase-startkde:4
+       !kde-base/klipper:4
+       !kde-base/krunner:4
+       !kde-base/ksmserver:4
+       !kde-base/ksplash:4
+       !kde-base/plasma-workspace:4
+"
+DEPEND="${COMMON_DEPEND}
+       x11-proto/xproto
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-5.4-startkde-script.patch"
+       "${FILESDIR}/${PN}-5.6.0-rpath.patch"
+       "${FILESDIR}/${PN}-5.6.5-drop-kscreen-dep.patch"
+       "${FILESDIR}/${PN}-5.6.5.1-struts.patch"
+)
+
+RESTRICT="test"
+
+S=${WORKDIR}/${PN}-5.6.5
+
+src_prepare() {
+       kde5_src_prepare
+
+       sed -e "s|\`qtpaths|\`$(qt5_get_bindir)/qtpaths|" \
+               -i startkde/startkde.cmake startkde/startplasmacompositor.cmake 
|| die
+}
+
+src_configure() {
+       local mycmakeargs=(
+               $(cmake-utils_use_find_package geolocation KF5NetworkManagerQt)
+               $(cmake-utils_use_find_package gps libgps)
+               $(cmake-utils_use_find_package prison KF5Prison)
+               $(cmake-utils_use_find_package qalculate Qalculate)
+       )
+
+       kde5_src_configure
+}
+
+src_install() {
+       kde5_src_install
+
+       # startup and shutdown scripts
+       insinto /etc/plasma/startup
+       doins "${FILESDIR}/10-agent-startup.sh"
+
+       insinto /etc/plasma/shutdown
+       doins "${FILESDIR}/10-agent-shutdown.sh"
+}
+
+pkg_postinst () {
+       kde5_pkg_postinst
+
+       echo
+       elog "To enable gpg-agent and/or ssh-agent in Plasma sessions,"
+       elog "edit ${EPREFIX}/etc/plasma/startup/10-agent-startup.sh and"
+       elog "${EPREFIX}/etc/plasma/shutdown/10-agent-shutdown.sh"
+       echo
+}

Reply via email to