"refs" drop down transparency issue #115
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub#115
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
On the main repo page (ex: https://hub.packden.us/crueber/walhub )
The "refs" drop down is somewhat transparent and it's hard to read what's on top. Let's get rid of that transparency.
Let's also make that scrollbar look nicer.
Fixed by #125 — solid opaque panels for all floating dropdowns (refs, tasks, clone, notifications, reactions, labels, close-menu) + themed slim scrollbars on the scrollable lists. Browser-verified dark+light with zero console errors.
PR #125 review (branch fix/issue-115, commit
d2d71a4) — opaque dropdown panels + styled scrollbars.OPACITY — PASS. web/src/ui.css:99 groups .clone-body/.ref-drop/.tasks-drop/.notif-drop/.reaction-drop/.label-drop/.close-drop with bg-white/dark:bg-zinc-900. Verified in compiled vite output: .card dark rule is
.card:where(.dark,.dark *)(0,1,0, zinc-900/70 translucent) and the override is:is(...):where(.dark,.dark *)(also 0,1,0) emitted later in @layer components, so it wins in both themes. Light mode is bg-white on both sides (no-op). BEFORE screenshot confirms the bug (refs list with page text bleeding through).COVERAGE — PASS, none missed. Grep of web/src for floating .card popovers finds exactly 7, all carrying a hook class: Repo.jsx:96 (clone-body, pre-existing), Repo.jsx:269 (ref-drop, pre-existing), Repo.jsx:431 (tasks-drop, pre-existing), NotificationTray.jsx:89, ReactionMenu.jsx:112, LabelPicker.jsx:92, CommentComposer.jsx:91 (4 added by this PR). Only other translucent floaters are .site-header (intentional backdrop-blur) and .tray-entry (fixed error tray, out of scope).
SCROLLBARS — PASS. .scroll-slim (ui.css:105-110) sets Firefox scrollbar-width:thin + scrollbar-color plus ::-webkit-scrollbar width/track/thumb, with .dark overrides for both engines (zinc-400/300 light, zinc-600/700 dark). Applied on the actual scroll containers: ref-list (Repo.jsx:287), label menu + notif tray (same element as overflow-y-auto). Reaction/close/tasks menus are not scrollable — correctly excluded.
CLASS-ONLY — PASS. Each JSX diff is a single class-attribute token add; no logic/behavior/ARIA change.
DEPS/LAWS — PASS. No package.json/lock or Go changes (no new deps, Law 1; no seam/route changes, Law 8; N/A Law 7). Doc decision appended in docs/go/12_web_ui.md:418 in the same change (Law 12). One nit (non-blocking): the doc phrase 'so no JSX churn' slightly understates the 4 hook-class touches — the ordering claim itself is accurate.
TESTS (scratch worktree /tmp/pr125, symlinked node_modules — no browser per review instructions): node --test web/test/unit/*.test.js → 257/257 pass; vite build → clean (110 modules, CSS+JS emitted). Initial 2 failures were missing node_modules in the fresh worktree only, resolved via symlink, unrelated to the PR.
MERGE RECOMMENDATION: ready to merge.
Fixed by PR #125 (review: specificity + coverage verified in compiled output; 257/257 node tests), merged. Closing.