Peter Johanson
2c5d5fde51
refactor: `k_work_queue` API updates.
3 years ago
Peter Johanson
2128b2b55f
refactor(display): Output/layer/battery thread safety.
...
* Submit widget updates to display queue.
* Use mutex to control access to shared state for widgets.
3 years ago
Peter Johanson
063d98e3df
feat(display): Optional dedicated work queue.
...
* Add new Kconfig settingsx to allow selecting system or dedicated
work queue for performing UI updates.
* Allow UI updates to not block other system tasks when display is
updating, especially important for e-ink displays.
3 years ago
Peter Johanson
65ff995033
fix(display): Avoid fault w/ LVGL API usage.
...
* Increment the tick from within the ISR itself.
* Don't call task handler until in the display callback.
PR: https://github.com/zmkfirmware/zmk/pull/736
3 years ago
Pete Johanson
ff7891c097
fix(display): Check for display in idle handler.
...
* Closes #679
4 years ago
Pete Johanson
3368a81057
refactor(core): Combine `is_` and `cast_` event functions.
...
* Use a single `as_foo` generated function to conditionally
return a certain event type from a generic `zmk_event_t*`
pointer.
4 years ago
Pete Johanson
3fe2acc2d1
refactor(core): Extra event payloads to own types, refactor API.
...
* Make it easier to use *just* event payloads by defining the data,
and then having event manager macros generate "wrapper structs"
* Improve is_*/cast_* APIs to hide details of full event struct.
* Create `zmk_event_t` typedef to pass to event handlers.
* Bring event names inline w/ consistent `zmk_` prefix.
4 years ago
innovaker
842aa5a842
refactor: replace filename hyphens with underscores
...
Aligns *.h and *.c to underscore naming convention.
These were kept (with warnings) for backwards compatibility with external boards/shields:
- kscan-mock.h
- matrix-transform.h
They should be removed in the future.
PR: #523
4 years ago
Pete Johanson
b5e17e3b0f
feature(display): Blank display on idle/sleep.
...
* Set display blanking, and stop refresh timer for displays
when the activity state goes to idle/sleep, and resume
when transitioning to active again.
4 years ago
innovaker
00ca0d2f1c
refactor(app): replace `struct device *` with `const struct device *`
...
Replaced with RegExp: /(?<!const )(struct device \*)/g
See: https://docs.zephyrproject.org/latest/releases/release-notes-2.4.html
PR: #467
4 years ago
Pete Johanson
7ea1892bbb
fix(display): All display updates in work thread.
...
* Make sure all LVGL access is from main work thread.
4 years ago
Pete Johanson
b3f3362b50
feat(display): Initial widget/status screen work.
...
* Battery and output status widgets
* Built in status screen combining them.
* Ability to define a custom status screen factory
function.
4 years ago
Pete Johanson
191a2d755a
chore: clang-format the codebase.
...
* Use the LLVM style
* Override indent width (8) and column limit (100)
* Fixes #142 .
4 years ago
Pete Johanson
68e72f9275
fix: Switch to single AUTHORS file.* Closes #164
4 years ago
Pete Johanson
d80063ff51
Initial display support.
4 years ago