Skip to content

Commit 049174b

Browse files
author
Florian
committed
replace ScreenList with a single screen in Clock. This removes the tap to switch feature
1 parent 79f0fcb commit 049174b

2 files changed

Lines changed: 23 additions & 20 deletions

File tree

src/displayapp/screens/Clock.cpp

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -32,22 +32,25 @@ Clock::Clock(DisplayApp* app,
3232
notificatioManager {notificatioManager},
3333
settingsController {settingsController},
3434
heartRateController {heartRateController},
35-
motionController {motionController},
36-
screens {app,
37-
settingsController.GetClockFace(),
38-
{
39-
[this]() -> std::unique_ptr<Screen> {
40-
return WatchFaceDigitalScreen();
41-
},
42-
[this]() -> std::unique_ptr<Screen> {
43-
return WatchFaceAnalogScreen();
44-
},
45-
// Examples for more watch faces
46-
//[this]() -> std::unique_ptr<Screen> { return WatchFaceMinimalScreen(); },
47-
//[this]() -> std::unique_ptr<Screen> { return WatchFaceCustomScreen(); }
48-
},
49-
Screens::ScreenListModes::LongPress} {
50-
35+
motionController {motionController} {
36+
37+
switch (settingsController.GetClockFace()) {
38+
case 0:
39+
screen = WatchFaceDigitalScreen();
40+
break;
41+
case 1:
42+
screen = WatchFaceAnalogScreen();
43+
break;
44+
/*
45+
// Examples for more watch faces
46+
case 2:
47+
screen = WatchFaceMinimalScreen();
48+
break;
49+
case 3:
50+
screen = WatchFaceCustomScreen();
51+
break;
52+
*/
53+
}
5154
settingsController.SetAppMenu(0);
5255
}
5356

@@ -56,12 +59,12 @@ Clock::~Clock() {
5659
}
5760

5861
bool Clock::Refresh() {
59-
screens.Refresh();
62+
screen->Refresh();
6063
return running;
6164
}
6265

6366
bool Clock::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
64-
return screens.OnTouchEvent(event);
67+
return screen->OnTouchEvent(event);
6568
}
6669

6770
std::unique_ptr<Screen> Clock::WatchFaceDigitalScreen() {

src/displayapp/screens/Clock.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
#include <chrono>
55
#include <cstdint>
66
#include <memory>
7+
#include <components/heartrate/HeartRateController.h>
78
#include "Screen.h"
8-
#include "ScreenList.h"
99
#include "components/datetime/DateTimeController.h"
1010

1111
namespace Pinetime {
@@ -47,7 +47,7 @@ namespace Pinetime {
4747
Controllers::HeartRateController& heartRateController;
4848
Controllers::MotionController& motionController;
4949

50-
ScreenList<2> screens;
50+
std::unique_ptr<Screen> screen;
5151
std::unique_ptr<Screen> WatchFaceDigitalScreen();
5252
std::unique_ptr<Screen> WatchFaceAnalogScreen();
5353

0 commit comments

Comments
 (0)