From ed3472b11f9f9f94a444f291afe02037b2a9741f Mon Sep 17 00:00:00 2001 From: Michail Vourlakos Date: Fri, 1 May 2020 12:19:29 +0300 Subject: [PATCH] make Metrics.Fractions as private property --- .../package/contents/ui/abilities/Metrics.qml | 32 +---------- .../ui/abilities/privates/MetricsPrivate.qml | 57 +++++++++++++++++++ .../abilities/privates}/metrics/Fraction.qml | 0 .../abilities/applets/Metrics.qml | 1 - .../abilities/containers/Metrics.qml | 1 - .../abilities/definitions/Metrics.qml | 1 - 6 files changed, 59 insertions(+), 33 deletions(-) create mode 100644 containment/package/contents/ui/abilities/privates/MetricsPrivate.qml rename {declarativeimports/abilities/definitions => containment/package/contents/ui/abilities/privates}/metrics/Fraction.qml (100%) diff --git a/containment/package/contents/ui/abilities/Metrics.qml b/containment/package/contents/ui/abilities/Metrics.qml index c4fda9f37..38ae98555 100644 --- a/containment/package/contents/ui/abilities/Metrics.qml +++ b/containment/package/contents/ui/abilities/Metrics.qml @@ -20,41 +20,13 @@ import QtQuick 2.7 import org.kde.plasma.plasmoid 2.0 -import org.kde.latte.abilities.containers 0.1 as ContainerAbility - -ContainerAbility.Metrics { - id: mets - property Item animations: null - property Item autosize: null +import "./privates" as AbilityPrivate +AbilityPrivate.MetricsPrivate { //! Signals signal iconSizeAnimationEnded(); //! Public Properties iconSize: autosizeEnabled && autosize.iconSize > 0 ? Math.min(autosize.iconSize, maxIconSize) : maxIconSize maxIconSize: portionIconSize!==-1 ? portionIconSize : plasmoid.configuration.iconSize - - //! Private Properties - readonly property int portionIconSize: { //icon size based on screen height - if ((plasmoid.configuration.proportionIconSize===-1) || !latteView) - return -1; - - return Math.max(16,Math.round(latteView.screenGeometry.height * plasmoid.configuration.proportionIconSize/100/8)*8); - } - - readonly property bool autosizeEnabled: autosize !== undefined && autosize.isActive - - //! Behaviors - Behavior on iconSize { - enabled: !(root.editMode && root.behaveAsPlasmaPanel) - NumberAnimation { - duration: 0.8 * animations.duration.proposed - - onRunningChanged: { - if (!running) { - mets.iconSizeAnimationEnded(); - } - } - } - } } diff --git a/containment/package/contents/ui/abilities/privates/MetricsPrivate.qml b/containment/package/contents/ui/abilities/privates/MetricsPrivate.qml new file mode 100644 index 000000000..d3f67d2c4 --- /dev/null +++ b/containment/package/contents/ui/abilities/privates/MetricsPrivate.qml @@ -0,0 +1,57 @@ +/* +* Copyright 2020 Michail Vourlakos +* +* This file is part of Latte-Dock +* +* Latte-Dock is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License, or (at your option) any later version. +* +* Latte-Dock 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 General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see . +*/ + +import QtQuick 2.7 +import org.kde.plasma.plasmoid 2.0 + +import org.kde.latte.abilities.containers 0.1 as ContainerAbility + +import "./metrics" as MetricsPrivateTypes + +ContainerAbility.Metrics { + id: mets + property Item animations: null + property Item autosize: null + + //! Private Properties + readonly property int portionIconSize: { //icon size based on screen height + if ((plasmoid.configuration.proportionIconSize===-1) || !latteView) + return -1; + + return Math.max(16,Math.round(latteView.screenGeometry.height * plasmoid.configuration.proportionIconSize/100/8)*8); + } + + readonly property bool autosizeEnabled: autosize !== undefined && autosize.isActive + + readonly property MetricsPrivateTypes.Fraction fraction: MetricsPrivateTypes.Fraction{} + + //! Behaviors + Behavior on iconSize { + enabled: !(root.editMode && root.behaveAsPlasmaPanel) + NumberAnimation { + duration: 0.8 * animations.duration.proposed + + onRunningChanged: { + if (!running) { + mets.iconSizeAnimationEnded(); + } + } + } + } +} diff --git a/declarativeimports/abilities/definitions/metrics/Fraction.qml b/containment/package/contents/ui/abilities/privates/metrics/Fraction.qml similarity index 100% rename from declarativeimports/abilities/definitions/metrics/Fraction.qml rename to containment/package/contents/ui/abilities/privates/metrics/Fraction.qml diff --git a/declarativeimports/abilities/applets/Metrics.qml b/declarativeimports/abilities/applets/Metrics.qml index 24b2af6ac..3fac9b875 100644 --- a/declarativeimports/abilities/applets/Metrics.qml +++ b/declarativeimports/abilities/applets/Metrics.qml @@ -35,7 +35,6 @@ AbilityDefinition.Metrics { margin: refs.metrics.margin padding: refs.metrics.padding - fraction: refs.metrics.fraction totals: refs.metrics.totals readonly property AbilityDefinition.Metrics local: AbilityDefinition.Metrics {} diff --git a/declarativeimports/abilities/containers/Metrics.qml b/declarativeimports/abilities/containers/Metrics.qml index cd0ed4cc6..2f414f190 100644 --- a/declarativeimports/abilities/containers/Metrics.qml +++ b/declarativeimports/abilities/containers/Metrics.qml @@ -30,7 +30,6 @@ AbilityDefinition.Metrics { readonly property alias margin: apis.margin readonly property alias padding: apis.padding - readonly property alias fraction: apis.fraction readonly property alias totals: apis.totals } } diff --git a/declarativeimports/abilities/definitions/Metrics.qml b/declarativeimports/abilities/definitions/Metrics.qml index 708bccd7c..18eceee22 100644 --- a/declarativeimports/abilities/definitions/Metrics.qml +++ b/declarativeimports/abilities/definitions/Metrics.qml @@ -27,6 +27,5 @@ Item { property MetricsTypes.Margin margin: MetricsTypes.Margin{} property MetricsTypes.Padding padding: MetricsTypes.Padding{} - property MetricsTypes.Fraction fraction: MetricsTypes.Fraction{} property MetricsTypes.Totals totals: MetricsTypes.Totals{} }