From 1baaa6dadcea5b8a85f1629e31119f4edba91b75 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Mon, 15 Apr 2024 14:18:20 +1000 Subject: Use more generic 'hooks' for each input device's actions --- src/input/input_volume_buttons.cpp | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) (limited to 'src/input/input_volume_buttons.cpp') diff --git a/src/input/input_volume_buttons.cpp b/src/input/input_volume_buttons.cpp index 0413222c..bc04cd66 100644 --- a/src/input/input_volume_buttons.cpp +++ b/src/input/input_volume_buttons.cpp @@ -7,29 +7,16 @@ #include "input_volume_buttons.hpp" #include "event_queue.hpp" #include "gpios.hpp" +#include "input_hook_actions.hpp" namespace input { -VolumeButtons::VolumeButtons(drivers::IGpios& gpios) : gpios_(gpios) {} +VolumeButtons::VolumeButtons(drivers::IGpios& gpios) + : gpios_(gpios), up_(actions::volumeUp), down_(actions::volumeDown) {} auto VolumeButtons::read(lv_indev_data_t* data) -> void { - bool vol_up = gpios_.Get(drivers::IGpios::Pin::kKeyUp); - switch (up_.update(!vol_up)) { - case Trigger::State::kNone: - break; - default: - events::Audio().Dispatch(audio::StepUpVolume{}); - break; - } - - bool vol_down = gpios_.Get(drivers::IGpios::Pin::kKeyDown); - switch (down_.update(!vol_down)) { - case Trigger::State::kNone: - break; - default: - events::Audio().Dispatch(audio::StepDownVolume{}); - break; - } + up_.update(!gpios_.Get(drivers::IGpios::Pin::kKeyUp), data); + down_.update(!gpios_.Get(drivers::IGpios::Pin::kKeyDown), data); } } // namespace input -- cgit v1.2.3