summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-05-08Systemtask : replace enum SystemTaskState by an enum class.Jean-François Milants
2022-05-08Simplify systemtask statesRiku Isokoski
2022-05-08Disable clip_corner, because it is slow.Riku Isokoski
2022-05-08Fix dropdown graphical issues.Riku Isokoski
The scrollbar would go out of bounds if DROPDOWN_PART_LIST had uneven padding. Also enable clip_corner feature to stop the selected item from overflowing.
2022-05-08Force full screen refresh with a rounder functionRiku Isokoski
When the screen switches, the full screen needs to be refreshed for the hardware scrolling to work. This was enforced with backgroundLabels, but is simpler to do with a rounder function.
2022-05-08Remove lcd from DisplayAppRiku Isokoski
2022-05-04List: add missing array includeReinhold Gschweicher
List.h uses `std::array` as container, but is missing the `<array>` include. Add it to make the header self contained. The `memory` include is unused and can be removed.
2022-04-29Fix large blacklevel step. Lower 25% of shades are now accessible.Riku Isokoski
There is a large step in brightness from level zero to level one. After experimenting with various ST7789 options, I found that decreasing VDV to 0x10 (-0.4V) fixes this issue. The gamma change reduced the average error in brightness, but with the underlying issue fixed, the gamma change has been reverted.
2022-04-25New sharper batteryicon. Remove old unused batteryiconsRiku Isokoski
2022-04-25Fix warningsRiku Isokoski
2022-04-25Replace app_timer with FreeRTOS timersRiku Isokoski
2022-04-25Keep the paddle on screen in wholeReinhold Gschweicher
As suggested in https://github.com/InfiniTimeOrg/InfiniTime/issues/1062 in point 3. The paddle should be kept on screen and not travel out of the screen boundaries. Co-authored-by: Riku Isokoski <riksu9000@gmail.com>
2022-04-25Make functions const againRiku Isokoski
2022-04-25Remove now unused position overrideRiku Isokoski
It gets overridden later anyway
2022-04-25Update track progress in MusicService. Fix #127Riku Isokoski
2022-04-25Improve PTS color matching after gamma changeRiku Isokoski
2022-04-25Tweak gamma on ST7789 and match UI colorsRiku Isokoski
This change will increase the color accuracy of the PineTime and make UI development with the simulator easier.
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-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-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-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