Commit graph

127 commits

Author SHA1 Message Date
bunnie
a4316e2aa7 add dry-run api to gfx
dry-runs are useful for warming up "hot paths" in UI code
to improve latency. This is specifically a feature for tuning
interactions on systems that have swap memory.
2026-05-24 00:45:13 +08:00
bunnie
4d505f188d add non-blocking version of screen brightness dimming
this is useful for dimming "animations" where it's not
critical if a dimming step is missed and you're spamming
the graphics server with dim requests
2026-05-05 23:54:06 +08:00
bunnie
4d1dc33ef1 add a diffusive transition option to the graphics library
makes changing between bitmaps less jarring
2026-04-23 15:14:27 +08:00
bunnie
4102cfd3a5 move locales macro to blitstr2
this keeps font features in a single crate
2026-04-23 00:33:47 +08:00
bunnie
1ce29e80fa add ability to flip rendering of sh1107 screen
this allows a device to be flipped upside-down and have
the screen track orientation
2026-04-07 00:36:39 +08:00
bunnie
13cdb9d64b cleanup qr code rendering 2026-04-02 03:48:49 +08:00
bunnie
3993a0dc88 'fix' for timeout issue on SPIM during display writes
occassionally the hardware block just goes unresponsive. the
'fix' is to reset it, and then re-initialize the interface.

I suspect this has to do with the UDMA silently dropping transactions
when there's too much contention on the bus.
2026-03-30 23:34:25 +08:00
bunnie
73021cb2ed add brightness setting function 2026-03-23 18:33:43 +08:00
bunnie
0252961d6b add a Dynamic trait wrapper around the FrameBuffer type
this allows us to pass it through APIs that need dynamic traits.
also fix typo on 0,0 location
2026-03-23 17:22:28 +08:00
bunnie
4f37317427 add bitmap rendering API for baosec targets 2026-03-23 14:52:00 +08:00
bunnie
3f869ca389 bump utralib version for publication 2026-01-29 19:12:00 +08:00
bunnie
88ccc7e042 fully specify the bao1x target on blitstr2 for bao1x builds 2026-01-29 18:58:55 +08:00
bunnie
1db717a63f add put_pixel_unchecked() trait in API
this is for implementing checked, higher-performance loops
like blits.
2026-01-27 22:09:37 +08:00
bunnie
f7c00eb985 fix some rendering artifacts and add todo's on the QR code rendering 2026-01-27 22:04:51 +08:00
bunnie
fba011db3a commit version bump so that we may publish our packages 2026-01-08 03:04:19 +08:00
bunnie
444d7b310e re-enable keyboard bouncer inside bao-video hosted mode 2025-12-24 13:14:48 +08:00
bunnie
d874c3e5c2 commit for version bump 2025-12-16 02:02:37 +08:00
bunnie
df3529d595 add power down/up opcodes to the gfx layer 2025-12-11 02:21:40 +08:00
bunnie
8269f9f759 update apis to accommodate power savings mode 2025-12-11 02:10:25 +08:00
bunnie
4e0b67878a remove old code 2025-12-07 19:00:29 +08:00
bunnie
ebb7e8dfae refactor QR code notification implementation
Previous implementation sent the QR code as draw commands.
This is inefficient as it would require hundreds of draw
commands to be sent per QR code rendered.

This implementation codes the QR code as a bool and sends
it in a single memory message, and implements a QR code renderer
on the receiver side.

The QR code rendering is also cleaned up so that the QR code is
always centered and takes the full screen, to give the best
conditions for someone scanning the code from another device.
2025-12-07 18:58:33 +08:00
bunnie
852a12645b round out stateful list creation in the ux-api libraries 2025-11-30 21:33:04 +08:00
bunnie
106f7153a1 filter key presses through the video layer
the video layer is the "traffic cop" managing when modals
get focus. This patch creates a feed from the video layer
that listers to subscribe to that filters out key presses
destined for modals.
2025-11-28 18:40:56 +08:00
bunnie
738797754b make widgets respond to the "fire" button 2025-11-28 18:40:33 +08:00
bunnie
720680a931 build a hosted mode dummy for aqcuire qr 2025-11-27 22:10:57 +08:00
bunnie
74134bfac2 add ux-api acquisition features 2025-11-27 16:52:44 +08:00
bunnie
765a36bd3a add option to defer draw updates
this is helpful for composited UIs
2025-11-25 19:07:32 +08:00
bunnie
94964f12a2 reduce debug noise 2025-11-12 17:46:38 +08:00
bunnie
0d1105fb25 fix index selection in menus 2025-11-12 16:26:35 +08:00
bunnie
564374dfd3 cleanup menu implementation warnings and shallow bugs 2025-11-12 15:28:11 +08:00
bunnie
c168c7d720 update ui to use builder pattern 2025-11-12 15:26:17 +08:00
bunnie
785293a440 add menu widget implementation 2025-11-12 13:15:07 +08:00
bunnie
dbb0a75118 bump versions
have to absorb a version change due to xous-semver change

might as well also update the utra/svd generator dependencies
since that's been held off for a long time now.
2025-10-06 13:23:18 +08:00
bunnie
95f192ca38 add dabao target 2025-10-05 17:15:05 +08:00
bunnie
346d7cd4d4 indicate the space for the marquee line on the boot logo 2025-10-01 14:28:45 +08:00
bunnie
03744c2dca ops are no-std stafe 2025-10-01 14:28:13 +08:00
bunnie
1255bf12d9 FLAG DAY: fix all names to harmonize around 'bao1x'
The code base had evolved through several code names, interim
names, company names and chip names that alternatively did or did
not exist.

Baochip is the definitive name of the company, and the Baochip1x
(full part number BAO1X2S4F-WA) is the definitivey part number of
the SoC. For convenience, the part number is shortened to 'bao1x'
in most feature flags and variable references.

This commit fixes all of the odd names and removes some unmaintained
early targets.
2025-09-18 21:25:51 +08:00
bunnie
0b07c58336 compactify the slider layout
this saves some empty vertical space allowing for more info
on the screen while sliders happen
2025-05-23 12:56:32 +08:00
bunnie
f8bbf97724 clean up draw list handling
our implementantation of Buffer can't (currently) dynamically grow
the size of the object to serialize things that are bigger than
a page, so we have to enforce Vec-like objects to have a serialized
size of less than the page limit.

This is a bit of a moving target because it depends on implementation
specific details. A conservative bodge was put in to try and
work around this problem for now.
2025-05-23 12:34:55 +08:00
bunnie
4c1933414c fix off-by-one error in clip rect definition 2025-05-23 10:54:55 +08:00
bunnie
e2379821e6 republish xous-rs to fix cargo test 2025-05-11 15:36:17 +08:00
bunnie
8a4959056b bump version for xous crate update - commit so we can publish crates 2025-05-11 14:45:24 +08:00
bunnie
eb7a861def Merge branch 'pddb-feat-down' of github.com:betrusted-io/xous-core into pddb-feat-down 2025-04-29 22:31:40 +08:00
bunnie
18de29f7a7 improve compatibility of api signatures 2025-04-29 22:27:59 +08:00
bunnie
bad5259f43 base64 should be an optional dependency in std
otherwise the loader breaks
2025-04-29 03:32:59 +08:00
bunnie
cb35696200 Merge branch 'main' of github.com:betrusted-io/xous-core into cram-dev 2025-04-29 03:18:57 +08:00
bunnie
26464d4266 fix vertical scrollbar drawing offet bug 2025-04-29 03:10:41 +08:00
bunnie
ae5ff3addd add strings for bip39 entry in small screen mode 2025-04-29 03:02:09 +08:00
bunnie
14740d0cc1 add a numeric-priority mode to the OSK
if the pre-populated field looks numeric, prioritize numbers
over letters for the OSK.
2025-04-29 03:01:29 +08:00
bunnie
0e5410eb36 add more convenience apis 2025-04-29 03:01:10 +08:00