Skip to content

Move to SDK beta.16: self-arranging ring grid, track colour, alpha text and colour thresholds - #20

Merged
PyFlat-JR merged 3 commits into
mainfrom
feature/sdk-beta16-widgets
Oct 9, 2026
Merged

PyFlat-JR merged 3 commits into
mainfrom
feature/sdk-beta16-widgets

Conversation

@PyFlat-JR

Copy link
Copy Markdown
Member

What does this PR do?

Moves to Macro Deck SDK 3.0.0-beta.16 and uses what Macro-Deck#1250, #1251, #1252 and the new thresholds editor added.

  • Ring panel: one grid that picks its own columns (MinCellSize) instead of six per-aspect copies, so every device is in the tree once. The panel no longer goes blank at about 10 devices; a test builds 30 named devices under the 192 KiB limit.
  • Ring parts (stroke, icon, percentage, inner name) size from the ring's own box (UiLength.OfParent), so they scale with the ring at any widget shape. The tall tile's percentage is no longer cramped.
  • Track colour: with a custom text colour on a custom opaque background, the ring's track is the text colour mixed 20 % into the background, instead of the heavy theme track. Otherwise the theme's track stays.
  • Faint text: names and captions take the text colour at 80 % and 60 % alpha instead of a mix, so they stay fainter over the default tile face and transparent backgrounds too.
  • Colour thresholds: the two level schemes get a threshold bar where users move, recolour, add and remove the colour bands. It replaces the "Low battery at" slider there; the other schemes keep the slider. Until the bar is edited its bands follow "Low battery at" and match the old fixed steps exactly (a test checks every threshold and level). The host saves only the fields the user edits, so the bar does not write "Low battery at" back.
  • Readers older than beta.16 draw the square ring arrangement at every shape, the role colour for faint text and the theme's track.
  • Known trade-off: the reader's column rule optimises for square cells and breaks ties toward fewer columns, so six named rings in a square panel are 2×3 instead of 3×2, and named rings in a tall 1×2 panel are smaller than before.
  • release.yml pins cli-version to beta.16.

Checklist

  • I have read AGENTS.md and CONTRIBUTING.md.
  • dotnet build and dotnet test pass locally (0 warnings, 286 tests).
  • I updated README.md / AGENTS.md if this changes what they describe.
  • If this touches a device backend: I tested it against the real hardware (see below).

Device/hardware tested against (if applicable)

Not a device backend.

@PyFlat-JR
PyFlat-JR merged commit 970fa9e into main Oct 9, 2026
3 checks passed
@PyFlat-JR
PyFlat-JR deleted the feature/sdk-beta16-widgets branch October 9, 2026 17:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant