Skip to content

Fix canvas tab shadow clipping - #129

Merged
ojowwalker77 merged 4 commits into
mainfrom
t3code/address-issue-110
Aug 11, 2026
Merged

Fix canvas tab shadow clipping#129
ojowwalker77 merged 4 commits into
mainfrom
t3code/address-issue-110

Conversation

@ojowwalker77

@ojowwalker77 ojowwalker77 commented Aug 11, 2026

Copy link
Copy Markdown
Owner

Summary

  • reserve scroll-viewport overflow for the board tab shadows
  • keep the existing tab coordinates and visible picker footprint
  • preserve the top-right control lane and shared dark-theme surface styling

Validation

  • swiftc -parse Sources/ComposerApp/Views/ComposerCanvas.swift
  • git diff --check

Fixes #110

Review in cubic

Note

Fix shadow clipping on canvas tab board picker pills

The board picker's LazyHStack was clipping pill drop shadows to a hard edge in light themes. The fix expands the ScrollView viewport by the shadow overflow amount, offsets it back, and clamps the outer layout to the original dimensions — making shadows fade naturally without shifting the tab row or overlapping top-right controls. .contentShape(.interaction, Rectangle()) is applied to restrict hit-testing to the visible row, so the extra padding area does not intercept canvas gestures.

Macroscope summarized cc6a007.

Summary

  • Prevent light-theme canvas-tab shadows from clipping.
  • Reserve shadow overflow without changing tab coordinates or picker footprint.
  • Preserve top-right controls and dark-theme styling.
  • Limit board-picker hit testing to the visible row area.
  • Add an unreleased changelog entry.
  • Validate with swiftc -parse and git diff --check.

@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The board picker now reserves space for popup shadows in light themes. Nested frames and offsets prevent tab movement and control overlap. The interaction shape remains limited to the original picker bounds. The changelog records the fix.

Changes

Canvas tab shadow spacing

Layer / File(s) Summary
Shadow-aware picker layout
Sources/ComposerApp/Views/ComposerCanvas.swift, CHANGELOG.md
The picker calculates shadow overflow and row height, applies shadow-aware padding and offsets, preserves the original interaction bounds, and documents the fix under Unreleased.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The changes address issue #110 by preventing light-theme shadow clipping while preserving tab geometry and dark-theme appearance.
Out of Scope Changes check ✅ Passed The code and changelog changes are directly related to the canvas tab shadow clipping fix and its documented behavior.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the primary change: fixing clipped shadows on canvas tabs.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch t3code/address-issue-110

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

@github-actions github-actions Bot added the vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. label Aug 11, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5619ebdaeb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread Sources/ComposerApp/Views/ComposerCanvas.swift

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Review completed against the latest diff

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread Sources/ComposerApp/Views/ComposerCanvas.swift
@ojowwalker77
ojowwalker77 merged commit 65c037e into main Aug 11, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Prevent canvas-tab shadow clipping in light themes

1 participant