Show screenshots in the README #6

Merged
SkyfaR merged 2 commits from readme-screenshots into main 2026-09-30 21:12:04 +02:00
Owner

Adds screenshots to the README: the dashboard, the game library, the first step of the migration wizard, and the
dashboard in the light theme.

How they are taken

scripts/screenshots.sh runs the real desktop app on a headless Broadway display with a made-up home folder below
target/screenshots/: two Steam libraries with invented games, their analyses and compression records, an enabled
timer, and stand-ins for lsblk and systemctl that report made-up drives and the timer. An ignored test of the app
(src/gui/window/screenshots.rs) switches pages and themes and draws the window into PNG files with GSK's Cairo
renderer. It refuses to run unless the home folder, the XDG folders and lsblk/systemctl are the made-up ones, and
the script refuses to run where target/ is not on btrfs (the app would offer no compression there). Nothing of the
machine the pictures are taken on shows up in them, and the real home folder is not read or changed.

To reach the window's state the test needs Ui::start, split off Ui::build in src/gui/window.rs; the app behaves
as before. The pictures are 1024×740, the width of Broadway's screen, and drawn at the window's size: drawn at twice
the size, small capitals lost strokes to the scaling.

Two small fixes the pictures showed

  • The wizard's step labels marked no step as the current one until a step changed, so "01 DRIVE" looked as dim as
    the steps ahead when the page was opened.
  • A swap partition was described as "mounted at [SWAP]" next to the reason that already says it is swap space.

Checked

  • formatting, clippy with and without the desktop app, all tests; the screenshot test is skipped in normal runs and
    in CI
  • a review of the pictures and the code; its findings are fixed (the two app fixes above, made-up numbers that made
    the savings bars look wrong, the btrfs check, and stricter guards against running the test on a real home folder)
Adds screenshots to the README: the dashboard, the game library, the first step of the migration wizard, and the dashboard in the light theme. ## How they are taken `scripts/screenshots.sh` runs the real desktop app on a headless Broadway display with a made-up home folder below `target/screenshots/`: two Steam libraries with invented games, their analyses and compression records, an enabled timer, and stand-ins for `lsblk` and `systemctl` that report made-up drives and the timer. An ignored test of the app (`src/gui/window/screenshots.rs`) switches pages and themes and draws the window into PNG files with GSK's Cairo renderer. It refuses to run unless the home folder, the XDG folders and `lsblk`/`systemctl` are the made-up ones, and the script refuses to run where `target/` is not on btrfs (the app would offer no compression there). Nothing of the machine the pictures are taken on shows up in them, and the real home folder is not read or changed. To reach the window's state the test needs `Ui::start`, split off `Ui::build` in `src/gui/window.rs`; the app behaves as before. The pictures are 1024×740, the width of Broadway's screen, and drawn at the window's size: drawn at twice the size, small capitals lost strokes to the scaling. ## Two small fixes the pictures showed - The wizard's step labels marked no step as the current one until a step changed, so "01 DRIVE" looked as dim as the steps ahead when the page was opened. - A swap partition was described as "mounted at [SWAP]" next to the reason that already says it is swap space. ## Checked - formatting, clippy with and without the desktop app, all tests; the screenshot test is skipped in normal runs and in CI - a review of the pictures and the code; its findings are fixed (the two app fixes above, made-up numbers that made the savings bars look wrong, the btrfs check, and stricter guards against running the test on a real home folder)
Until a step changed, none of the wizard's step labels was marked as the
current one, so "01 DRIVE" looked as dim as the steps still ahead when
the page was opened. And a swap partition was described as "mounted at
[SWAP]", lsblk's word for swap in use, next to the reason that already
says it is swap space.
Show screenshots in the README
All checks were successful
CI / Format, lint and test (pull_request) Successful in 2m5s
CI / Arch package (pull_request) Successful in 2m10s
CI / Format, lint and test (push) Successful in 2m7s
CI / Arch package (push) Successful in 2m15s
717e448e9b
scripts/screenshots.sh takes them with the real desktop app on a
headless Broadway display, in a made-up home folder: two Steam libraries
with invented games, their analyses and compression records, a timer,
and stand-ins for lsblk and systemctl that report made-up drives. An
ignored test of the app switches pages and themes and draws the window
into PNG files; it refuses to run with a home folder, XDG folders or
lsblk and systemctl that were not made up for it. Nothing of the
machine the pictures are taken on shows up in them.

The pictures are drawn at the window's size: drawn larger, small
capitals lost strokes to the scaling. The window is 1024 pixels wide,
the width of Broadway's screen.
SkyfaR merged commit 717e448e9b into main 2026-09-30 21:12:04 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
LevelXStudios/OpenGameCompressor!6
No description provided.