pingdotgg / pingdotgg/t3code

[Bug]: Unchecked switches are invisible in custom themes whose --input is (near-)transparent (e.g. Catppuccin Mocha)

Open
#7,997 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
23k
Forks
5.9k
Avg merge
11h 14m
Merged PRs (30d)
357

Description

Before submitting
  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.
Area

apps/web

Steps to reproduce
  1. Import a theme whose --input token resolves to the same color as --background (Catppuccin Mocha from Open VSX reproduces this — it maps --input to the background color).
  2. Open Settings > General.
  3. Look at the "Archive confirmation" switch (or any switch) while it is off.
Expected behavior

The unchecked switch track stays visible so the control and its off state are perceivable in any theme.

Actual behavior

The unchecked track is painted with data-unchecked:bg-input, so under themes where --input is (near-)transparent against the background the switch disappears entirely while off. The setting is still there and clickable, but there is no visual indication the control exists or what state it is in. The same applies to switch-variant menu checkbox items, which use the same token.

Before (Catppuccin Mocha, switch present but invisible):

Archive confirmation switch disappears under Catppuccin Mocha

After the proposed fix:

Archive confirmation switch remains visible under Catppuccin Mocha

Impact

Minor bug or occasional failure

Version or commit

main @ ea8c9e5ca

Environment

macOS 25.6.0 (Darwin), Chromium-based browser, Catppuccin Mocha theme imported from Open VSX

Workaround

None in-app other than avoiding affected themes. A size:XS fix is open in #7810: it swaps the unchecked track to data-unchecked:bg-muted-foreground/30 on both switch surfaces (Switch and switch-variant MenuCheckboxItem), with a focused test. The PR is updated to latest main and Macroscope-approved, but sits behind the vouch:unvouched gate.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the Switch and switch-variant MenuCheckboxItem surfaces that use data-unchecked:bg-input, then review the proposed fix and focused test in #7810. Done means the unchecked track remains visible when a theme maps --input to the background, including Catppuccin Mocha.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.