From d8d744eaf53fcbe1b2f5e596609b1bdf51e4108a Mon Sep 17 00:00:00 2001 From: Seanathon Date: Wed, 19 Aug 2026 04:28:28 -0700 Subject: [PATCH] =?UTF-8?q?fix(ui):=20drawer=20polish=20=E2=80=94=20themed?= =?UTF-8?q?=20select=20carets,=20centred=20view=20controls?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three things reported from the drawer on a real phone, plus one found while verifying them. Select carets were native, so every engine drew its own: white on macOS Chrome and Firefox (they honour color-scheme), BLACK on iOS Firefox (it does not), each with its own inset that sat the arrow almost against the border. Replaced with a drawn chevron that swaps per theme, with real right padding. Also sets `color-scheme` on the root, so the OPEN dropdown list and scrollbars follow the app's theme instead of the OS — a dark app was getting a white option list. The VIEW controls were not centred: .view-btn and .theme-toggle only centre on the cross axis, so once given a min-width their icons sat left-aligned in the box. The sort select now takes its own full-width line (at ~292px of drawer width it could not share a row with both icon controls without crushing "Recently added") and the two icon controls sit below it, all 44px, icons centred. The branch elbow under the active board reached 8px up into the pill's rounded corner and crossed it, which showed badly in light mode. It now starts at the 2px row gap and is painted accent, so it reads as one continuous gesture from the selected board into its action. Found while verifying: openDrawer added its .open class inside a requestAnimationFrame. rAF is throttled in a backgrounded or occluded tab, so the class could fail to land and leave a focus-trapped dialog rendered off-screen with `hidden` already false. Forces a reflow and opens in the same task instead. Also gives the ⚙ glyph a U+FE0E variation selector so iOS renders it as text rather than a colour emoji, which is what it was doing in the reported screenshot. 591 tests green. Verified in both themes at 400px and on desktop: all five selects carry the themed caret, no console errors, drawer closes and releases the scroll lock on every board switch. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01C83mrW9X8zBLY1sSZRgdCa --- public/index.html | 65 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 53 insertions(+), 12 deletions(-) diff --git a/public/index.html b/public/index.html index a006f00..7d2f829 100644 --- a/public/index.html +++ b/public/index.html @@ -27,6 +27,11 @@