Commit graph

291 commits

Author SHA1 Message Date
Riku Isokoski 574434550a Fix slow scroll 2021-07-25 17:59:58 +02:00
Riku Isokoski 1ae22f45f9 Fix cases where Get() isn't used 2021-07-25 17:56:07 +02:00
Riku Isokoski f2f22184b0 Add new unique icons for some apps 2021-07-25 17:55:08 +02:00
Riku Isokoski a69be1520a Add task state info to SystemInfo 2021-07-25 17:52:19 +02:00
Riku Isokoski ec2469a6c1
Code cleanup (#466)
* Code cleanup
* Remove override again
2021-07-25 16:54:05 +02:00
Riku Isokoski e4d9636e82 Merge branch 'develop' into new_touch_handler 2021-07-24 20:26:10 +03:00
Jean-François Milants 926553d043 Merge branch 'fix_touchevent_tap' of git://github.com/Riksu9000/InfiniTime into Riksu9000-fix_touchevent_tap
# Conflicts:
#	src/displayapp/DisplayApp.cpp
2021-07-24 18:46:52 +02:00
Kieran Cawthray b3e3d75d0f Add extra screen in settings to show scrollbar correctly 2021-07-24 14:25:27 +02:00
Riku Isokoski fc93bdbbba Merge branch 'develop' into refresh_rework 2021-07-23 22:56:00 +03:00
Riku Isokoski d666c5004f
Merge branch 'develop' into new_touch_handler 2021-07-23 22:52:08 +03:00
Kieran Cawthray 1ddb1f0832 Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-07-23 15:03:28 +02:00
Riku Isokoski 0a0f28fff4
Make firmware updating more foolproof (#469)
* Make firmware updating more foolproof and fix bugs
* No need to manually handle overflow
* Make startTime TickType_t
* Don't process TouchEvents::None
* Fix sleep getting re-enabled issue more directly
2021-07-22 21:57:45 +02:00
Kieran Cawthray db784fc2fb Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-07-20 15:30:07 +02:00
Riku Isokoski 331fc2be69 Set remaining default periods to LV_DISP_DEF_REFR_PERIOD 2021-07-19 17:06:20 +03:00
Riku Isokoski 97c761a5c7 Refresh rework 2021-07-19 16:26:12 +03:00
Riku Isokoski dc2b5f0c6b Restore Tile.cpp changes 2021-07-19 10:21:42 +03:00
Riku Isokoski 329482f873 Fix remaining known issues 2021-07-16 11:55:29 +03:00
Riku Isokoski baffa1594f Fix gestures 2021-07-16 02:17:17 +03:00
Riku Isokoski 2a3e126390 Fix most issues 2021-07-16 00:07:55 +03:00
Riku Isokoski fe64176e7b New touch handler, with issues 2021-07-15 14:11:27 +03:00
Riku Isokoski 7ac6bdfe71 Merge branch 'develop' into update_touch_driver 2021-07-15 01:03:44 +03:00
Kozova1 57b3397078
Multiple wakeup sources (#290)
* Allow multiple wakeup modes at the same time.

This commit adds multiple wakeup modes support.
It does so by storing them as a uint8_t bitfield enum.
It changes the following functions:

Since multiple modes can be on now, older version would not cut it:
WakeUpMode getWakeupMode() -> std::bitset<3> getWakeUpModes()
Where each bit corresponds to a WakeUpMode

We still need a way to check whether a specific wakeup mode is on, so:
bool isWakeUpModeOn(const WakeUpMode mode)

This function was changed to work correctly with the new implementation.
setWakeUpMode(WakeupMode mode, bool enable)

Previously, systemtask would exit SystemTask::OnTouchEvent() if the wake
up mode was None or RaiseWrist, to prevent waking up when a touch was
received. However, after enabling using multiple WakeUpModes, this
caused a bug where when RaiseWrist was checked with SingleTap or
DoubleTap, the tap detection wouldn't work.

This commit fixes that bug.

Next commit will update the settings WakeUpMode select UI to reflect these changes.

Signed-off-by: Kozova1 <mug66kk@gmail.com>

* Updated UI to reflect multiple WakeUp sources being available.

Signed-off-by: Kozova1 <mug66kk@gmail.com>
2021-07-14 20:51:51 +02:00
Riku Isokoski 5bc40c9287 Update touchpad driver 2021-07-14 17:11:16 +03:00
Riku Isokoski 95b8a56dd4 Merge branch 'develop' into fix_touchevent_tap 2021-07-14 09:59:56 +03:00
Jean-François Milants e2efb193c4 Merge branch 'lvgl_use_system_tick' of https://github.com/Riksu9000/InfiniTime into Riksu9000-lvgl_use_system_tick
# Conflicts:
#	src/displayapp/screens/BatteryInfo.cpp
#	src/displayapp/screens/BatteryInfo.h
2021-07-13 20:53:40 +02:00
Jean-François Milants 3e70554844 Merge branch 'develop' into notify-battery-level
# Conflicts:
#	src/displayapp/screens/BatteryInfo.cpp
2021-07-13 20:31:26 +02:00
Kieran Cawthray db99ac88d9 Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-07-12 13:01:11 +02:00
Jonathan Vander Mey 4f378e8726
Refactor trig functions into LUT (#476)
Replaced the use of the standard library trig functions with a LUT-based
implementation instead. The standard library implementations produce
more accurate results but the usage here doesn't need that. This ends up
saving nearly 7kB of binary size.
2021-07-11 20:18:07 +02:00
kieranc 748e31421d
Modify status text in BatteryInfo so it fits on screen (#437)
* Modify status text in BatteryInfo so it fits on screen
2021-07-11 17:48:16 +02:00
Jean-François Milants e21f6a7f41 Notify battery level every 10 minutes when connected to a BLE host.
Refactor battery percent : only use uint8_t to store the battery % remaining.
2021-07-11 16:55:06 +02:00
kieranc 6a91b83b12
Change step gauge range to 100 and calculate progress as percantage (#468) 2021-07-11 15:08:23 +02:00
Riku Isokoski 99e26bdd4c LVGL use system tick 2021-07-07 15:47:47 +03:00
Riku Isokoski 61a4642221
Improve stopwatch (#432)
* Improve stopwatch more

* Make sure sleep gets reenabled

* Cleanup and clang-format
2021-07-04 20:23:03 +02:00
Avamander ab59b9b830
Whitespace and brace fixes (#456)
* Brace style and whitespace fixes

* Additional whitespace fixes
2021-07-04 20:06:50 +02:00
Riku Isokoski 3b0fcc2a73 clang-format 2021-07-04 20:05:39 +02:00
Riku Isokoski 94aefed98f Condense firmware validation code 2021-07-04 20:05:39 +02:00
Riku Isokoski 217f16d189 Improve paddle game 2021-07-03 10:40:30 +02:00
Bryton Hall 4e435e93e0
and metronome icon (#439)
* add drum icon for metronome app
2021-07-02 17:34:32 +02:00
Riku Isokoski 38f40034b0
Float voltage to int (#444)
* Change voltage float to millivolt integer
* Explain the ADC to milliVolts conversion
2021-07-02 17:30:32 +02:00
Riku Isokoski 7075b7f264 Fix call notification button alignment 2021-07-02 17:20:58 +02:00
Avamander bdb5965f1a static_cast cleanup 2021-07-02 16:27:41 +02:00
Avamander 2f479e5fc7 Fixed a bunch of format specifiers 2021-07-02 16:27:16 +02:00
Kieran Cawthray 2edf41be8e Fix bad merge 2021-06-29 21:15:39 +02:00
Kieran Cawthray 4f21748aa2 Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-06-29 21:10:36 +02:00
kieranc f317d54218
Add PineTimeStyle watchface (#334)
* PineTimeStyle
* Move GPL license header
* Add step count gauge - replaces heartrate in sidebar
* Enable 12/24h functionality
* Set step gauge outer to be white when step goal is reached
* Add font source file
* Move static needle_colors array to member variable
* Add documentation on generating a font
* Replace .ttf with Google version, add link to font page

Co-authored-by: JF002 <JF002@users.noreply.github.com>
2021-06-29 20:20:27 +02:00
Kieran Cawthray 660a8597f6 Add reset button, reduce button opacity 2021-06-27 15:24:17 +02:00
Neil O'Fix 0045fb16b6
SPI flash sleep if bootloader >= 1.0.0 (#322)
* Retrieve and display bootloader version
- Display bootloader version on System Info screen
- Enable SPI flash sleep mode if bootloader version >= 1.0.0
* Wait for SPI flash to wakeup before starting OTA DFU
2021-06-26 20:53:32 +02:00
Kieran Cawthray 6889cf1ed8 Fix the fix, whoops 2021-06-25 21:55:51 +02:00
Kieran Cawthray 800daecf90 Add a check to set default colors if all colors are white 2021-06-25 21:36:55 +02:00
Kieran Cawthray f3b40cb7a6 Make it loop around when you get to the end of the list of colors 2021-06-25 19:04:29 +02:00
Kieran Cawthray be22a9b1b8 Fix off-by-one error, reduce step gauge needle width 2021-06-25 15:09:18 +02:00
Kieran Cawthray 878dd1a776 Use colors from settings for PineTimeStyle watchface 2021-06-25 14:58:45 +02:00
Kieran Cawthray 50b92e5dd6 Move array to member variable, retrieve colors from settings for display 2021-06-25 14:47:56 +02:00
Kieran Cawthray d5d8438b60 Merge remote-tracking branch 'upstream/develop' into pinetimestyle-colorpicker 2021-06-25 08:48:16 +02:00
Kieran Cawthray 8f16574992 PineTimeStyle color picker tidying 2021-06-24 21:51:23 +02:00
Kieran Cawthray 7edfc53481 PineTimeStyle color picker add settings integration 2021-06-24 21:49:04 +02:00
Kieran Cawthray 38ab0add48 PineTimeStyle color picker initial commit 2021-06-24 19:15:23 +02:00
Kieran Cawthray 14721e8f1e Move static needle_colors array to member variable 2021-06-23 22:14:34 +02:00
Jonathan Vander Mey ef999e8dd3
Fix typo in variable names (#430) 2021-06-22 20:34:46 +02:00
Avamander 572be3e857
Removed an illogical comparison from SystemInfo and St7789 driver (#449)
* Removed an illogical comparison
2021-06-22 20:31:31 +02:00
Kieran Cawthray be505fc15f Set step gauge outer to be white when step goal is reached 2021-06-21 20:06:47 +02:00
Kieran Cawthray 266573deff Enable 12/24h functionality 2021-06-20 21:57:28 +02:00
Kieran Cawthray 607af27ba8 Add step count gauge - replaces heartrate in sidebar 2021-06-20 21:53:09 +02:00
Kieran Cawthray b130ffa39c Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-06-20 21:46:51 +02:00
JF002 c6dca25b9f
Add support for BMA425 acceleration sensor. (#440)
* Add support for BMA425 acceleration sensor.
2021-06-19 20:27:59 +02:00
hassless 84a6c88e98
Merge branch 'JF002:develop' into improve-battery-percentage-to-battery-icon-mapping 2021-06-18 17:17:26 +02:00
Kieran Cawthray f5d756928f Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-06-16 16:33:34 +02:00
Jean-François Milants d6fcbe960e Fix build issues since Metronome app has been merged. 2021-06-12 15:14:14 +02:00
Bryton Hall c575754b42
add basic metronome app (#409)
* add basic metronome app

* add bpb, tap to bpm, update widgets

* use event pressed for bpm tap

* move case statement break to the right place

* narrow bpm selection range, override touch events

* fix arc knob style

* re-enable sleeping in destructor
2021-06-12 15:06:58 +02:00
JF002 58a8507b3d
Merge pull request #405 from Riksu9000/improve_stopwatch
Improve stopwatch
2021-06-12 14:27:51 +02:00
Jean-François Milants d7962617e4 Clock : initialize the actual clockface in initialization list instead of in the core of the ctro(). 2021-06-12 14:21:29 +02:00
JF002 17c6583937
Merge pull request #425 from Raupinger/remove-watch-tap
Remove tap to switch Watchfaces
2021-06-12 14:15:32 +02:00
Avamander 314a8ebba0
Changed the namespace of SystemInfo::sortById to avoid a name conflict (#360) 2021-06-12 11:18:19 +02:00
Riku Isokoski bf906bd573
Fix scrollbar (#382) 2021-06-12 11:12:39 +02:00
Riku Isokoski 239b5547ea Fix another regression 2021-06-11 14:55:37 +03:00
Riku Isokoski 123c6f1917 Fix touchevent tap 2021-06-11 13:26:28 +03:00
Florian 049174bd35 replace ScreenList with a single screen in Clock. This removes the tap to switch feature 2021-06-11 01:15:32 +02:00
Jean-François Milants b1925ff286 Minor improvements: use std::make_unique when creating unique_ptr, check the code is running from an IRQ before calling xQueueSendFromISR or xQueueSend) 2021-06-10 21:20:27 +02:00
hassless d0df278b0b
Update BatteryIcon.cpp
Improvement to the mapping of battery percentage to the battery icon to be displayed.
2021-06-09 13:47:22 +02:00
Jean-François Milants 7f9cc51b05 Initialize SystemTask, DisplayApp and HeartRateTask as global static variable instead of variables on the heap. We don't need them on the heap as we know their size at build time, it'll reduce memory fragmentation and it'll make memory analysis easier. 2021-06-06 15:56:03 +02:00
Kieran Cawthray f2d01166c3 Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-06-04 08:57:40 +02:00
JF002 79f0fcb07a
Add the maximum memory used by LVGL in SystemInfo app. This will help the developers to size the memory buffer allocated to lvgl. (#408) 2021-06-01 21:03:29 +02:00
JF002 287399f993
Navigation app: reduce memory usage (#362)
* Navigation app:
 - Renaming and reformatting according to coding conventions
 - declare iconMap as constexpr and use char* instead of std::string

This reduces the flash usage from 424644B to 419344B (-5300B)!
2021-06-01 21:01:32 +02:00
Riku Isokoski c6969268fc Keep button visible, but disabled 2021-05-26 16:13:40 +03:00
Riku Isokoski b393105082 improve ui and optimize code 2021-05-26 15:15:10 +03:00
Kieran Cawthray 565601ef50 Merge remote-tracking branch 'upstream/develop' into pinetimestyle 2021-05-21 14:34:25 +02:00
Florian 13e3463276
Timer App (#355)
* built timer app

* Style improvements

* making sure buttons stay hidden when the app is reopened and reappear after the timer runs out

* more sensible calculations of time deltas. eliminated that mysterious scaling factor

* changing the timer icon
2021-05-20 20:43:54 +02:00
Florian 8c3b250dbf
removed an empty assignment that caused a compiler warning (#372) 2021-05-20 20:34:21 +02:00
Kieran Cawthray 5c413016a7 Move GPL license header 2021-05-19 17:27:42 +02:00
Kieran Cawthray 249b6db6f5 Remove newline modifications 2021-05-19 17:05:33 +02:00
Kieran Cawthray 5daaa5cf75 Tidying/formatting fixes 2021-05-19 11:03:33 +02:00
Kieran Cawthray 108bbc3642 Fix it again.. 2021-05-18 18:03:26 +02:00
Kieran Cawthray 6a92529272 Revert "Reset"
This reverts commit 378fa6b401.
2021-05-18 17:45:16 +02:00
Kieran Cawthray a4968b5029 PineTimeStyle 2021-05-18 15:33:25 +02:00
Kieran Cawthray 378fa6b401 Reset 2021-05-18 15:33:25 +02:00
JF002 5b2472c4bc
Merge pull request #347 from jedi2light/feature-show-git-commit-hash-short
Feature: Store and show git short ref on PineTime alongside other firmware information
2021-05-16 11:37:39 +02:00
Florian Kraupa 9e8dd9a1e6 NotificationItem now also redefines the start of the timeout 2021-05-16 00:42:31 +02:00
Florian Kraupa 56af4a0b83 cleaned up the code and reduced the size of the diff by removing things like additional whitespaces 2021-05-16 00:42:31 +02:00
Florian Kraupa 5da65494b3 only activate the timeout on call notification previews after they have been interacted with 2021-05-16 00:42:31 +02:00
Florian Kraupa d13dd6dee3 implemented continuous vibration pattern for incoming calls 2021-05-16 00:42:31 +02:00