summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2021-05-09 01:55:08 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2021-05-09 14:10:06 +0200
commita5c6ed122106a580cbf555655678f6d91440beb7 (patch)
treeb7c601599ad89886fac29d9fb2d9fd8966b41117
parentkde-plasma/plasma-browser-integration: 5.21.5 version bump (diff)
downloadgentoo-a5c6ed122106a580cbf555655678f6d91440beb7.tar.gz
gentoo-a5c6ed122106a580cbf555655678f6d91440beb7.tar.bz2
gentoo-a5c6ed122106a580cbf555655678f6d91440beb7.zip
kde-plasma/plasma-desktop: 5.21.5 version bump
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--kde-plasma/plasma-desktop/Manifest1
-rw-r--r--kde-plasma/plasma-desktop/files/plasma-desktop-5.21.5-transparency.patch239
-rw-r--r--kde-plasma/plasma-desktop/plasma-desktop-5.21.5.ebuild178
3 files changed, 418 insertions, 0 deletions
diff --git a/kde-plasma/plasma-desktop/Manifest b/kde-plasma/plasma-desktop/Manifest
index 400a778bcae2..1129f27fdd43 100644
--- a/kde-plasma/plasma-desktop/Manifest
+++ b/kde-plasma/plasma-desktop/Manifest
@@ -1,3 +1,4 @@
DIST plasma-desktop-5.20.5.tar.xz 15899532 BLAKE2B 1ed7d6c1bbc8b368ed98c4f35bcfd10f8436909a8f66fbfdf2e4e5eb8b8dcd36903600a934512dac7a07d54ef830ed2604e1ee39df6e40156ef7cec1e96dd041 SHA512 a1af8d04dbf16e94777e018ff0f289b69928ccefeb31e6dc73a2425d6170a0a5a3fdc324d192b41664cd118eea9b15cb6e7bd3f49ee03095ede16a3fa53a6f2b
DIST plasma-desktop-5.21.4.tar.xz 15914768 BLAKE2B e816775c1c6aba4d94db1c56f4298a43c488d720d0b84b7e1da63020a7f40e4cd9a034ce570f7b2f691194200bcccabed5b1ed029721787c238f2664968cb891 SHA512 91cce61b1c685266eb53a34f6533a95d092901280e48ed6ed8364a9b9f6d32594a1d5209fc52295e1c2ecdec40f39959dd332fa61cd914c0199d1e81b9596dd3
+DIST plasma-desktop-5.21.5.tar.xz 15913496 BLAKE2B 6923a4c48d20f2611ab92ec34517a339a4fbc53875545beb5c33700933262f67b48b22ea311812d7b0cd4a169a4b19f497c0cd559c5b5f74e52410e30c187ec7 SHA512 40814910676a05d3d5a308a432c06ce9664b90724fe8c56c4f68f6eb939f35401f19dddb8c46006f44fa418e0f18b4a42b0ff78b5b07031f54e6b3c10c919e57
DIST plasma-desktop-override-include-dirs-0.tar.xz 7504 BLAKE2B 781a2f0f7ca5a45b966edfc79012e80c6826262a211d95b725590191a8828e0002fd924a49cc63c12090535077a24f3e719ca3277aac89aba3092e86f73d7f61 SHA512 d23dc203b8b645472c9c192a3d73ef9b46c66d9c64df1c90efa05c9968ec125e0a256bc9b654f05a1f22bce4b1d8aad436f581b42d579f4195a44f062fd444bb
diff --git a/kde-plasma/plasma-desktop/files/plasma-desktop-5.21.5-transparency.patch b/kde-plasma/plasma-desktop/files/plasma-desktop-5.21.5-transparency.patch
new file mode 100644
index 000000000000..3066d3a2747b
--- /dev/null
+++ b/kde-plasma/plasma-desktop/files/plasma-desktop-5.21.5-transparency.patch
@@ -0,0 +1,239 @@
+From 6fb37dc0260c298bc35ec5e39399aa1f31693e79 Mon Sep 17 00:00:00 2001
+From: Carson Black <uhhadd@gmail.com>
+Date: Thu, 6 Aug 2020 11:58:23 +0200
+Subject: [PATCH] Implement adaptive opacity for panels
+
+---
+ .../contents/applet/CompactApplet.qml | 1 +
+ .../panelconfiguration/MoreSettingsMenu.qml | 35 +++++
+ desktoppackage/contents/views/Panel.qml | 144 +++++++++++++++++-
+ 3 files changed, 174 insertions(+), 6 deletions(-)
+
+diff --git a/desktoppackage/contents/applet/CompactApplet.qml b/desktoppackage/contents/applet/CompactApplet.qml
+index 0d4c85f52..65eb0468e 100644
+--- a/desktoppackage/contents/applet/CompactApplet.qml
++++ b/desktoppackage/contents/applet/CompactApplet.qml
+@@ -153,6 +153,7 @@ PlasmaCore.ToolTipArea {
+ visualParent: compactRepresentation ? compactRepresentation : null
+ location: plasmoid.location
+ hideOnWindowDeactivate: plasmoid.hideOnWindowDeactivate
++ backgroundHints: (plasmoid.containmentDisplayHints & PlasmaCore.Types.DesktopFullyCovered) ? PlasmaCore.Dialog.SolidBackground : PlasmaCore.Dialog.StandardBackground
+
+ property var oldStatus: PlasmaCore.Types.UnknownStatus
+
+diff --git a/desktoppackage/contents/configuration/panelconfiguration/MoreSettingsMenu.qml b/desktoppackage/contents/configuration/panelconfiguration/MoreSettingsMenu.qml
+index 2e577fbcc..d668eb3c2 100644
+--- a/desktoppackage/contents/configuration/panelconfiguration/MoreSettingsMenu.qml
++++ b/desktoppackage/contents/configuration/panelconfiguration/MoreSettingsMenu.qml
+@@ -131,6 +131,41 @@ PlasmaCore.Dialog {
+ flat: false
+ }
+ }
++ PlasmaExtras.Heading {
++ level: 3
++ text: i18nd("plasma_shell_org.kde.plasma.desktop", "Opacity")
++ visible: panel.adaptiveOpacityEnabled
++ }
++ PlasmaComponents.ButtonColumn {
++ spacing: 0
++ visible: panel.adaptiveOpacityEnabled
++ Layout.fillWidth: true
++ Layout.minimumWidth: implicitWidth
++ PlasmaComponents.ToolButton {
++ width: Math.max(implicitWidth, parent.width)
++ text: i18nd("plasma_shell_org.kde.plasma.desktop", "Adaptive")
++ checkable: true
++ checked: configDialog.opacityMode === 0
++ onClicked: configDialog.opacityMode = 0
++ flat: false
++ }
++ PlasmaComponents.ToolButton {
++ width: Math.max(implicitWidth, parent.width)
++ text: i18nd("plasma_shell_org.kde.plasma.desktop", "Opaque")
++ checkable: true
++ checked: configDialog.opacityMode === 1
++ onClicked: configDialog.opacityMode = 1
++ flat: false
++ }
++ PlasmaComponents.ToolButton {
++ width: Math.max(implicitWidth, parent.width)
++ text: i18nd("plasma_shell_org.kde.plasma.desktop", "Translucent")
++ checkable: true
++ checked: configDialog.opacityMode === 2
++ onClicked: configDialog.opacityMode = 2
++ flat: false
++ }
++ }
+ PlasmaComponents.ToolButton {
+ Layout.fillWidth: true
+ text: i18nd("plasma_shell_org.kde.plasma.desktop", "Maximize Panel")
+diff --git a/desktoppackage/contents/views/Panel.qml b/desktoppackage/contents/views/Panel.qml
+index 2fd6ac4d5..cf6c04328 100644
+--- a/desktoppackage/contents/views/Panel.qml
++++ b/desktoppackage/contents/views/Panel.qml
+@@ -21,17 +21,27 @@ import QtQuick.Layouts 1.1
+ import QtQml 2.15
+
+ import org.kde.plasma.core 2.0 as PlasmaCore
++import org.kde.taskmanager 0.1 as TaskManager
+
+-PlasmaCore.FrameSvgItem {
++Item {
+ id: root
+
+- imagePath: containment && containment.backgroundHints === PlasmaCore.Types.NoBackground ? "" : "widgets/panel-background"
+-
+- enabledBorders: panel.enabledBorders
+-
+ property Item containment
+
+- property alias panelMask: root.mask
++ property alias panelMask: privateSwapper.mask
++
++ QtObject {
++ id: privateSwapper
++ property string completedState: ""
++ // Work around the fact that we can't use a ternary if in an alias
++ readonly property var mask: {
++ if (completedState == "opaque") {
++ return opaqueItem.mask
++ } else {
++ return translucentItem.mask
++ }
++ }
++ }
+
+ readonly property bool verticalPanel: containment && containment.formFactor === PlasmaCore.Types.Vertical
+
+@@ -47,6 +57,128 @@ PlasmaCore.FrameSvgItem {
+ readonly property int leftPadding: Math.round(Math.min(thickPanelSvg.fixedMargins.left, spacingAtMinSize));
+ readonly property int rightPadding: Math.round(Math.min(thickPanelSvg.fixedMargins.right, spacingAtMinSize));
+
++ TaskManager.VirtualDesktopInfo {
++ id: virtualDesktopInfo
++ }
++
++ TaskManager.ActivityInfo {
++ id: activityInfo
++ }
++
++ PlasmaCore.SortFilterModel {
++ id: visibleWindowsModel
++ filterRole: 'IsMinimized'
++ filterRegExp: 'false'
++ sourceModel: TaskManager.TasksModel {
++ filterByVirtualDesktop: true
++ filterByActivity: true
++ filterNotMaximized: true
++ filterByScreen: true
++
++ screenGeometry: panel.screenGeometry
++ virtualDesktop: virtualDesktopInfo.currentDesktop
++ activity: activityInfo.currentActivity
++
++ id: tasksModel
++ groupMode: TaskManager.TasksModel.GroupDisabled
++ }
++ }
++
++ PlasmaCore.FrameSvgItem {
++ id: translucentItem
++ enabledBorders: panel.enabledBorders
++ anchors.fill: parent
++
++ imagePath: containment && containment.backgroundHints === PlasmaCore.Types.NoBackground ? "" : "widgets/panel-background"
++ }
++
++ PlasmaCore.FrameSvgItem {
++ id: opaqueItem
++ enabledBorders: panel.enabledBorders
++ anchors.fill: parent
++
++ imagePath: containment && containment.backgroundHints === PlasmaCore.Types.NoBackground ? "" : "solid/widgets/panel-background"
++ }
++
++ transitions: [
++ Transition {
++ from: "*"
++ to: "transparent"
++ SequentialAnimation {
++ ScriptAction {
++ script: {
++ translucentItem.visible = true
++ }
++ }
++ NumberAnimation {
++ target: opaqueItem
++ properties: "opacity"
++ from: 1
++ to: 0
++ duration: units.veryLongDuration
++ easing.type: Easing.InOutQuad
++ }
++ ScriptAction {
++ script: {
++ opaqueItem.visible = false
++ privateSwapper.completedState = "transparent"
++ root.panelMaskChanged()
++ }
++ }
++ }
++ },
++ Transition {
++ from: "*"
++ to: "opaque"
++ SequentialAnimation {
++ ScriptAction {
++ script: {
++ opaqueItem.visible = true
++ }
++ }
++ NumberAnimation {
++ target: opaqueItem
++ properties: "opacity"
++ from: 0
++ to: 1
++ duration: units.veryLongDuration
++ easing.type: Easing.InOutQuad
++ }
++ ScriptAction {
++ script: {
++ translucentItem.visible = false
++ privateSwapper.completedState = "opaque"
++ root.panelMaskChanged()
++ }
++ }
++ }
++ }
++ ]
++
++ Component.onCompleted: {
++ state = Qt.binding(function() {
++ let mstate = '';
++ if (panel.opacityMode == 0) {
++ mstate = visibleWindowsModel.count > 0 ? "opaque" : "transparent"
++ } else if (panel.opacityMode == 1) {
++ mstate = "opaque"
++ } else {
++ mstate = "transparent"
++ }
++ if (mstate == 'opaque') {
++ containment.containmentDisplayHints |= PlasmaCore.Types.DesktopFullyCovered;
++ } else {
++ containment.containmentDisplayHints &= ~PlasmaCore.Types.DesktopFullyCovered;
++ }
++ return mstate;
++ })
++ }
++ state: ""
++ states: [
++ State { name: "opaque" },
++ State { name: "transparent" }
++ ]
++
+ function adjustPrefix() {
+ if (!containment) {
+ return "";
+--
+GitLab
+
diff --git a/kde-plasma/plasma-desktop/plasma-desktop-5.21.5.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-5.21.5.ebuild
new file mode 100644
index 000000000000..68705edda325
--- /dev/null
+++ b/kde-plasma/plasma-desktop/plasma-desktop-5.21.5.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_HANDBOOK="forceoptional"
+ECM_TEST="true"
+KFMIN=5.82.0
+PVCUT=$(ver_cut 1-3)
+QTMIN=5.15.2
+VIRTUALX_REQUIRED="test"
+inherit ecm kde.org optfeature
+
+DESCRIPTION="KDE Plasma desktop"
+XORGHDRS="${PN}-override-include-dirs-0"
+SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${XORGHDRS}.tar.xz"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="emoji ibus +kaccounts +policykit scim +semantic-desktop"
+
+COMMON_DEPEND="
+ >=dev-qt/qtconcurrent-${QTMIN}:5
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtprintsupport-${QTMIN}:5
+ >=dev-qt/qtsql-${QTMIN}:5
+ >=dev-qt/qtsvg-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtx11extras-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=kde-frameworks/attica-${KFMIN}:5
+ >=kde-frameworks/kactivities-${KFMIN}:5
+ >=kde-frameworks/kactivities-stats-${KFMIN}:5
+ >=kde-frameworks/karchive-${KFMIN}:5
+ >=kde-frameworks/kauth-${KFMIN}:5
+ >=kde-frameworks/kbookmarks-${KFMIN}:5
+ >=kde-frameworks/kcmutils-${KFMIN}:5
+ >=kde-frameworks/kcodecs-${KFMIN}:5
+ >=kde-frameworks/kcompletion-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kdbusaddons-${KFMIN}:5
+ >=kde-frameworks/kdeclarative-${KFMIN}:5
+ >=kde-frameworks/kded-${KFMIN}:5
+ >=kde-frameworks/kdelibs4support-${KFMIN}:5
+ >=kde-frameworks/kglobalaccel-${KFMIN}:5
+ >=kde-frameworks/kguiaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kitemmodels-${KFMIN}:5
+ >=kde-frameworks/kitemviews-${KFMIN}:5
+ >=kde-frameworks/kjobwidgets-${KFMIN}:5
+ >=kde-frameworks/knewstuff-${KFMIN}:5
+ >=kde-frameworks/knotifications-${KFMIN}:5
+ >=kde-frameworks/knotifyconfig-${KFMIN}:5
+ >=kde-frameworks/kparts-${KFMIN}:5
+ >=kde-frameworks/krunner-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ >=kde-frameworks/plasma-${KFMIN}:5
+ >=kde-frameworks/solid-${KFMIN}:5
+ >=kde-frameworks/sonnet-${KFMIN}:5
+ >=kde-plasma/kwin-${PVCUT}:5
+ >=kde-plasma/libksysguard-${PVCUT}:5
+ >=kde-plasma/libkworkspace-${PVCUT}:5
+ >=kde-plasma/plasma-workspace-${PVCUT}:5
+ >=media-libs/phonon-4.11.0
+ x11-libs/libX11
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libxcb[xkb]
+ x11-libs/libxkbfile
+ emoji? (
+ app-i18n/ibus[emoji]
+ dev-libs/glib:2
+ media-fonts/noto-emoji
+ )
+ ibus? (
+ app-i18n/ibus
+ dev-libs/glib:2
+ >=dev-qt/qtx11extras-${QTMIN}:5
+ x11-libs/libxcb
+ x11-libs/xcb-util-keysyms
+ )
+ kaccounts? (
+ kde-apps/kaccounts-integration:5
+ net-libs/accounts-qt
+ )
+ policykit? ( >=kde-frameworks/kwallet-${KFMIN}:5 )
+ scim? ( app-i18n/scim )
+ semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:5 )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/boost
+ x11-base/xorg-proto
+"
+RDEPEND="${COMMON_DEPEND}
+ !kde-plasma/user-manager
+ >=dev-qt/qtgraphicaleffects-${QTMIN}:5
+ >=dev-qt/qtquickcontrols2-${QTMIN}:5
+ >=kde-frameworks/kirigami-${KFMIN}:5
+ >=kde-frameworks/qqc2-desktop-style-${KFMIN}:5
+ >=kde-plasma/kde-cli-tools-${PVCUT}:5
+ >=kde-plasma/oxygen-${PVCUT}:5
+ sys-apps/util-linux
+ x11-apps/setxkbmap
+ kaccounts? ( net-libs/signon-oauth2 )
+ policykit? ( sys-apps/accountsservice )
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${WORKDIR}/${XORGHDRS}/override-include-dirs.patch" # downstream patch
+ "${FILESDIR}/${P}-transparency.patch" # KDE-bug 434202
+)
+
+src_prepare() {
+ ecm_src_prepare
+
+ if ! use policykit; then
+ ecm_punt_bogus_dep KF5 Wallet
+ cmake_run_in kcms cmake_comment_add_subdirectory users
+ fi
+
+ if ! use ibus; then
+ sed -e "s/Qt5X11Extras_FOUND AND XCB_XCB_FOUND AND XCB_KEYSYMS_FOUND/false/" \
+ -i applets/kimpanel/backend/ibus/CMakeLists.txt || die
+ fi
+
+ use emoji || cmake_run_in applets/kimpanel/backend/ibus \
+ cmake_comment_add_subdirectory emojier
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt5=ON # not packaged
+ -DEvdev_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DXORGSERVER_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ -DSynaptics_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
+ $(cmake_use_find_package kaccounts AccountsQt5)
+ $(cmake_use_find_package kaccounts KAccounts)
+ $(cmake_use_find_package scim SCIM)
+ $(cmake_use_find_package semantic-desktop KF5Baloo)
+ )
+ if ! use emoji && ! use ibus; then
+ mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_IBus=ON )
+ fi
+
+ ecm_src_configure
+}
+
+src_test() {
+ # parallel tests fail, foldermodeltest,positionertest hang, bug #646890
+ # test_kio_fonts needs D-Bus, bug #634166
+ # lookandfeel-kcmTest is unreliable for a long time, bug #607918
+ local myctestargs=(
+ -j1
+ -E "(foldermodeltest|positionertest|test_kio_fonts|lookandfeel-kcmTest)"
+ )
+
+ ecm_src_test
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ optfeature "screen reader support" app-accessibility/orca
+ fi
+ ecm_pkg_postinst
+}