Index: applet/contents/config/main.xml =================================================================== --- applet/contents/config/main.xml +++ applet/contents/config/main.xml @@ -15,6 +15,9 @@ true + + true + true Index: applet/contents/ui/ConfigGeneral.qml =================================================================== --- applet/contents/ui/ConfigGeneral.qml +++ applet/contents/ui/ConfigGeneral.qml @@ -28,6 +28,7 @@ property alias cfg_maximumVolume: maximumVolume.value property alias cfg_volumeStep: volumeStep.value property alias cfg_volumeFeedback: volumeFeedback.checked + property alias cfg_volumeOsd: volumeOsd.checked property alias cfg_outputChangeOsd: outputChangeOsd.checked ColumnLayout { @@ -78,10 +79,15 @@ ColumnLayout { CheckBox { id: volumeFeedback - text: i18n("Volume feedback") + text: i18n("Audio feedback when output volume changes") enabled: feedback.valid } + CheckBox { + id: volumeOsd + text: i18n("Visual feedback when output volume changes") + } + CheckBox { id: outputChangeOsd text: i18n("Visual feedback when default output device changes") Index: applet/contents/ui/main.qml =================================================================== --- applet/contents/ui/main.qml +++ applet/contents/ui/main.qml @@ -33,7 +33,6 @@ Item { id: main - property bool volumeFeedback: Plasmoid.configuration.volumeFeedback property int maxVolumeValue: Math.round(Plasmoid.configuration.maximumVolume * PulseAudio.NormalVolume / 100.0) property int volumeStep: Math.round(Plasmoid.configuration.volumeStep * PulseAudio.NormalVolume / 100.0) property string displayName: i18n("Audio Volume") @@ -80,7 +79,9 @@ var percent = volumePercent(volume, maxVolumeValue); paSinkModel.preferredSink.muted = percent == 0; paSinkModel.preferredSink.volume = volume; - osd.show(percent); + if (plasmoid.configuration.volumeOsd) { + osd.show(percent); + } playFeedback(); } @@ -92,7 +93,9 @@ var percent = volumePercent(volume, maxVolumeValue); paSinkModel.preferredSink.muted = percent == 0; paSinkModel.preferredSink.volume = volume; - osd.show(percent); + if (plasmoid.configuration.volumeOsd) { + osd.show(percent); + } playFeedback(); } @@ -102,7 +105,9 @@ } var toMute = !paSinkModel.preferredSink.muted; paSinkModel.preferredSink.muted = toMute; - osd.show(toMute ? 0 : volumePercent(paSinkModel.preferredSink.volume, maxVolumeValue)); + if (plasmoid.configuration.volumeOsd) { + osd.show(toMute ? 0 : volumePercent(paSinkModel.preferredSink.volume, maxVolumeValue)); + } playFeedback(); } @@ -138,7 +143,7 @@ } function playFeedback(sinkIndex) { - if (!volumeFeedback) { + if (!plasmoid.configuration.volumeFeedback) { return; } if (sinkIndex == undefined) {