Warning, /multimedia/elisa/src/qml/VolumeSlider.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <matthieu_gallien@yahoo.fr> 0003 SPDX-FileCopyrightText: 2021 (c) Devin Lin <espidev@gmail.com> 0004 0005 SPDX-License-Identifier: LGPL-3.0-or-later 0006 */ 0007 0008 import QtQuick 2.7 0009 import QtQuick.Layouts 1.2 0010 import QtQuick.Controls 2.3 0011 import org.kde.kirigami 2.5 as Kirigami 0012 import org.kde.elisa 1.0 0013 0014 AccessibleSlider { 0015 id: volumeSlider 0016 0017 property bool muted 0018 0019 from: 0 0020 to: 100 0021 0022 keyStepSize: 1 0023 wheelStepSize: 5 0024 0025 enabled: !muted 0026 0027 Accessible.name: i18nc("@label", "Volume") 0028 0029 onPressedChanged: { 0030 tooltip.delay = pressed ? 0 : Kirigami.Units.toolTipDelay 0031 } 0032 0033 MouseArea { 0034 id: sliderMouseArea 0035 anchors.fill: parent 0036 acceptedButtons: Qt.NoButton 0037 hoverEnabled: true 0038 } 0039 0040 ToolTip { 0041 id: tooltip 0042 x: volumeSlider.visualPosition * volumeSlider.width - width / 2 0043 visible: volumeSlider.pressed || sliderMouseArea.containsMouse 0044 // delay is actually handled in volumeSlider.onPressedChanged, because property bindings aren't immediate 0045 delay: volumeSlider.pressed ? 0 : Kirigami.Units.toolTipDelay 0046 closePolicy: Popup.NoAutoClose 0047 timeout: -1 0048 text: i18nc("Volume as a percentage", "%1%", Math.round(volumeSlider.value)) 0049 } 0050 }