chore(legacy): Rename buttonState YesUp to YesReleased.

andrewkozlik/t1-keyboard
Andrew Kozlik 4 years ago
parent d38540ca7a
commit 87218a63f9

@ -47,8 +47,8 @@ bool get_button_response(void) {
do { do {
delay(100000); delay(100000);
buttonUpdate(); buttonUpdate();
} while (!button.YesUp && !button.NoUp); } while (!button.YesReleased && !button.NoReleased);
return button.YesUp; return button.YesReleased;
} }
void show_halt(const char *line1, const char *line2) { void show_halt(const char *line1, const char *line2) {

@ -19,7 +19,7 @@
#include "buttons.h" #include "buttons.h"
struct buttonState button; struct buttonState button = {0};
#if !EMULATOR #if !EMULATOR
uint16_t buttonRead(void) { return gpio_port_read(BTN_PORT); } uint16_t buttonRead(void) { return gpio_port_read(BTN_PORT); }
@ -33,36 +33,34 @@ void buttonUpdate() {
if ((state & BTN_PIN_YES) == 0) { // Yes button is down if ((state & BTN_PIN_YES) == 0) { // Yes button is down
if ((last_state & BTN_PIN_YES) == 0) { // last Yes was down if ((last_state & BTN_PIN_YES) == 0) { // last Yes was down
if (button.YesDown < 2000000000) button.YesDown++; if (button.YesDown < 2000000000) button.YesDown++;
button.YesUp = false; button.YesReleased = false;
} else { // last Yes was up } else { // last Yes was up
button.YesDown = 0; button.YesDown = 1;
button.YesUp = false; button.YesReleased = false;
} }
} else { // Yes button is up } else { // Yes button is up
if ((last_state & BTN_PIN_YES) == 0) { // last Yes was down if ((last_state & BTN_PIN_YES) == 0) { // last Yes was down
button.YesDown = 0; button.YesReleased = true;
button.YesUp = true;
} else { // last Yes was up } else { // last Yes was up
button.YesDown = 0; button.YesDown = 0;
button.YesUp = false; button.YesReleased = false;
} }
} }
if ((state & BTN_PIN_NO) == 0) { // No button is down if ((state & BTN_PIN_NO) == 0) { // No button is down
if ((last_state & BTN_PIN_NO) == 0) { // last No was down if ((last_state & BTN_PIN_NO) == 0) { // last No was down
if (button.NoDown < 2000000000) button.NoDown++; if (button.NoDown < 2000000000) button.NoDown++;
button.NoUp = false; button.NoReleased = false;
} else { // last No was up } else { // last No was up
button.NoDown = 0; button.NoDown = 1;
button.NoUp = false; button.NoReleased = false;
} }
} else { // No button is up } else { // No button is up
if ((last_state & BTN_PIN_NO) == 0) { // last No was down if ((last_state & BTN_PIN_NO) == 0) { // last No was down
button.NoDown = 0; button.NoReleased = true;
button.NoUp = true;
} else { // last No was up } else { // last No was up
button.NoDown = 0; button.NoDown = 0;
button.NoUp = false; button.NoReleased = false;
} }
} }

@ -24,9 +24,9 @@
#include <stdbool.h> #include <stdbool.h>
struct buttonState { struct buttonState {
volatile bool YesUp; volatile bool YesReleased;
volatile int YesDown; volatile int YesDown;
volatile bool NoUp; volatile bool NoReleased;
volatile int NoDown; volatile int NoDown;
}; };

@ -294,9 +294,9 @@ int main(void) {
buttonUpdate(); buttonUpdate();
frame += 1; frame += 1;
} while (!button.YesUp && !button.NoUp); } while (!button.YesReleased && !button.NoReleased);
if (button.YesUp) { if (button.YesReleased) {
state = (state + 1) % states; state = (state + 1) % states;
oledSwipeLeft(); oledSwipeLeft();
} else { } else {

@ -66,11 +66,11 @@ bool protectButton(ButtonRequestType type, bool confirm_only) {
if (acked) { if (acked) {
usbSleep(5); usbSleep(5);
buttonUpdate(); buttonUpdate();
if (button.YesUp) { if (button.YesReleased) {
result = true; result = true;
break; break;
} }
if (!confirm_only && button.NoUp) { if (!confirm_only && button.NoReleased) {
result = false; result = false;
break; break;
} }

@ -45,7 +45,8 @@ void check_lock_screen(void) {
buttonUpdate(); buttonUpdate();
// wake from screensaver on any button // wake from screensaver on any button
if (layoutLast == layoutScreensaver && (button.NoUp || button.YesUp)) { if (layoutLast == layoutScreensaver &&
(button.NoReleased || button.YesReleased)) {
layoutHome(); layoutHome();
return; return;
} }
@ -61,16 +62,16 @@ void check_lock_screen(void) {
do { do {
usbSleep(5); usbSleep(5);
buttonUpdate(); buttonUpdate();
} while (!button.NoUp); } while (!button.NoReleased);
// wait for confirmation/cancellation of the dialog // wait for confirmation/cancellation of the dialog
do { do {
usbSleep(5); usbSleep(5);
buttonUpdate(); buttonUpdate();
} while (!button.YesUp && !button.NoUp); } while (!button.YesReleased && !button.NoReleased);
usbTiny(0); usbTiny(0);
if (button.YesUp) { if (button.YesReleased) {
// lock the screen // lock the screen
config_lockDevice(); config_lockDevice();
layoutScreensaver(); layoutScreensaver();

@ -247,7 +247,8 @@ void u2fhid_read_start(const U2FHID_FRAME *f) {
dialog_timeout--; dialog_timeout--;
usbPoll(); // may trigger new request usbPoll(); // may trigger new request
buttonUpdate(); buttonUpdate();
if (button.YesUp && (last_req_state == AUTH || last_req_state == REG)) { if (button.YesReleased &&
(last_req_state == AUTH || last_req_state == REG)) {
last_req_state++; last_req_state++;
// standard requires to remember button press for 10 seconds. // standard requires to remember button press for 10 seconds.
dialog_timeout = 10 * U2F_TIMEOUT; dialog_timeout = 10 * U2F_TIMEOUT;

Loading…
Cancel
Save