Commit Graph
4 Commits
Author SHA1 Message Date
SalastilandClaude Sonnet 5.5 c026609e4b User footer: muted and deafened are red, the voice buttons stay put on every service, and the status is a popout with a custom status and Apply to all accounts (#290)
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-08 17:54:41 -04:00
SalastilandClaude Opus 5.5 88375ba485 UI screenshot harness for before/after pictures (#326)
scripts/ui-shots.mjs photographs a fixed list of scenes from an isolated copy of the app (scratch home, its own daemon, a fake IRC server with several days of history) and records motion as mp4. Discord-shaped screens come from a test-only state hook that exists only when main is started with MOHO_UI_SHOTS=1. The launch and fake-server code is shared with the layout check in scripts/lib/harness.mjs.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-07 20:52:58 -04:00
SalastilandClaude Sonnet 5.5 6c6de335d1 Layout check finds the channel row by its title: the name no longer carries the #
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-07 18:06:12 -04:00
SalastilandClaude Opus 5.5 53a6f92ae4 Tests for the window: unit tests, and a layout check against the real app
Vitest, with 70 tests across the pure lib modules - formatting (IRC codes,
BBCode, spoilers, emoji and emotes, media and YouTube detection), media URL
resolution including the file-version fragment, the rail and its folders,
mentions, search filters, nick completion, Kick watching, emote and
interruption state - and the media scheme's boundary in the main process,
with Electron stubbed.

scripts/ui-check.mjs runs the built app against a scratch home and a fake
IRC server, opens the emoji picker, the channel, message and member menus
(right-clicked in the window's far corner) and the mentions inbox at two
window sizes, and fails if any of them leaves the window at 80 ms, 400 ms,
1.5 s or 3.5 s. Checked that it fails: with the context menu's clamping
removed it reports every corner-opened menu outside the window.

npm test and the layout check (under xvfb) run in the Linux release job.
#212

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-02 18:07:08 -04:00