diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-09-22 15:48:41 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-09-22 21:19:19 +1000 |
| commit | b192975cb1eeb4e6b7c7bf53cdf42701c55f034a (patch) | |
| tree | 39755851543d596f2630704be9efb56be1f39bfc /src/ui/ui_fsm.cpp | |
| parent | cbd99b2134c6c471708deb409a4b0fcc4c31516d (diff) | |
| download | tangara-fw-b192975cb1eeb4e6b7c7bf53cdf42701c55f034a.tar.gz | |
make bluetooth pairing ui functional
Diffstat (limited to 'src/ui/ui_fsm.cpp')
| -rw-r--r-- | src/ui/ui_fsm.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/ui/ui_fsm.cpp b/src/ui/ui_fsm.cpp index c0c06bb0..18e9caf4 100644 --- a/src/ui/ui_fsm.cpp +++ b/src/ui/ui_fsm.cpp @@ -241,12 +241,16 @@ void Browse::react(const internal::ShowNowPlaying& ev) { void Browse::react(const internal::ShowSettingsPage& ev) { std::shared_ptr<Screen> screen; + std::shared_ptr<screens::Bluetooth> bt_screen; switch (ev.page) { case internal::ShowSettingsPage::Page::kRoot: screen.reset(new screens::Settings()); break; case internal::ShowSettingsPage::Page::kBluetooth: - screen.reset(new screens::Bluetooth()); + bt_screen = std::make_shared<screens::Bluetooth>(sServices->bluetooth(), + sServices->nvs()); + screen = bt_screen; + bluetooth_screen_ = bt_screen; break; case internal::ShowSettingsPage::Page::kHeadphones: screen.reset(new screens::Headphones(sServices->nvs())); @@ -315,6 +319,13 @@ void Browse::react(const internal::BackPressed& ev) { PopScreen(); } +void Browse::react(const system_fsm::BluetoothDevicesChanged&) { + auto bt = bluetooth_screen_.lock(); + if (bt) { + bt->RefreshDevicesList(); + } +} + static std::shared_ptr<screens::Playing> sPlayingScreen; void Playing::entry() { |
