11#include " displayapp/screens/Timer.h"
2-
32#include " displayapp/screens/Screen.h"
43#include " displayapp/screens/Symbols.h"
54#include < lvgl/lvgl.h>
65
76using namespace Pinetime ::Applications::Screens;
87
98static void btnEventHandler (lv_obj_t * obj, lv_event_t event) {
10- Timer * screen = static_cast <Timer*>(obj->user_data );
9+ auto * screen = static_cast <Timer*>(obj->user_data );
1110 screen->OnButtonEvent (obj, event);
1211}
1312
14- void Timer::createButtons () {
13+ void Timer::CreateButtons () {
1514 btnMinutesUp = lv_btn_create (lv_scr_act (), nullptr );
1615 btnMinutesUp->user_data = this ;
1716 lv_obj_set_event_cb (btnMinutesUp, btnEventHandler);
@@ -51,6 +50,12 @@ void Timer::createButtons() {
5150
5251Timer::Timer (DisplayApp* app, Controllers::TimerController& timerController)
5352 : Screen(app), running {true }, timerController {timerController} {
53+ backgroundLabel = lv_label_create (lv_scr_act (), nullptr );
54+ lv_obj_set_click (backgroundLabel, true );
55+ lv_label_set_long_mode (backgroundLabel, LV_LABEL_LONG_CROP);
56+ lv_obj_set_size (backgroundLabel, 240 , 240 );
57+ lv_obj_set_pos (backgroundLabel, 0 , 0 );
58+ lv_label_set_text (backgroundLabel, " " );
5459
5560 time = lv_label_create (lv_scr_act (), nullptr );
5661 lv_obj_set_style_local_text_font (time, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, &jetbrains_mono_76);
@@ -71,7 +76,7 @@ Timer::Timer(DisplayApp* app, Controllers::TimerController& timerController)
7176 lv_label_set_text (txtPlayPause, Symbols::pause);
7277 } else {
7378 lv_label_set_text (txtPlayPause, Symbols::play);
74- createButtons ();
79+ CreateButtons ();
7580 }
7681
7782 taskRefresh = lv_task_create (RefreshTaskCallback, LV_DISP_DEF_REFR_PERIOD, LV_TASK_PRIO_MID, this );
@@ -98,7 +103,7 @@ void Timer::OnButtonEvent(lv_obj_t* obj, lv_event_t event) {
98103 minutesToSet = seconds / 60 ;
99104 secondsToSet = seconds % 60 ;
100105 timerController.StopTimer ();
101- createButtons ();
106+ CreateButtons ();
102107
103108 } else if (secondsToSet + minutesToSet > 0 ) {
104109 lv_label_set_text (txtPlayPause, Symbols::pause);
@@ -152,10 +157,10 @@ void Timer::OnButtonEvent(lv_obj_t* obj, lv_event_t event) {
152157 }
153158}
154159
155- void Timer::setDone () {
160+ void Timer::SetDone () {
156161 lv_label_set_text (time, " 00:00" );
157162 lv_label_set_text (txtPlayPause, Symbols::play);
158163 secondsToSet = 0 ;
159164 minutesToSet = 0 ;
160- createButtons ();
165+ CreateButtons ();
161166}
0 commit comments