diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2020-06-21 21:28:52 +0200 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2020-06-23 15:48:42 +0200 |
commit | 716cd557d1c6758781b45469fe0df34f393c0164 (patch) | |
tree | 32c4e0d6dbf70278dddf313df78e97cac2e4b995 | |
parent | kde-frameworks/plasma: plasma-nm [1/2]: Fix password is asked twice (diff) | |
download | gentoo-716cd557d1c6758781b45469fe0df34f393c0164.tar.gz gentoo-716cd557d1c6758781b45469fe0df34f393c0164.tar.bz2 gentoo-716cd557d1c6758781b45469fe0df34f393c0164.zip |
kde-frameworks/plasma: systray [1/4]: Fix unreadable text w/ Breeze Dark
See also: https://mail.kde.org/pipermail/distributions/2020-June/000368.html
KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=422684
Upstream commit e1475e090747088288b05279633d19f12ae257aa
"Introduce PlaceholderMessage"
Package-Manager: Portage-2.3.101, Repoman-2.3.22
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r-- | kde-frameworks/plasma/files/plasma-5.71.0-introduce-PlaceholderMessage.patch | 280 | ||||
-rw-r--r-- | kde-frameworks/plasma/plasma-5.71.0-r1.ebuild | 1 |
2 files changed, 281 insertions, 0 deletions
diff --git a/kde-frameworks/plasma/files/plasma-5.71.0-introduce-PlaceholderMessage.patch b/kde-frameworks/plasma/files/plasma-5.71.0-introduce-PlaceholderMessage.patch new file mode 100644 index 000000000000..4255d235d1a6 --- /dev/null +++ b/kde-frameworks/plasma/files/plasma-5.71.0-introduce-PlaceholderMessage.patch @@ -0,0 +1,280 @@ +From e1475e090747088288b05279633d19f12ae257aa Mon Sep 17 00:00:00 2001 +From: Nate Graham <nate@kde.org> +Date: Fri, 19 Jun 2020 22:45:19 +0000 +Subject: [PATCH] Introduce PlaceholderMessage + +This is a clone of the Kirigami component that we can use in Plasma +applets until we arrive at a solution for styling QQC2 items using the +Plasma style (https://phabricator.kde.org/T13256). + +See dependent patches: +- plasma-workspace: https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/73 +- bluedevil: https://invent.kde.org/plasma/bluedevil/-/merge_requests/1 +- print-manager: https://invent.kde.org/utilities/print-manager/-/merge_requests/1 +- plasma-vault: https://invent.kde.org/plasma/plasma-vault/-/merge_requests/3 + +Merge request: https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/13 +--- + .../qml/PlaceholderMessage.qml | 237 ++++++++++++++++++ + .../plasmaextracomponents/qml/qmldir | 1 + + 2 files changed, 238 insertions(+) + create mode 100644 src/declarativeimports/plasmaextracomponents/qml/PlaceholderMessage.qml + +diff --git a/src/declarativeimports/plasmaextracomponents/qml/PlaceholderMessage.qml b/src/declarativeimports/plasmaextracomponents/qml/PlaceholderMessage.qml +new file mode 100644 +index 000000000..958399a8f +--- /dev/null ++++ b/src/declarativeimports/plasmaextracomponents/qml/PlaceholderMessage.qml +@@ -0,0 +1,237 @@ ++/* ++ * Copyright 2020 Nate Graham <nate@kde.org> ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU Library General Public License as ++ * published by the Free Software Foundation; either version 2, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU Library General Public License for more details ++ * ++ * You should have received a copy of the GNU Library General Public ++ * License along with this program; if not, write to the ++ * Free Software Foundation, Inc., ++ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ */ ++ ++import QtQuick 2.0 ++import QtQuick.Layouts 1.12 ++import QtQuick.Controls 2.12 as QQC2 ++ ++import org.kde.plasma.core 2.0 as PlasmaCore ++import org.kde.plasma.components 3.0 as PlasmaComponents3 ++import org.kde.plasma.extras 2.0 as PlasmaExtras ++ ++/** ++ * A placeholder message indicating that a list view is empty. The message ++ * comprises a label with lightened text, an optional icon above the text, and ++ * an optional button below the text which can be used to easily show the user ++ * what to do next to add content to the view. ++ * ++ * The top-level component is a ColumnLayout, so additional components items can ++ * simply be added as child items and they will be positioned sanely. ++ * ++ * Example usage: ++ * ++ * @code{.qml} ++ ** Shows how to use PlaceholderMessage to implement a "this view is empty" message ++ * import QtQuick 2.12 ++ * import org.kde.plasma.extras 2.0 as PlasmaExtras ++ * ++ * ListView { ++ * id: listView ++ * model: [...] ++ * delegate: [...] ++ * ++ * PlasmaExtras.PlaceholderMessage { ++ * anchors.centerIn: parent ++ * width: parent.width - (units.largeSpacing * 4) ++ * ++ * visible: listView.count == 0 ++ * ++ * text: "There are no items in this list" ++ * } ++ * } ++ * @endcode ++ * @code{.qml} ++ ** Shows how to use PlaceholderMessage to implement a "here's how to proceed" message ++ * import QtQuick 2.12 ++ * import QtQuick.Controls 2.12 as QQC2 ++ * import org.kde.plasma.extras 2.0 as PlasmaExtras ++ * ++ * ListView { ++ * id: listView ++ * model: [...] ++ * delegate: [...] ++ * ++ * PlasmaExtras.PlaceholderMessage { ++ * anchors.centerIn: parent ++ * width: parent.width - (units.largeSpacing * 4) ++ * ++ * visible: listView.count == 0 ++ * ++ * text: "Add an item to proceed" ++ * ++ * helpfulAction: QQC2.Action { ++ * icon.name: "list-add" ++ * text: "Add item..." ++ * onTriggered: { ++ * [...] ++ * } ++ * } ++ * } ++ * [...] ++ * } ++ * @endcode ++ * @code{.qml} ++ ** Shows how to use PlaceholderMessage to implement a "there was a problem here" message ++ * import org.kde.plasma.components 3.0 as PlasmaComponents3 ++ * import org.kde.plasma.extras 2.0 as PlasmaExtras ++ * ++ * PlasmaComponents3.Page { ++ * id: root ++ * readonly property bool networkConnected: [...] ++ * ++ * PlasmaExtras.PlaceholderMessage { ++ * anchors.centerIn: parent ++ * width: parent.width - (units.largeSpacing * 4) ++ * ++ * visible: root.networkConnected ++ * ++ * icon.name: "network-disconnect" ++ * text: "Network disconnected; unable to load content" ++ * } ++ * } ++ * @endcode ++ * @code{.qml} ++ * import org.kde.plasma.components 3.0 as PlasmaComponents3 ++ * import org.kde.plasma.extras 2.0 as PlasmaExtras ++ * ++ ** Shows how to use PlaceholderMessage to implement a loading indicator ++ * PlasmaComponents3.Page { ++ * id: root ++ * readonly property bool loading: [...] ++ * readonly property int completionStatus: [...] ++ * ++ * PlasmaExtras.PlaceholderMessage { ++ * anchors.centerIn: parent ++ * width: parent.width - (units.largeSpacing * 4) ++ * ++ * visible: root.loading ++ * ++ * icon.name: "my-awesome-app-icon" ++ * text: "Loading this awesome app" ++ * ++ * PlasmaComponents3.ProgressBar { ++ * Layout.preferredWidth: units.gridUnit * 20 ++ * value: root.completionStatus ++ * from: 0 ++ * to: 100 ++ * } ++ * } ++ * } ++ * @endcode ++ * @code{.qml} ++ * import QtQuick.Controls 2.12 as QQC2 ++ * import org.kde.plasma.components 3.0 as PlasmaComponents3 ++ * import org.kde.plasma.extras 2.0 as PlasmaExtras ++ * ++ ** Shows how to use PlaceholderMessage to implement a "Here's what you do next" button ++ * PlasmaComponents3.Page { ++ * id: root ++ * ++ * PlasmaExtras.PlaceholderMessage { ++ * anchors.centerIn: parent ++ * width: parent.width - (units.largeSpacing * 4) ++ * ++ * visible: root.loading ++ * ++ * helpfulAction: QQC2.Action { ++ * icon.name: "list-add" ++ * text: "Add item..." ++ * onTriggered: { ++ * [...] ++ * } ++ * } ++ * } ++ * } ++ * @endcode ++ * @since 5.72 ++ */ ++ColumnLayout { ++ id: root ++ ++ /** ++ * text: string ++ * The text to show as a placeholder label ++ * ++ * Optional. Not setting any text is useful when you only want to display ++ * an icon, action button, and/or other custom content ++ * ++ * @since 5.72 ++ */ ++ property alias text: label.text ++ ++ /** ++ * iconName: string ++ * The icon to show above the text label. ++ * ++ * Optional ++ * Falls back to `undefined` if the specified icon is not valid or cannot ++ * be loaded. ++ * ++ * @since 5.72 ++ * @see Icon::source ++ */ ++ property string iconName: string ++ ++ /** ++ * helpfulAction: QtQuickControls2 Action ++ * An action that helps the user proceed. Typically used to guide the user ++ * to the next step for adding content or items to an empty view. ++ * ++ * Optional ++ * ++ * @since 5.72 ++ */ ++ property alias helpfulAction: actionButton.action ++ ++ spacing: units.largeSpacing ++ ++ PlasmaCore.IconItem { ++ visible: source != undefined ++ opacity: 0.5 ++ ++ Layout.alignment: Qt.AlignHCenter ++ Layout.preferredWidth: units.iconSizes.huge ++ Layout.preferredHeight: units.iconSizes.huge ++ ++ source: root.iconName || null ++ } ++ ++ PlasmaExtras.Heading { ++ id: label ++ ++ visible: text.length > 0 ++ opacity: 0.5 ++ ++ Layout.fillWidth: true ++ Layout.alignment: Qt.AlignHCenter ++ horizontalAlignment: Qt.AlignHCenter ++ ++ level: 2 ++ ++ wrapMode: Text.WordWrap ++ } ++ ++ PlasmaComponents3.Button { ++ id: actionButton ++ ++ Layout.alignment: Qt.AlignHCenter ++ ++ visible: action && action.enabled ++ } ++} +diff --git a/src/declarativeimports/plasmaextracomponents/qml/qmldir b/src/declarativeimports/plasmaextracomponents/qml/qmldir +index 4ba4ed7b7..6eb4af8a9 100644 +--- a/src/declarativeimports/plasmaextracomponents/qml/qmldir ++++ b/src/declarativeimports/plasmaextracomponents/qml/qmldir +@@ -7,6 +7,7 @@ ExpandableListItem 2.0 ExpandableListItem.qml + Heading 2.0 Heading.qml + Paragraph 2.0 Paragraph.qml + PageRow 2.0 PageRow.qml ++PlaceholderMessage 2.0 PlaceholderMessage.qml + ScrollArea 2.0 ScrollArea.qml + Title 2.0 Title.qml + DescriptiveLabel 2.0 DescriptiveLabel.qml +-- +2.27.0 + diff --git a/kde-frameworks/plasma/plasma-5.71.0-r1.ebuild b/kde-frameworks/plasma/plasma-5.71.0-r1.ebuild index 1a711a9450d2..a088f837b6bd 100644 --- a/kde-frameworks/plasma/plasma-5.71.0-r1.ebuild +++ b/kde-frameworks/plasma/plasma-5.71.0-r1.ebuild @@ -63,6 +63,7 @@ RESTRICT+=" test" PATCHES=( "${FILESDIR}"/${P}-access-expandedView.item.patch # KDE-bug #423093 + "${FILESDIR}"/${P}-introduce-PlaceholderMessage.patch # KDE-bug #422684 ) src_configure() { |