Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/flipperzero-firmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorits your bedtime <23366927+itsyourbedtime@users.noreply.github.com>2021-08-16 23:50:49 +0300
committerGitHub <noreply@github.com>2021-08-16 23:50:49 +0300
commite1d80d5402d8b19de7e5a448dc20bc83a50e7bfc (patch)
treece029df46403f599a884e7510de39aea31bce2c3 /applications/dolphin
parent69f4858168441514463d8e28330add418bd1b3f0 (diff)
responsive ui for not implemented features in lock menu (#648)
Co-authored-by: あく <alleteam@gmail.com>
Diffstat (limited to 'applications/dolphin')
-rw-r--r--applications/dolphin/dolphin.c8
-rw-r--r--applications/dolphin/dolphin_views.c13
-rw-r--r--applications/dolphin/dolphin_views.h2
3 files changed, 21 insertions, 2 deletions
diff --git a/applications/dolphin/dolphin.c b/applications/dolphin/dolphin.c
index 705ed808..b7133b9a 100644
--- a/applications/dolphin/dolphin.c
+++ b/applications/dolphin/dolphin.c
@@ -180,6 +180,12 @@ static void lock_menu_callback(void* context, uint8_t index) {
break;
default:
+ // wip message
+ with_view_model(
+ dolphin->view_lockmenu, (DolphinViewLockMenuModel * model) {
+ model->hint_timeout = HINT_TIMEOUT_H;
+ return true;
+ });
break;
}
}
@@ -199,6 +205,8 @@ bool dolphin_view_lockmenu_input(InputEvent* event, void* context) {
DolphinViewLockMenuModel* model = view_get_model(dolphin->view_lockmenu);
+ model->hint_timeout = 0; // clear hint timeout
+
if(event->key == InputKeyUp) {
model->idx = CLAMP(model->idx - 1, 2, 0);
} else if(event->key == InputKeyDown) {
diff --git a/applications/dolphin/dolphin_views.c b/applications/dolphin/dolphin_views.c
index 8953fe3a..953671e7 100644
--- a/applications/dolphin/dolphin_views.c
+++ b/applications/dolphin/dolphin_views.c
@@ -63,7 +63,7 @@ void dolphin_view_idle_main_draw(Canvas* canvas, void* model) {
canvas_draw_icon_animation(canvas, 0, -3, m->animation);
}
- if(m->hint_timeout > 0) {
+ if(m->hint_timeout) {
m->hint_timeout--;
if(m->locked) {
canvas_draw_icon(canvas, 13, 5, &I_LockPopup_100x49);
@@ -98,10 +98,19 @@ void dolphin_view_lockmenu_draw(Canvas* canvas, void* model) {
if(m->door_left_x == -57) {
for(uint8_t i = 0; i < 3; ++i) {
canvas_draw_str_aligned(
- canvas, 64, 13 + (i * 17), AlignCenter, AlignCenter, Lockmenu_Items[i]);
+ canvas,
+ 64,
+ 13 + (i * 17),
+ AlignCenter,
+ AlignCenter,
+ (m->hint_timeout && m->idx == i) ? "Not implemented" : Lockmenu_Items[i]);
if(m->idx == i) elements_frame(canvas, 15, 5 + (i * 17), 98, 15);
}
}
+
+ if(m->hint_timeout) {
+ m->hint_timeout--;
+ }
}
}
diff --git a/applications/dolphin/dolphin_views.h b/applications/dolphin/dolphin_views.h
index 8987d829..2f91b69a 100644
--- a/applications/dolphin/dolphin_views.h
+++ b/applications/dolphin/dolphin_views.h
@@ -41,6 +41,8 @@ typedef struct {
int8_t door_left_x;
int8_t door_right_x;
uint8_t exit_timeout;
+ uint8_t hint_timeout;
+
bool locked;
} DolphinViewLockMenuModel;