summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/gui/skin_engine/skin_parser.c4
-rw-r--r--apps/gui/skin_engine/skin_tokens.c4
-rw-r--r--firmware/drivers/button.c6
-rw-r--r--firmware/export/button.h2
4 files changed, 8 insertions, 8 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index 4ebdcab722..b3840f689f 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -1187,7 +1187,7 @@ static int parse_progressbar_tag(struct skin_element* element,
1187 region->reverse_bar = false; 1187 region->reverse_bar = false;
1188 region->allow_while_locked = false; 1188 region->allow_while_locked = false;
1189 region->press_length = PRESS; 1189 region->press_length = PRESS;
1190 region->last_press = 0xffff; 1190 region->last_press = -1;
1191 region->armed = false; 1191 region->armed = false;
1192 region->bar = PTRTOSKINOFFSET(skin_buffer, pb); 1192 region->bar = PTRTOSKINOFFSET(skin_buffer, pb);
1193 1193
@@ -1602,7 +1602,7 @@ static int parse_touchregion(struct skin_element *element,
1602 region->armed = false; 1602 region->armed = false;
1603 region->reverse_bar = false; 1603 region->reverse_bar = false;
1604 region->value = 0; 1604 region->value = 0;
1605 region->last_press = 0xffff; 1605 region->last_press = -1;
1606 region->press_length = PRESS; 1606 region->press_length = PRESS;
1607 region->allow_while_locked = false; 1607 region->allow_while_locked = false;
1608 region->bar = PTRTOSKINOFFSET(skin_buffer, NULL); 1608 region->bar = PTRTOSKINOFFSET(skin_buffer, NULL);
diff --git a/apps/gui/skin_engine/skin_tokens.c b/apps/gui/skin_engine/skin_tokens.c
index a4c9af7539..27022b87d1 100644
--- a/apps/gui/skin_engine/skin_tokens.c
+++ b/apps/gui/skin_engine/skin_tokens.c
@@ -1367,7 +1367,7 @@ const char *get_token_value(struct gui_wps *gwps,
1367 case SKIN_TOKEN_LASTTOUCH: 1367 case SKIN_TOKEN_LASTTOUCH:
1368 { 1368 {
1369#ifdef HAVE_TOUCHSCREEN 1369#ifdef HAVE_TOUCHSCREEN
1370 unsigned int last_touch = touchscreen_last_touch(); 1370 long last_touch = touchscreen_last_touch();
1371 char *skin_base = get_skin_buffer(data); 1371 char *skin_base = get_skin_buffer(data);
1372 struct touchregion_lastpress *data = SKINOFFSETTOPTR(skin_base, token->value.data); 1372 struct touchregion_lastpress *data = SKINOFFSETTOPTR(skin_base, token->value.data);
1373 if (!data) return NULL; 1373 if (!data) return NULL;
@@ -1375,7 +1375,7 @@ const char *get_token_value(struct gui_wps *gwps,
1375 if (region) 1375 if (region)
1376 last_touch = region->last_press; 1376 last_touch = region->last_press;
1377 1377
1378 if (last_touch != 0xffff && 1378 if (last_touch != -1 &&
1379 TIME_BEFORE(current_tick, data->timeout + last_touch)) 1379 TIME_BEFORE(current_tick, data->timeout + last_touch))
1380 return "t"; 1380 return "t";
1381#endif 1381#endif
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c
index 0af51dc3b2..9979bc0155 100644
--- a/firmware/drivers/button.c
+++ b/firmware/drivers/button.c
@@ -94,7 +94,7 @@ static int button_read(void);
94#endif 94#endif
95 95
96#ifdef HAVE_TOUCHSCREEN 96#ifdef HAVE_TOUCHSCREEN
97static int last_touchscreen_touch; 97static long last_touchscreen_touch;
98#endif 98#endif
99#if defined(HAVE_HEADPHONE_DETECTION) 99#if defined(HAVE_HEADPHONE_DETECTION)
100static struct timeout hp_detect_timeout; /* Debouncer for headphone plug/unplug */ 100static struct timeout hp_detect_timeout; /* Debouncer for headphone plug/unplug */
@@ -542,7 +542,7 @@ void button_init(void)
542#endif 542#endif
543#endif 543#endif
544#ifdef HAVE_TOUCHSCREEN 544#ifdef HAVE_TOUCHSCREEN
545 last_touchscreen_touch = 0xffff; 545 last_touchscreen_touch = -1;
546#endif 546#endif
547 /* Start polling last */ 547 /* Start polling last */
548 tick_add_task(button_tick); 548 tick_add_task(button_tick);
@@ -714,7 +714,7 @@ void button_clear_queue(void)
714} 714}
715 715
716#ifdef HAVE_TOUCHSCREEN 716#ifdef HAVE_TOUCHSCREEN
717int touchscreen_last_touch(void) 717long touchscreen_last_touch(void)
718{ 718{
719 return last_touchscreen_touch; 719 return last_touchscreen_touch;
720} 720}
diff --git a/firmware/export/button.h b/firmware/export/button.h
index 1745947230..3abad2d4f0 100644
--- a/firmware/export/button.h
+++ b/firmware/export/button.h
@@ -107,7 +107,7 @@ int button_apply_acceleration(const unsigned int data);
107 BUTTON_MULTIMEDIA_FFWD) 107 BUTTON_MULTIMEDIA_FFWD)
108 108
109#ifdef HAVE_TOUCHSCREEN 109#ifdef HAVE_TOUCHSCREEN
110int touchscreen_last_touch(void); 110long touchscreen_last_touch(void);
111 111
112#if (!defined(BUTTON_TOPLEFT) || !defined(BUTTON_TOPMIDDLE) \ 112#if (!defined(BUTTON_TOPLEFT) || !defined(BUTTON_TOPMIDDLE) \
113 || !defined(BUTTON_TOPRIGHT) || !defined(BUTTON_MIDLEFT) \ 113 || !defined(BUTTON_TOPRIGHT) || !defined(BUTTON_MIDLEFT) \