Skip to content

fix(widget): remove unintended dark background overlay#2354

Open
jarvisluk wants to merge 1 commit into
steipete:mainfrom
jarvisluk:fix/widget-vibrant-background
Open

fix(widget): remove unintended dark background overlay#2354
jarvisluk wants to merge 1 commit into
steipete:mainfrom
jarvisluk:fix/widget-vibrant-background

Conversation

@jarvisluk

@jarvisluk jarvisluk commented Jul 20, 2026

Copy link
Copy Markdown

Summary

Fix an unintended dark rectangular overlay that appears inside desktop widgets when the desktop is inactive.

Changes

  • Remove the translucent black overlay from the usage, history, compact, and provider-switcher widgets.
  • Expand widget content to fill the available container.
  • Rely on WidgetKit's system container background for consistent inactive-desktop rendering.

Screenshots

Before After
Before: inactive desktop widget with a dark inset overlay After: inactive desktop widget with a uniform system background
Dark inset overlay visible Uniform system background

Testing

  • make check
  • make test
  • Visually verified the inactive desktop state before and after the change.

Notes

  • This only changes widget layout and background rendering; provider data and usage calculations are unaffected.

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. labels Jul 20, 2026
@clawsweeper

clawsweeper Bot commented Jul 20, 2026

Copy link
Copy Markdown

Codex review: needs maintainer review before merge. Reviewed July 20, 2026, 5:40 AM ET / 09:40 UTC.

Summary
The PR removes a translucent black root overlay from four WidgetKit views and expands their content to the full widget container while retaining the system widget background.

Reproducibility: no. independent current-main reproduction was run in this review; the contributor’s paired inactive-desktop screenshots provide convincing after-fix visual evidence for the reported rendering path.

Review metrics: 1 noteworthy metric.

  • Patch scope: 1 file affected; 19 added, 21 removed. The implementation is confined to widget root layout/background composition and does not alter provider or usage logic.

Merge readiness
Overall: 🦞 diamond lobster
Proof: 🦞 diamond lobster ✨ media proof bonus
Patch quality: 🦞 diamond lobster
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Next step before merge

  • [P2] No discrete automated repair is needed; the patch has no actionable finding and awaits ordinary maintainer merge review.

Security
Cleared: The diff is limited to SwiftUI widget layout and background rendering; it adds no dependencies, permissions, secrets handling, build automation, or external execution path.

Review details

Best possible solution:

Merge this narrowly scoped visual fix after ordinary maintainer review, preserving WidgetKit’s existing system-managed container background across all affected widget families.

Do we have a high-confidence way to reproduce the issue?

No independent current-main reproduction was run in this review; the contributor’s paired inactive-desktop screenshots provide convincing after-fix visual evidence for the reported rendering path.

Is this the best way to solve the issue?

Yes. Removing the unintended custom overlay while retaining WidgetKit’s existing .containerBackground is the narrowest maintainable fix and avoids changing usage or provider data behavior.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against f8636cb37eb0.

Label changes

Label changes:

  • add proof: sufficient: Contributor real behavior proof is sufficient. The PR provides directly relevant before/after screenshots of the inactive-desktop widget state, visibly showing the dark inset overlay removed; no sensitive information is apparent in the supplied proof.
  • add rating: 🦞 diamond lobster: Overall readiness is 🦞 diamond lobster; proof is 🦞 diamond lobster and patch quality is 🦞 diamond lobster.
  • add status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (screenshot): The PR provides directly relevant before/after screenshots of the inactive-desktop widget state, visibly showing the dark inset overlay removed; no sensitive information is apparent in the supplied proof.
  • remove rating: 🧂 unranked krab: Current PR rating is rating: 🦞 diamond lobster, so this older rating label is no longer current.
  • remove status: 📣 needs proof: Current PR status label is status: 👀 ready for maintainer look.

Label justifications:

  • P3: This is a contained widget appearance correction with no evidence of data, authentication, delivery, or availability impact.
  • rating: 🦞 diamond lobster: Overall readiness is 🦞 diamond lobster; proof is 🦞 diamond lobster and patch quality is 🦞 diamond lobster.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (screenshot): The PR provides directly relevant before/after screenshots of the inactive-desktop widget state, visibly showing the dark inset overlay removed; no sensitive information is apparent in the supplied proof.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR provides directly relevant before/after screenshots of the inactive-desktop widget state, visibly showing the dark inset overlay removed; no sensitive information is apparent in the supplied proof.
  • proof: 📸 screenshot: Contributor real behavior proof includes screenshot evidence. The PR provides directly relevant before/after screenshots of the inactive-desktop widget state, visibly showing the dark inset overlay removed; no sensitive information is apparent in the supplied proof.
Evidence reviewed

What I checked:

  • Focused widget rendering change: The branch changes one WidgetKit view file, replacing the low-opacity black ZStack layer with a conditional Group and applying a full-container frame before the existing system container background. (Sources/CodexBarWidget/CodexBarWidgetViews.swift:12, 4f11751a491d)
  • Direct visual proof supplied: The PR body includes paired before/after screenshots specifically showing the inactive-desktop inset overlay removed, and the review timeline records the proof as sufficient. (4f11751a491d)
  • Prior review continuity: The prior completed ClawSweeper review of the same head found no actionable patch defects after the contributor supplied visual proof; this review identifies no new blocking defect. (Sources/CodexBarWidget/CodexBarWidgetViews.swift:12, 4f11751a491d)

Likely related people:

  • steipete: Repository ownership and release history make steipete the best available routing candidate for a macOS widget visual change; per-line widget provenance could not be established from the supplied review materials. (role: likely review owner; confidence: low; commits: 91560ca98e77; files: Sources/CodexBarWidget/CodexBarWidgetViews.swift)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.
Review history (3 earlier review cycles)
  • reviewed 2026-07-20T06:22:00.670Z sha 4f11751 :: needs real behavior proof before merge. :: none
  • reviewed 2026-07-20T07:40:44.782Z sha 4f11751 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-20T08:38:35.101Z sha 4f11751 :: needs real behavior proof before merge. :: none

@jarvisluk
jarvisluk marked this pull request as ready for review July 20, 2026 07:02
Copilot AI review requested due to automatic review settings July 20, 2026 07:02

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes an unintended dark inset overlay in the WidgetKit widget views by dropping the explicit translucent black background layer and relying on containerBackground instead, while also ensuring each widget view expands to fill its container for consistent inactive-desktop rendering.

Changes:

  • Removed the ZStack { Color.black.opacity(0.02) ... } overlay pattern from widget views.
  • Ensured widget root content expands to the full widget bounds via .frame(maxWidth: .infinity, maxHeight: .infinity).
  • Adjusted the switcher widget layout so padding/content sizing remains consistent without the extra background layer.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@clawsweeper clawsweeper Bot added proof: sufficient Contributor real behavior proof is sufficient. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. and removed rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. proof: sufficient Contributor real behavior proof is sufficient. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. proof: sufficient Contributor real behavior proof is sufficient. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants