diff options
author | Tao Bao <tbao@google.com> | 2018-05-29 23:16:52 +0200 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2018-05-29 23:16:52 +0200 |
commit | 4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd (patch) | |
tree | 04091e7f8b18e2a71094171af32115aea9555942 /ui.h | |
parent | Merge "updater: Add Commmand class to manage BBOTA commands." (diff) | |
parent | Merge "ui: Use std::thread to create input/progress threads." (diff) | |
download | android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.tar android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.tar.gz android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.tar.bz2 android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.tar.lz android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.tar.xz android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.tar.zst android_bootable_recovery-4fcc200272bfcb257df58a53f2cf6aac2c6dcbbd.zip |
Diffstat (limited to '')
-rw-r--r-- | ui.h | 20 |
1 files changed, 7 insertions, 13 deletions
@@ -17,12 +17,13 @@ #ifndef RECOVERY_UI_H #define RECOVERY_UI_H -#include <linux/input.h> +#include <linux/input.h> // KEY_MAX #include <pthread.h> -#include <time.h> +#include <atomic> #include <functional> #include <string> +#include <thread> #include <vector> // Abstract class for controlling the user interface during recovery. @@ -51,7 +52,7 @@ class RecoveryUI { RecoveryUI(); - virtual ~RecoveryUI() {} + virtual ~RecoveryUI(); // Initializes the object; called before anything else. UI texts will be initialized according to // the given locale. Returns true on success. @@ -172,12 +173,6 @@ class RecoveryUI { OFF }; - struct key_timer_t { - RecoveryUI* ui; - int key_code; - int count; - }; - // The sensitivity when detecting a swipe. const int kTouchLowThreshold; const int kTouchHighThreshold; @@ -186,12 +181,10 @@ class RecoveryUI { void OnTouchDetected(int dx, int dy); int OnInputEvent(int fd, uint32_t epevents); void ProcessKey(int key_code, int updown); + void TimeKey(int key_code, int count); bool IsUsbConnected(); - static void* time_key_helper(void* cookie); - void time_key(int key_code, int count); - bool InitScreensaver(); // Key event input queue @@ -223,7 +216,8 @@ class RecoveryUI { bool touch_swiping_; bool is_bootreason_recovery_ui_; - pthread_t input_thread_; + std::thread input_thread_; + std::atomic<bool> input_thread_stopped_{ false }; ScreensaverState screensaver_state_; |