diff options
author | JF <jf@codingfield.com> | 2020-08-20 21:09:45 +0200 |
---|---|---|
committer | JF <jf@codingfield.com> | 2020-08-20 21:09:45 +0200 |
commit | 7d3af600bd056e0f4be7d31122cc2dbb352cef70 (patch) | |
tree | 80d626e7e1a2bffe4915b1ac53aa10fcd82756b4 /src/DisplayApp/DisplayApp.h | |
parent | e6a1aff6cee374d8888d89ec03e604f19a0a450d (diff) |
Add TouchModes : in Gestures mode, only 1 event is processed for each touchevent. This allows to recognize gesture and handle them in Screens or in DisplayApp.
In Polling mode, X/Y positions are sent continuously to lvgl, allowing to scroll inside a dropdown menu for example.
Diffstat (limited to 'src/DisplayApp/DisplayApp.h')
-rw-r--r-- | src/DisplayApp/DisplayApp.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/DisplayApp/DisplayApp.h b/src/DisplayApp/DisplayApp.h index 478953c8..345e06d4 100644 --- a/src/DisplayApp/DisplayApp.h +++ b/src/DisplayApp/DisplayApp.h @@ -34,6 +34,7 @@ namespace Pinetime { NewNotification, BleFirmwareUpdateStarted }; enum class FullRefreshDirections { None, Up, Down }; + enum class TouchModes { Gestures, Polling }; DisplayApp(Drivers::St7789 &lcd, Components::LittleVgl &lvgl, Drivers::Cst816S &, Controllers::Battery &batteryController, Controllers::Ble &bleController, @@ -46,6 +47,8 @@ namespace Pinetime { void StartApp(Apps app); void SetFullRefresh(FullRefreshDirections direction); + void SetTouchMode(TouchModes mode); + private: TaskHandle_t taskHandle; static void Process(void* instance); @@ -81,6 +84,7 @@ namespace Pinetime { std::unique_ptr<Screens::Modal> modal; Pinetime::Controllers::NotificationManager& notificationManager; Pinetime::Controllers::FirmwareValidator validator; + TouchModes touchMode = TouchModes::Gestures; }; } } |