Skip to content

v0.1.11

Choose a tag to compare

@cristianonescu cristianonescu released this 23 May 16:07
· 2 commits to main since this release

Bug fixes

Two related bugs that only surface when you have some pages disabled
in Settings → Pages.

Bug A: footer "X/Y" counter was wrong with pages hidden

The page indicator at the bottom of the screen used the raw 8-slot
total as the denominator and the slot index as the numerator. So a
user with 5 pages enabled would see e.g. "6/8" instead of "3/5".

Fix: two new helpers in firmware/src/main.cpp
enabled_page_count() and enabled_ordinal_for_slot(slot) — count
and locate the current slot among enabled pages. The footer now reads
correctly regardless of which pages you've disabled.

Bug B: title and content disagreed during/after page transitions

When you reordered pages or disabled some of them, the transition
animation's final frame indexed kPages[s_to_slot] treating a slot
index as a page id. With a non-identity page order, the wrong page's
title and renderer ran during the transition.

Reported symptom: title says "Calendar" but the content shows the
System page's "TOP CPU" rows + a leftover Tips "SUGGESTIONS" header —
three pages worth of stuff overlapping on one screen.

Fix: removed the inline final-frame draw in both wipe and
home-zoom transitions. The transition now just clears the content
band and hands off to the main loop's draw_all(), which already
does the correct slot→page-id resolution via page_id_at_slot() and
uses the fixed footer helpers. Eliminates the entire class of
"draw differently in transition vs. steady-state" bug.

Upgrading

The fixes live in firmware. Update via Settings → Updates → "Update
firmware"
. Your existing pages config, auto-advance preference,
theme, thresholds — all preserved.

After flashing, disable a few pages from Settings → Pages and watch
the footer counter update correctly + page transitions land on the
right page.

Other notes

No protocol changes, no Electron UI changes, no agent changes. Pet
install, auto-advance, Anthropic OAuth — everything from v0.1.10
continues to work identically.

Diagnosed jointly with the codex agent. All 3 firmware envs compile
clean. 165/165 agent tests pass.