From 3f7f199cb940c8d5f6d48f77fd59971adffe49ef Mon Sep 17 00:00:00 2001 From: jacqueline Date: Thu, 7 Dec 2023 16:57:05 +1100 Subject: Remove pre-iterator concepts - No more IndexRecord/Result/dbGetPage nonsense - Queue is just track ids - i am so tired and have so much to do --- src/ui/ui_fsm.cpp | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'src/ui/ui_fsm.cpp') diff --git a/src/ui/ui_fsm.cpp b/src/ui/ui_fsm.cpp index 3c57f573..9fc31481 100644 --- a/src/ui/ui_fsm.cpp +++ b/src/ui/ui_fsm.cpp @@ -41,7 +41,6 @@ #include "screen_lua.hpp" #include "screen_settings.hpp" #include "screen_splash.hpp" -#include "source.hpp" #include "spiffs.hpp" #include "storage.hpp" #include "system_events.hpp" @@ -118,7 +117,7 @@ void UiState::react(const audio::PlaybackUpdate& ev) {} void UiState::react(const audio::QueueUpdate&) { auto& queue = sServices->track_queue(); - sPlaybackModel.current_track.set(queue.Current()); + sPlaybackModel.current_track.set(queue.current()); } void UiState::react(const internal::ControlSchemeChanged&) { @@ -281,15 +280,14 @@ void Lua::react(const system_fsm::BatteryStateChanged& ev) { } void Lua::react(const audio::QueueUpdate&) { - sServices->bg_worker().Dispatch([=]() { - auto& queue = sServices->track_queue(); - size_t total_size = queue.GetTotalSize(); - size_t current_pos = queue.GetCurrentPosition(); - events::Ui().RunOnTask([=]() { - queue_size_->Update(static_cast(total_size)); - queue_position_->Update(static_cast(current_pos)); - }); - }); + auto& queue = sServices->track_queue(); + queue_size_->Update(static_cast(queue.totalSize())); + + int current_pos = queue.currentPosition(); + if (queue.current()) { + current_pos++; + } + queue_position_->Update(current_pos); } void Lua::react(const audio::PlaybackStarted& ev) { @@ -373,7 +371,7 @@ void Indexing::entry() { // TODO: Hmm. return; } - db->Update(); + db->updateIndexes(); } void Indexing::exit() { -- cgit v1.2.3