diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-12-07 16:57:05 +1100 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-12-07 17:00:30 +1100 |
| commit | 3f7f199cb940c8d5f6d48f77fd59971adffe49ef (patch) | |
| tree | aa22162e46c5e9ccce4c7ee8537b493f437664d9 /src/ui | |
| parent | 009f69c929eb1d1b65d75b0937fbf3b8de5d9148 (diff) | |
| download | tangara-fw-3f7f199cb940c8d5f6d48f77fd59971adffe49ef.tar.gz | |
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
Diffstat (limited to 'src/ui')
| -rw-r--r-- | src/ui/include/ui_events.hpp | 12 | ||||
| -rw-r--r-- | src/ui/include/ui_fsm.hpp | 1 | ||||
| -rw-r--r-- | src/ui/ui_fsm.cpp | 22 |
3 files changed, 10 insertions, 25 deletions
diff --git a/src/ui/include/ui_events.hpp b/src/ui/include/ui_events.hpp index 6a6be304..111f37a8 100644 --- a/src/ui/include/ui_events.hpp +++ b/src/ui/include/ui_events.hpp @@ -30,18 +30,6 @@ struct OnSystemError : tinyfsm::Event {}; namespace internal { -struct RecordSelected : tinyfsm::Event { - bool show_menu; - std::pmr::vector<std::pmr::string> new_crumbs; - std::shared_ptr<database::Result<database::IndexRecord>> initial_page; - std::shared_ptr<database::Result<database::IndexRecord>> page; - std::size_t record; -}; - -struct IndexSelected : tinyfsm::Event { - database::IndexId id; -}; - struct ControlSchemeChanged : tinyfsm::Event {}; struct ReindexDatabase : tinyfsm::Event {}; diff --git a/src/ui/include/ui_fsm.hpp b/src/ui/include/ui_fsm.hpp index a8291a46..f5f8c574 100644 --- a/src/ui/include/ui_fsm.hpp +++ b/src/ui/include/ui_fsm.hpp @@ -64,7 +64,6 @@ class UiState : public tinyfsm::Fsm<UiState> { virtual void react(const system_fsm::KeyLockChanged&); virtual void react(const OnLuaError&) {} - virtual void react(const internal::RecordSelected&) {} virtual void react(const internal::BackPressed&) {} virtual void react(const internal::ShowSettingsPage&){}; virtual void react(const internal::ModalCancelPressed&) { 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<void>([=]() { - 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<int>(total_size)); - queue_position_->Update(static_cast<int>(current_pos)); - }); - }); + auto& queue = sServices->track_queue(); + queue_size_->Update(static_cast<int>(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() { |
