diff --git a/qml/Main.qml b/qml/Main.qml index d3e993c..d4ce635 100644 --- a/qml/Main.qml +++ b/qml/Main.qml @@ -133,6 +133,24 @@ MainView { } } + // Timer zum regelmäßigen Prüfen der Lautstärke-Einstellungen + Timer { + id: volumeCheckTimer + interval: 200 // Prüfen alle 200ms + running: true + repeat: true + onTriggered: { + var musicVol = py.call_sync("fortunecookie.get_music_volume", []); + var crackVol = py.call_sync("fortunecookie.get_crack_volume", []); + if (musicVol !== root.musicVolume) { + root.musicVolume = musicVol; + } + if (crackVol !== root.crackVolume) { + root.crackVolume = crackVol; + } + } + } + Image { id: cookieImage anchors.centerIn: parent @@ -225,10 +243,10 @@ MainView { bottom: parent.bottom margins: units.gu(2) } - width: units.gu(14) - height: units.gu(14) + width: units.gu(10) + height: units.gu(10) text: musicPlaying ? "\uD83D\uDD0A" : "\uD83D\uDD07" - fontSize: "xx-large" + fontSize: "xxx-large" horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter color: theme.palette.normalText diff --git a/qml/Settings.qml b/qml/Settings.qml index 136e238..cc47c74 100644 --- a/qml/Settings.qml +++ b/qml/Settings.qml @@ -90,7 +90,6 @@ Page { var newList = newListFull.split(" - ")[0]; py.call("fortunecookie.set_fortune_list", [newList], function() { console.log("Spruchliste gewaehlt: " + newList); - root.reloadFortune(); }); } } @@ -116,10 +115,11 @@ Page { maximumValue: 1.0 stepSize: 0.1 value: 0.5 + showValue: false onValueChanged: { var volume = musicVolumeSlider.value; - root.setMusicVolume(volume); + py.call("fortunecookie.set_music_volume", [volume]); musicVolumeLabel.text = Math.round(volume * 100) + "%"; } } @@ -154,10 +154,11 @@ Page { maximumValue: 1.0 stepSize: 0.1 value: 1.0 + showValue: false onValueChanged: { var volume = crackVolumeSlider.value; - root.setCrackVolume(volume); + py.call("fortunecookie.set_crack_volume", [volume]); crackVolumeLabel.text = Math.round(volume * 100) + "%"; } } diff --git a/src/fortunecookie.py b/src/fortunecookie.py index c05e0d1..6f73938 100644 --- a/src/fortunecookie.py +++ b/src/fortunecookie.py @@ -130,8 +130,10 @@ def get_initial_fortune(): def open_fortune(): """Oeffnet den Fortune Cookie (neuer Spruch aus aktueller Liste).""" - global _current_fortune + global _current_fortune, _current_fortune_list _init() + # Aktuelle Liste neu laden, falls sie in Settings geändert wurde + _current_fortune_list = load_setting("fortune_list", default_value="fortune") _current_fortune = _get_random_fortune() return True