summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-04-25Use centisecondsRiku Isokoski
2022-04-25Stopwatch fixesRiku Isokoski
2022-04-25Fix timer layoutRiku Isokoski
2022-04-25Firmware update screen fixesRiku Isokoski
2022-04-24SpiNorFlash: use C++ style struct in C++ only headerReinhold Gschweicher
`SpiNorFlash.h` is a C++ header, but the `Identification` struct is created in a C style using `typedef struct`. Clang issues a warining about this discrepancy: ``` In file included from /home/nero/repos/pinetime/InfiniSim/InfiniTime/src/systemtask/SystemTask.cpp:13: /home/nero/repos/pinetime/InfiniSim/sim/drivers/SpiNorFlash.h:16:21: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage] typedef struct __attribute__((packed)) { ^ Identification /home/nero/repos/pinetime/InfiniSim/sim/drivers/SpiNorFlash.h:17:9: note: type is not C-compatible due to this default member initializer uint8_t manufacturer = 0; ^~~~~~~~~~~~~~~~~~~~ /home/nero/repos/pinetime/InfiniSim/sim/drivers/SpiNorFlash.h:20:9: note: type is given name 'Identification' for linkage purposes by this typedef declaration } Identification; ^ 1 warning generated. ``` The easy fix is to use a C++ style struct. Also includes code style fix from Riksu9000 Co-authored-by: Riku Isokoski <riksu9000@gmail.com>
2022-04-18Merge branch 'develop' into remove-nm-referenceMax Friedrich
2022-04-18Replace lv_label_set_text where possibleRiku Isokoski
2022-04-18Merge pull request #1009 from ↵Riku Isokoski
NeroBurner/AlarmController_allow_less_precice_system_time AlarmController: allow loss of precision for alarmTime cast
2022-04-18resolved merge conflict after renaming PineTimeStyle to WatchFacePineTimeStylemabuch
2022-04-17Differentiate time adjustment (< 3h for example time zone change when ↵Michele Bini
crossing a border or because of daylight saving) and time setting (for example when the firmware is booted for the first time and the companion app sends the time)
2022-04-17Remove app_timer component from compilationMichele Bini
2022-04-17Switch MotorController and TimerController to FreeRTOS timersMichele Bini
2022-04-17Use FreeRTOS timer for AlarmControllerMichele Bini
2022-04-13Let TouchHandler return TouchEvents instead of driver specific enumReinhold Gschweicher
Let the TouchHandler::GestureGet() function return a TouchEvent instead of the touchpanel-driver specific enum. This helps to move the driver specific helper function `ConvertGesture` from `DisplayApp` into `TouchHandler`.
2022-04-02Replace airplane mode with a bluetooth toggleRiku Isokoski
2022-03-30Steps and heartbeat for analog24 watchfaceMichele Bini
2022-03-30Merge remote-tracking branch 'upstream/develop' into developMichele Bini
2022-03-29AlarmController: allow loss of precision for alarmTime castReinhold Gschweicher
Allow a loss of precision if the system clock has a lower resolution than nanoseconds. This is the case for web assembly.
2022-03-28Timer App : add background label to ensure that the app will be displayed ↵Jean-François Milants
correctly after a full refresh (HW scrolling transition). Code cleaning and rename methods.
2022-03-28DisplayApp : Call the event handler of the current app before loading the ↵Jean-François Milants
new one. This way, we ensure that lv_task_handler() is called before sending event to the newly loaded app.
2022-03-23Analog24 watchfaceHEADdevelopMichele Bini
2022-03-21New changes according to the review : Priority 0 for display, 1 for system, ↵Jean-François Milants
timer and ble host, and 2 for ble LL
2022-03-21Fix priorities of BLE tasksJean-François Milants
2022-03-21In current configuration, the timer task (the one from FreeRTOS) has the ↵Jean-François Milants
lowest priority (0). Both display and system tasks are also set on priority 0. In cases where any other task takes too much time to execute (it can happen in Display Task, see https://github.com/InfiniTimeOrg/InfiniTime/issues/825), the timer task does not have the opportunity to run fast enough to detect and debounce presses on the button. This commit sets the following priorities: - [0] : Display Task - [1] : Timer and System tasks - [2] : BLE Host - [3] : BLE LL This way, we ensure that button presses will always be detected, even if the rendering of the display takes a huge amount of time.
2022-03-21Music app : when title/track name are truncated, add an ellipsis at the end ↵Jean-François Milants
of the strings.
2022-03-21Add missing space in if expression.Jean-François Milants
2022-03-21Limit the size of the track and album name received by MusicService. This ↵Jean-François Milants
should work around this bug : https://github.com/InfiniTimeOrg/InfiniTime/issues/825 and prevent heap over-allocation.
2022-03-14Merge pull request #1038 from NeroBurner/analog_local_variablesJF
WatchFaceAnalog: local date/time variables
2022-03-14Merge pull request #1033 from NeroBurner/music_override_warningJF
Music: fix warning about overridden function
2022-03-14Merge pull request #1034 from NeroBurner/twos_comparison_warningJF
Twos: fix warning about extra paranthesis
2022-03-14WatchFaceAnalog: local date/time variablesReinhold Gschweicher
Use local date and time variables. No need to store them in the object.
2022-03-14WatchFaceAnalog: const ref to dateTimeControllerReinhold Gschweicher
The clock app only reads from the dateTimeController, never modifies it.
2022-03-14DateTimeController: make possible functions constReinhold Gschweicher
MonthShortToString and DayOfWeekShortToString don't change the underlying object. Those are just getters and can be declared `const`.
2022-03-13Twos: fix warning about extra paranthesisReinhold Gschweicher
We have a comparison like `if (( a == b ))`, which is a parenthesis too much, which generates the following warning ``` InfiniTime/src/displayapp/screens/Twos.cpp:133:35: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] if ((grid[newRow][newCol].value == grid[oldRow][oldCol].value)) { ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ InfiniTime/src/displayapp/screens/Twos.cpp:133:35: note: remove extraneous parentheses around the comparison to silence this warning if ((grid[newRow][newCol].value == grid[oldRow][oldCol].value)) { ~ ^ ~ ```
2022-03-13Music: fix warning about overridden functionReinhold Gschweicher
Clang warns on `OnTouchEvent()` function, which is overridden, but is missing the `override` keyword ``` In file included from InfiniTime/src/displayapp/screens/Music.cpp:18: InfiniTime/src/displayapp/screens/Music.h:43:14: warning: 'OnTouchEvent' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] bool OnTouchEvent(TouchEvents event); ^ ```
2022-03-12Rename PineTimeStyle to WatchFacePineTimeStylemabuch
2022-03-09Merge pull request #1026 from NeroBurner/fix_settings_chimesJF
Fix SettingChimes cbOption array size
2022-03-09Merge pull request #1005 from aveeryy/notifications-as-textJF
Terminal watchface: replace notifications icon with a text entry
2022-03-08Fix SettingChimes cbOption array sizeReinhold Gschweicher
There are 3 options, but the array-size is set to 2. This leads to memory corruption in the initialization of the SettingChimes screen when assigning the third option object pointer. Found in https://github.com/InfiniTimeOrg/InfiniSim/issues/11
2022-03-08Update navigation font readme sectionRiku Isokoski
2022-03-08Add ExtraBold font ttfRiku Isokoski
2022-03-08Further updates to font readme.Riku Isokoski
2022-03-08Update font readme, update fonts, add missing filesRiku Isokoski
2022-03-08SystemMonitor: implement FreeRtosMonitor only if trace facility is setReinhold Gschweicher
Split SystemMonitor into h and cpp file and move the logging code of the `Process` function into the cpp file. Depending of the `configUSE_TRACE_FACILITY` define from `src/FreeRTOSConfig.h` create either a "FreeRtosMonitor" or a "DummyMonitor". Make the `Process()` function non-const, as the FreeRtosMonitor changes the member variable `lastTick`. In `SystemTask.h` we then only need to use `SystemMonitor`, without knowledge of the `configUSE_TRACE_FACILITY` define.
2022-03-08Add missing nrf_log.h includes shadowed by SystemMonitor.hReinhold Gschweicher
Some components were missing a `nrf_log.h` include. This missing include was accidentally provided by the SystemMonitor.h header, which was included by Systemtask.h
2022-03-06Remove unnecessary lineavery
2022-03-06Merge branch 'develop' into notifications-as-textavery
2022-03-05Replace notif entry with "You have mail." textavery
2022-03-03removed SetClockFace from watchface ConstructorsYehoshua Pesach Wallach
2022-03-03Settings: more specific read and write modeReinhold Gschweicher
For each filesystem interaction be more specific if we want to read from the file or write to it. Doing a non-creating read on the loading of the settings file, otherwise an empty file could be created, and when reading that empty file for the initial settings I would expect an error (or random data) when reading.