/* * SPDX-FileCopyrightText: 2021 Devin Lin * SPDX-FileCopyrightText: 2015 Marco Martin * * SPDX-License-Identifier: GPL-2.0-or-later */ import QtQuick import QtQuick.Layouts import org.kde.plasma.core 2.0 as PlasmaCore import org.kde.plasma.components 3.0 as PlasmaComponents import "../../dataproviders" as DataProviders Item { property InternetIndicator internetIndicator readonly property var provider: DataProviders.SignalStrengthInfo {} // check if the internet indicator icon is a mobile data related one readonly property bool isInternetIndicatorMobileData: internetIndicator && internetIndicator.icon && internetIndicator.icon.startsWith('network-mobile-') property bool showLabel: true property real textPixelSize: PlasmaCore.Units.gridUnit * 0.6 width: strengthIcon.width + label.width Layout.minimumWidth: strengthIcon.width + label.width PlasmaCore.IconItem { id: strengthIcon colorGroup: PlasmaCore.ColorScope.colorGroup anchors.left: parent.left anchors.verticalCenter: parent.verticalCenter width: height height: parent.height source: provider.icon // don't show mobile indicator icon if the networkmanager one is already showing visible: !isInternetIndicatorMobileData && provider.showIndicator } PlasmaComponents.Label { id: label visible: showLabel width: visible ? implicitWidth : 0 anchors.leftMargin: PlasmaCore.Units.smallSpacing anchors.left: strengthIcon.right anchors.verticalCenter: parent.verticalCenter text: provider.label color: PlasmaCore.ColorScope.textColor font.pixelSize: textPixelSize } }