summaryrefslogtreecommitdiff
path: root/src/libs/lvgl/src/lv_hal/lv_hal_indev.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/lvgl/src/lv_hal/lv_hal_indev.c')
-rw-r--r--src/libs/lvgl/src/lv_hal/lv_hal_indev.c158
1 files changed, 0 insertions, 158 deletions
diff --git a/src/libs/lvgl/src/lv_hal/lv_hal_indev.c b/src/libs/lvgl/src/lv_hal/lv_hal_indev.c
deleted file mode 100644
index 35ff1b31..00000000
--- a/src/libs/lvgl/src/lv_hal/lv_hal_indev.c
+++ /dev/null
@@ -1,158 +0,0 @@
-/**
- * @file hal_indev.c
- *
- * @description Input device HAL interface
- *
- */
-
-/*********************
- * INCLUDES
- *********************/
-#include "../lv_core/lv_debug.h"
-#include "../lv_hal/lv_hal_indev.h"
-#include "../lv_core/lv_indev.h"
-#include "../lv_misc/lv_mem.h"
-#include "../lv_misc/lv_gc.h"
-#include "lv_hal_disp.h"
-
-#if defined(LV_GC_INCLUDE)
-#include LV_GC_INCLUDE
-#endif /* LV_ENABLE_GC */
-
-/*********************
- * DEFINES
- *********************/
-
-/**********************
- * TYPEDEFS
- **********************/
-
-/**********************
- * STATIC PROTOTYPES
- **********************/
-
-/**********************
- * STATIC VARIABLES
- **********************/
-
-/**********************
- * MACROS
- **********************/
-
-/**********************
- * GLOBAL FUNCTIONS
- **********************/
-
-/**
- * Initialize an input device driver with default values.
- * It is used to surly have known values in the fields ant not memory junk.
- * After it you can set the fields.
- * @param driver pointer to driver variable to initialize
- */
-void lv_indev_drv_init(lv_indev_drv_t * driver)
-{
- memset(driver, 0, sizeof(lv_indev_drv_t));
-
- driver->type = LV_INDEV_TYPE_NONE;
- driver->drag_limit = LV_INDEV_DEF_DRAG_LIMIT;
- driver->drag_throw = LV_INDEV_DEF_DRAG_THROW;
- driver->long_press_time = LV_INDEV_DEF_LONG_PRESS_TIME;
- driver->long_press_rep_time = LV_INDEV_DEF_LONG_PRESS_REP_TIME;
-}
-
-/**
- * Register an initialized input device driver.
- * @param driver pointer to an initialized 'lv_indev_drv_t' variable (can be local variable)
- * @return pointer to the new input device or NULL on error
- */
-lv_indev_t * lv_indev_drv_register(lv_indev_drv_t * driver)
-{
-
- if(driver->disp == NULL) driver->disp = lv_disp_get_default();
-
- if(driver->disp == NULL) {
- LV_LOG_WARN("lv_indev_drv_register: no display registered hence can't attache the indev to "
- "a display");
- return NULL;
- }
-
- lv_indev_t * indev = lv_ll_ins_head(&LV_GC_ROOT(_lv_indev_ll));
- if(!indev) {
- LV_ASSERT_MEM(indev);
- return NULL;
- }
-
- memset(indev, 0, sizeof(lv_indev_t));
- memcpy(&indev->driver, driver, sizeof(lv_indev_drv_t));
-
- indev->proc.reset_query = 1;
- indev->cursor = NULL;
- indev->group = NULL;
- indev->btn_points = NULL;
-
- indev->driver.read_task = lv_task_create(lv_indev_read_task, LV_INDEV_DEF_READ_PERIOD, LV_TASK_PRIO_MID, indev);
-
- return indev;
-}
-
-/**
- * Update the driver in run time.
- * @param indev pointer to a input device. (return value of `lv_indev_drv_register`)
- * @param new_drv pointer to the new driver
- */
-void lv_indev_drv_update(lv_indev_t * indev, lv_indev_drv_t * new_drv)
-{
- memcpy(&indev->driver, new_drv, sizeof(lv_indev_drv_t));
-}
-
-/**
- * Get the next input device.
- * @param indev pointer to the current input device. NULL to initialize.
- * @return the next input devise or NULL if no more. Give the first input device when the parameter
- * is NULL
- */
-lv_indev_t * lv_indev_get_next(lv_indev_t * indev)
-{
- if(indev == NULL)
- return lv_ll_get_head(&LV_GC_ROOT(_lv_indev_ll));
- else
- return lv_ll_get_next(&LV_GC_ROOT(_lv_indev_ll), indev);
-}
-
-/**
- * Read data from an input device.
- * @param indev pointer to an input device
- * @param data input device will write its data here
- * @return false: no more data; true: there more data to read (buffered)
- */
-bool lv_indev_read(lv_indev_t * indev, lv_indev_data_t * data)
-{
- bool cont = false;
-
- memset(data, 0, sizeof(lv_indev_data_t));
-
- /* For touchpad sometimes users don't the last pressed coordinate on release.
- * So be sure a coordinates are initialized to the last point */
- if(indev->driver.type == LV_INDEV_TYPE_POINTER) {
- data->point.x = indev->proc.types.pointer.act_point.x;
- data->point.y = indev->proc.types.pointer.act_point.y;
- }
- /*Similarly set at least the last key in case of the the user doesn't set it on release*/
- else if(indev->driver.type == LV_INDEV_TYPE_KEYPAD) {
- data->key = indev->proc.types.keypad.last_key;
- }
-
- if(indev->driver.read_cb) {
- LV_LOG_TRACE("idnev read started");
- cont = indev->driver.read_cb(&indev->driver, data);
- LV_LOG_TRACE("idnev read finished");
- } else {
- LV_LOG_WARN("indev function registered");
- }
-
- return cont;
-}
-
-/**********************
- * STATIC FUNCTIONS
- **********************/