From 7d5536e2abca61f503ed68521603bd30700a7e5e Mon Sep 17 00:00:00 2001 From: jacqueline Date: Tue, 3 Oct 2023 10:37:29 +1100 Subject: Generalise the lvgl input driver in preparation for more input methods --- src/ui/wheel_encoder.cpp | 44 -------------------------------------------- 1 file changed, 44 deletions(-) delete mode 100644 src/ui/wheel_encoder.cpp (limited to 'src/ui/wheel_encoder.cpp') diff --git a/src/ui/wheel_encoder.cpp b/src/ui/wheel_encoder.cpp deleted file mode 100644 index 2f2e7f68..00000000 --- a/src/ui/wheel_encoder.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright 2023 jacqueline - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -#include "wheel_encoder.hpp" -#include -#include "core/lv_group.h" -#include "hal/lv_hal_indev.h" - -namespace ui { - -void encoder_read(lv_indev_drv_t* drv, lv_indev_data_t* data) { - TouchWheelEncoder* instance = - reinterpret_cast(drv->user_data); - instance->Read(data); -} - -void encoder_feedback(lv_indev_drv_t* drv, uint8_t event_code) { - ESP_LOGI("Touchwheel Event", "Event code: %d", event_code); -} - -TouchWheelEncoder::TouchWheelEncoder( - std::unique_ptr wheel) - : last_key_(0), wheel_(std::move(wheel)) { - lv_indev_drv_init(&driver_); - driver_.type = LV_INDEV_TYPE_ENCODER; - driver_.read_cb = encoder_read; - // driver_.feedback_cb = encoder_feedback; - driver_.user_data = this; - - registration_ = lv_indev_drv_register(&driver_); -} - -auto TouchWheelEncoder::Read(lv_indev_data_t* data) -> void { - wheel_->Update(); - - data->enc_diff = wheel_->ticks(); - data->state = - wheel_->is_clicking() ? LV_INDEV_STATE_PRESSED : LV_INDEV_STATE_RELEASED; -} - -} // namespace ui -- cgit v1.2.3