summaryrefslogtreecommitdiff
path: root/wasp
AgeCommit message (Collapse)Author
2020-12-13apps: testapp: Automatically report free memoryDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-12apps: testapp: Make the line benchmark use 360 degreesDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-12draw565: Added line drawing functionKozova1
This is the API: drawable.line(x1, y1, x2, y2, color) The function has optimizations for the case of vertical or horizontal lines. Signed-off-by: Kozova1 <mug66kk@gmail.com> [daniel@redfelineninja.org.uk: Minor update to commit message] Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-12apps: snake: Remove redundant importDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-12boards: simulator: Additional testsDaniel Thompson
Start to work (most of) the code paths in the self test application. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-12boards: simulator: Improve spi.write() simulationDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-05apps: settings: Add Scroll Indicatorkozova1
This commit adds a ScrollIndicator widget to the settings app, to help users realize they can scroll there. Signed-off-by: kozova1 <mug66kk@gmail.com>
2020-12-04simulator: Suppress the pysdl2/numpy warningDaniel Thompson
This makes the simulator look nicer when it starts up... but it doesn't help the simulator. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-04simulator: test: Grey box stopwatch testDaniel Thompson
Currently we can act on the controls but we cannot "see" the display in the test suite. That leads us to a slightly odd form of "grey box" testing. It's functionally black box testing but some of the asserts have to reach inside the components instead of looking at the display. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-04simulator: tests: Parameterize the basic app testsDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-12-04simulator: Introduce fully automatic testintDaniel Thompson
Currently the tests do little more than fire up the simulator and switch into (and out of) the built in applications. However this is useful and allows us to fully integrate as a CI job. Unfortunately the numpy warning from pysdl2 mean we have been forced to disable all warnings to prevent pytest from collecting and reporting them. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29Notify level in settings appCarlosgg
Signed-off-by: Carlos Gil Gonzalez <carlosgilglez@gmail.com> [daniel@redfelineninja.org.uk: Fixed board support for simulator and sphinx (a.k.a. doc builder)] Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: snake: Add a snake game applicationJohannes Wache
Signed-off-by: Johannes Wache <jbwa@posteo.de> [daniel@redfelineninja.org.uk: Removed some couple of unwanted merge artifacts] Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: alarm: Add the alarm app to the libraryDaniel Thompson
Like the other library applications this is enabled in the simulator and included in the flash image but is disabled by default to conserve RAM (and to give time to new apps to mature and receive improvements). Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: alarm: Fix touch handling when the alarm is ringingDaniel Thompson
Currently the widgets react to touch when the alarm is ringing (and they are invisible. For now we fix this by disabling the alarm on a touch event. Maybe the app should reject touch events since they could acidentally dismiss the alarm... but we already disable the alarm if we get a swipe event so this doesn't make things much worse than they already are! Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: alarm: Adopt 2-bit RLE for the iconDaniel Thompson
The long term plan is to retire and remove the 1-bit RLE code from wasp-os so we don't want new icons using that encoding. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: alarm: Add Alarm application based on the new alarm systemSiroj42
Signed-off-by: Joris Warmbier <siroj42@t-online.de>
2020-11-29sphinx: icons: Get the doc build working againDaniel Thompson
Fixes: 393dfefc86be ("apps: pager: notifications: Added remove all notifications dialog") Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: pager: notifications: improve swipe handlingDaniel Thompson
Currently the swipe handling added for the confirmation view has a number of prolems: it does not work at all for multi-screen notifications, it interferes with the haptic feedback if we keep swiping down and an up swipe incorrectly dismisses whole notification app. Fix these. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: pager: notifications: dismiss confirmation view on app exitDaniel Thompson
Currently the confirmation view remains active when we switch away from the notification view. Ensure we dismiss when we background the application. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: pager: notifications: fix handling of touch messagesDaniel Thompson
Currently there are detailed hit boxes in the confirmation view widget but any inaccurate hit is treated as No anyway by the notification app. Additionally selecting 'No' dismisses the whole notification app rather than just the confirmation view. Fix the event handling so that we ignore touches outside the hit box and only dismiss the whole notification app if we actually clear the notifications. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29widgets: ConfirmationView: Allow the widget to manage its own visibilityDaniel Thompson
When the buttons are pressed then the widget should be dismissed. There is no reason to make the caller handle that. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: pager: notifications: Fix typo in clear notification messageDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-29apps: pager: notifications: Added remove all notifications dialogAidan Houlihan
Signed-off-by: Aidan Houlihan <aidandhoulihan@gmail.com> [daniel@redfelineninja.org.uk: Minor changes to .gitignore] Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-26apps: settings: Avoid circular dependancies during app initDaniel Thompson
wasp.system cannot be safely be used from app __init__ methods. Move the initial value settings to the foreground method instead. Fixes: b1326e16092b ("apps: settings: Fix initial slider value") Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-26apps: settings: Fix initial slider valuekozova1
When the Settings app is launched, it shows the "Mid" text (this is correct), but the slider is at the lowest position. After moving the slider it functions correctly, so this fix is mostly cosmetic. Signed-off-by: kozova1 <mug66kk@gmail.com>
2020-11-22widgets: clock: Improve the redraw logicDaniel Thompson
Currently if we wake the watch exactly N hours (where N is integer) after it goes to sleep then the time will not be updated. Fix this the obvious way. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-22docs: Wordsmtithing updates after reviewDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-22apps: music: Add to application indexDaniel Thompson
Additionally we rename the screenshot to conform to the naming convention (app.NAME + 'App.png') used for simulator screenshots. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-14[pinetime,p8,k9]: Show when main.py is runningDaniel Thompson
This is yet another step towards making the role of main.py more obvious. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-14apps: testapp: Add an alarm testDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-14apps: steps: Use the alarm system to reset the step counter at midnightDaniel Thompson
This is way better than zeroing it the first time in the day we use the step counter! Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-14manager: Implement alarm callbacks for applications to useDaniel Thompson
Create a simple time queue where actions (functions or bound methods) can be queued against the real time clock. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-12simulator: Enable the music app in the simulatorDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-12icons: Optimize flash size of the music player iconsDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-12apps: music: Fix double track name bugDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-12apps: Add music player app with GadgetBridge supportCarlosgg
Signed-off-by: Carlos Gil <carlosgilglez@gmail.com> [daniel@redfelineninja.org.uk: fix regressions on simulator, disable by default (for now) on real hardware and remove a couple of whitespace changes to existing files] Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-11hrs3300: Defer initialization until the HRS is usedDaniel Thompson
This means hardware failure won't cause the initial boot to fail. This won't stop the heart rate app from crashing when it starts up but at least it will give a comprehensible crash report. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-08docs: Add an Application Library chapterDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-11-04manager: Introduce shared "system bar"Daniel Thompson
Providing a status bar for all apps to use allows us to reduce allocations within the applications. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-25apps: fibonacci clock: Updates to structure like clock appDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-25apps: clock: Simplify and increase commentingDaniel Thompson
The main simplification is to adopt the status bar (with the status bar clock disabled) and to restructure the way draw and redraw are handled. Since the clock application is one of the most popular to customize it has also had extensive commenting added to describe how it works. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21apps: steps: Switch over the status bar widgetDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21apps: stopwatch: Switch over the status bar widgetDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21widgets: status: Add a status bar combo widgetDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21widgets: battery: Fix a redraw bugDaniel Thompson
Currently if the real battery level is <5% then a redraw from scratch will not draw the outline of the battery. Fix this by adding a special case for negative previous states (-1 charging, -2 redraw). Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-21widgets: clock: Add a simple clock widgetDaniel Thompson
This is intended to be reused by any app that shows the clock as part of the status bar at the top of the display. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-20widgets: Rename StatusBar to NotificaitonBarDaniel Thompson
This is not (yet) a useful change but we'll be creating a new StatusBar soon. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-10apps: fibonacci_clock: Nudge the clock down a few pixelsDaniel Thompson
The better manages the space between the battery meter and the clock. Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>
2020-10-10apps: fibonacci_clock: Enable status bar for notificationsDaniel Thompson
Signed-off-by: Daniel Thompson <daniel@redfelineninja.org.uk>