on xenial help sign in
Make sure we emit sounds when taking a screenshot even after media-hub
a6b8386Alfonso Sanchez-Beato
qml/Components/NotificationAudio.qml+15−3
@@ -23,6 +23,15 @@ Item {
23 readonly property var playbackState: priv.audio ? priv.audio.playbackState : 0
23 readonly property var playbackState: priv.audio ? priv.audio.playbackState : 0
24
24
25 function play() {
25 function play() {
26+ /* We can be in error state if backend media player restarted, for instance */
27+ if (priv.audio && priv.audio.error) {
28+ console.warn("NotificationAudio: player in error state (" +
29+ priv.audio.errorString + "), recreating");
30+ priv.audio = null;
31+ }
32+ if (!priv.audio) {
33+ priv.audio = priv.audioComponent.createObject(root);
34+ }
26 if (priv.audio) {
35 if (priv.audio) {
27 priv.audio.play();
36 priv.audio.play();
28 }
37 }
@@ -35,9 +44,12 @@ Item {
35
44
36 QtObject {
45 QtObject {
37 id: priv
46 id: priv
38− property var audio: Audio {
47+ property Audio audio: null
48+ property Component audioComponent: Component {
49+ Audio {
39− source: root.source
50+ source: root.source
40− audioRole: MediaPlayer.NotificationRole
51+ audioRole: MediaPlayer.NotificationRole
52+ }
41 }
53 }
42 }
54 }
43}
55}