|
@@ -133,12 +133,14 @@ uint8_t XPT2046::read_buttons() {
|
133
|
133
|
// Touch within the button area simulates an encoder button
|
134
|
134
|
if (y > BUTTON_AREA_TOP && y < BUTTON_AREA_BOT)
|
135
|
135
|
return WITHIN(x, 14, 77) ? EN_D
|
136
|
|
- : WITHIN(x, 90, 153) ? EN_A
|
137
|
|
- : WITHIN(x, 166, 229) ? EN_B
|
138
|
|
- : WITHIN(x, 242, 305) ? EN_C
|
139
|
|
- : 0;
|
|
136
|
+ : WITHIN(x, 90, 153) ? EN_A
|
|
137
|
+ : WITHIN(x, 166, 229) ? EN_B
|
|
138
|
+ : WITHIN(x, 242, 305) ? EN_C
|
|
139
|
+ : 0;
|
140
|
140
|
|
141
|
|
- if (x > TOUCH_SENSOR_WIDTH || !WITHIN(y, SCREEN_START_TOP, SCREEN_START_TOP + SCREEN_HEIGHT)) return 0;
|
|
141
|
+ if ( !WITHIN(x, SCREEN_START_LEFT, SCREEN_START_LEFT + SCREEN_WIDTH)
|
|
142
|
+ || !WITHIN(y, SCREEN_START_TOP, SCREEN_START_TOP + SCREEN_HEIGHT)
|
|
143
|
+ ) return 0;
|
142
|
144
|
|
143
|
145
|
// Column and row above BUTTON_AREA_TOP
|
144
|
146
|
int8_t col = (x - (SCREEN_START_LEFT)) * (LCD_WIDTH) / (TOUCHABLE_X_WIDTH),
|
|
@@ -161,6 +163,7 @@ bool XPT2046::isTouched() {
|
161
|
163
|
}
|
162
|
164
|
|
163
|
165
|
#if ENABLED(TOUCH_BUTTONS_HW_SPI)
|
|
166
|
+
|
164
|
167
|
#include <SPI.h>
|
165
|
168
|
|
166
|
169
|
static void touch_spi_init(uint8_t spiRate) {
|