| Age | Commit message (Collapse) | Author |
|
As we enrich the navigation options we will increasinly need to visualize
between apps where up/down will switch us between rings and there
up/down is needed to scroll through content.
|
|
We will shortly be adding machinary to handle application errors more
gracefully. This is a useful way to force an application error!
|
|
Making callbacks optional reduces pointless boilerplate in applications.
|
|
These defaults are good for giving quick UI feedback.
|
|
This might be a reasonable preference for the setings but, more importantly,
we can also set blank_after to very high values to ensure the watch doesn't
sleep during the voice over in videos!
|
|
Debounce was a lousy name...
|
|
This gives the simulator a more natural feel since the "swipe left" action
usually means "more a screen to the right". This will probably make
testing games impossible but makes it much easier to navigate the menus.
|
|
The main reason to reset the drawing context is so that it can be reset
before we call foreground() on an application.
|
|
Here the biggest changes are in the test application because we
refactor a number of the tests to make better use of the button.
Although applications may consume button events it does have a
default behavior which is to switch to the default application
(usually the clock).
|
|
After a bit of testing I have not yet come up with a fast, visually
acceptable horizontal animated effect. Instead we simply reply on
screen blanking during the redraw... meaning there is no need for an
effect hint.
|
|
As it turned out Direction was only a Direction because there were things
missing from the enumeration!
|
|
Pulling this out into a method allows it to be called by an application.
|
|
|
|
|
|
|
|
|
|
This is a big change that break compatiblity with existing applications
*and* with existing installed versions of main.py.
When upgrading it is import to update main.py:
./tools/wasptool --upload wasp/main.py
|
|
This is something of an experiment but now the app roll is traversed using
horizontal swipes and applications should primarily use vertical swipes
to navigate internally. This is mostly because if "feels" better but it
also leaves the vertical scrolling hardware available for use by the
app.
|
|
This is a useful but modest optimization (maybe 3% in string
rendering.
|
|
This makes line-by-line drawing more efficient because don't have to
handle the dc line. The optimization targets font rendering and if good
for slightly less than 10% rendering improvement.
|
|
This is a big one... more than 4x increase in font rendering performance!
|
|
|
|
Moving it from applications into the watch is useful for two reasons.
Firstly it means applications don't need to know as much about the
display color depth and secondly it makes it easier to replace the
drawing routines with wasptool.
|
|
|
|
|
|
|
|
|
|
|
|
We now generate documentation for everything included in the PineTime
manifest (although, at this stage, not everything in the manifest has
all the required docstrings).
|
|
|
|
At this point we are starting to bring an event model for applications
but there's still a long way to go!
|
|
This is the first step in starting to formalize the seperation of
applications from the system manager.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In addition to the fix (which is simple) we also modify the button handling
of the simulator because, rather by acident, it relies on the bugs in the
battery meter redraw to ensure the simulator stays active.
|
|
The simulator board does rather too much when we import watch.py. This
change means we don't need SDL just to generate the documentation!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Migrate the filling of the line buffer into a seperate function.
This does naturally reduce the cost of the loop management but
much more importantly allows us to use viper native code
generator.
|