Skip to content

revert(chrome): the ground is a still again, no drift (#900, #905) - #929

Merged
TheOrcDev merged 1 commit into
mainfrom
remove-chrome-ground-drift
Oct 29, 2026
Merged

TheOrcDev merged 1 commit into
mainfrom
remove-chrome-ground-drift

Conversation

@TheOrcDev

@TheOrcDev TheOrcDev commented Oct 29, 2026 •

Copy link
Copy Markdown
Owner

Owner, 2026-10-29: "remove that animation on the background of the app, I don't like it".

Reverts #900 and #905. The Liquid Chrome ground under every window is a still again, so plan 208 D5 holds: nothing moves outside the Welcome screen.

  • ChromeGround is the display-sized still again, with no drift layer, timer or 128 px overhang.
  • Main no longer sends session:take-running. The IPC contract entry, onTakeRunning (preload, VideorcApi, the aux-window allowlists) and takeRunning() in capture-state go too, because the drift was their only user.
  • probe:ui-glass no longer holds Reduce Motion for the drift.
  • The design skill, CONTEXT.md and docs/live-backgrounds.md say the ground is a still. The Welcome screen's live Liquid Chrome backdrop is unchanged.

The only conflicts were in the design skill. Plan 0011's Stream Manager chrome-row bullet, which landed in between, is kept.

This also closes the open "drift self-pauses after a fresh launch" bug, because there's no drift left.

Verification

  • pnpm typecheck: green
  • vitest chrome-ground, capture-state, electron-ipc-contract: 78/78
  • prettier check on touched files: clean
  • Not run: probe:ui-glass and by-eye

Summary by CodeRabbit

  • Visual Updates
    • The light and dark chrome backgrounds now remain still instead of drifting.
    • Background motion is limited to the Welcome screen during first-run setup; other screens keep a stationary chrome background.
    • The chrome background is sized to the display without the previous extra margin.

Owner, 2026-10-29: "remove that animation on the background of the app, I
don't like it". Reverts both drift PRs, so plan 208 D5 holds again: nothing
moves outside the Welcome screen.

- ChromeGround is back to the display-sized still with no drift layer,
  timer or overhang.
- Main no longer publishes session:take-running; the IPC contract, preload
  API, allowlists and takeRunning() helper go with it (the drift was their
  only user).
- probe:ui-glass no longer holds Reduce Motion for the drift.
- Design skill, glossary and docs/live-backgrounds.md say the ground is a
  still. The Welcome screen's live backdrop is unchanged.
@coderabbitai

coderabbitai Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Walkthrough

The chrome ground no longer moves or depends on recording state. The take-running event and its supporting API were removed. Tests, the UI probe, and design references were updated to remove drift behavior.

Changes: Static Chrome Ground

Layer / File(s) Summary
Remove take-running state API
apps/desktop/src/shared/electron-ipc-contract.ts, apps/desktop/src/shared/backend.ts, apps/desktop/src/shared/capture-state.ts, apps/desktop/src/main/index.ts, apps/desktop/src/preload/*, apps/desktop/src/shared/capture-state.test.ts
The main process no longer publishes take-running state. The event contract, helper, preload callback, API declaration, and related tests were removed.
Render and verify a static chrome ground
apps/desktop/src/renderer/src/components/chrome-ground*, scripts/ui-glass-probe.mjs, docs/live-backgrounds.md, CONTEXT.md, .claude/skills/videorc-design/SKILL.md
Chrome images use display dimensions and render without a moving layer. Tests, probe captures, documentation, and design guidance no longer describe or stabilize drift.

Priority: Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Bug fix

Merge Risk: Minimal · up to 7e45e

No actionable issue remains; the PR is mergeable after normal checks.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 66.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documenta… Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely describes the main change: reverting the chrome ground to a still image and removing drift.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 66.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 3 functions across 4 files. (2 skipped: 2 unsupported.)

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@TheOrcDev
TheOrcDev merged commit 8e601ae into main Oct 29, 2026
12 of 16 checks passed
TheOrcDev added a commit that referenced this pull request Oct 30, 2026
Owner, 2026-10-29: after the drift came out (#929), "remove that highlight
white thing from background completely". The frosted Liquid Chrome still
that plan 208 put under every window is gone; windows paint the theme's
plain solid (#070707 dark, #FAFAFA light). The chrome controls, the chrome
rows and the Welcome screen's live backdrop are unchanged.

- ChromeGround and its test are deleted, and WindowProviders no longer
  mounts it. A style guard now fails if anything imports the stills again.
- The default window mode is { kind: 'solid', reason: 'default' } on every
  platform; the 'ground' GlassMode, the 'dark-always' reason and the
  'chrome' WindowGround are gone. The bootstraps default data-ground to
  solid. VIDEORC_GLASS=0 and VIDEORC_GLASS=clear behave as before.
- styles.css drops the [data-chrome-ground] rules and the ground comments.
- chrome-ground-contrast.test.ts becomes window-contrast.test.ts: text
  tiers over the solid (and at Increase Contrast) and the chrome-row plates.
- Probes: the Windows recovery gate and the comments-window probe expect the
  solid window; probe:ui-glass's checks (now lib/window-ground-checks.mjs)
  expect no ground image.
- Design skill, glossary and docs/live-backgrounds.md say so. The phone
  remote still serves the stills (backend), out of scope here.
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