Skip to content

feat(desktop): add optional macOS dock bounce on completion#1581

Open
mawlicious wants to merge 3 commits intopingdotgg:mainfrom
mawlicious:feat/macos-dock-bounce-completion
Open

feat(desktop): add optional macOS dock bounce on completion#1581
mawlicious wants to merge 3 commits intopingdotgg:mainfrom
mawlicious:feat/macos-dock-bounce-completion

Conversation

@mawlicious
Copy link
Copy Markdown

@mawlicious mawlicious commented Mar 30, 2026

What Changed

Adds a macOS-only desktop setting that bounces the Dock icon when a thread finishes while T3 Code is in the background.

The bounce is triggered from normalized thread/session state instead of provider-specific logic. It only requests attention when work transitions from active to finished and the app is not focused.

Why

When T3 Code is in the background, there is currently no desktop-level cue that a response has finished.

This adds a small attention signal without expanding scope into notifications, badges, or cross-platform behavior.

UI Changes

Added a new macOS-only setting in General Settings:

  • Completion dock bounce

Attached:

  • screenshot of the new setting
  • short video showing the Dock bounce when a background thread completes

Checklist

  • This PR is small and focused
  • I explained what changed and why
  • I included before/after screenshots for any UI changes
  • I included a video for animation/interaction changes

Note

Medium Risk
Adds new cross-process IPC and a thread-state watcher that can trigger OS-level attention requests; low blast radius but sensitive to state transition/dedup logic and platform gating.

Overview
Adds an optional macOS-only “Completion dock bounce” setting (dockBounceOnCompletion, default true) and surfaces it in the General settings panel.

Implements a new desktop bridge API (requestUserAttention) wired through a desktop:request-user-attention IPC handler that bounces the Dock icon only when no app window is focused.

Introduces DesktopCompletionAttention logic that watches thread/session state transitions, deduplicates per thread/turn, and triggers the bounce when work finishes while the app is in the background; includes migration/test coverage for the new setting.

Written by Cursor Bugbot for commit afccbfb. This will update automatically on new commits. Configure here.

Note

Add optional macOS Dock bounce on thread completion in desktop app

  • Adds a dockBounceOnCompletion setting (default true) that triggers an informational Dock bounce when a thread finishes while no app window is focused, on macOS only.
  • Introduces a new DesktopCompletionAttention component in __root.tsx that monitors thread state changes and calls window.desktopBridge.requestUserAttention() at most once per completed turn.
  • The attention trigger logic lives in desktopCompletionAttention.ts, which normalizes thread state to detect working→complete transitions.
  • Exposes the IPC channel desktop:request-user-attention in main.ts and preload.ts, returning a boolean indicating whether the bounce was triggered.
  • A toggle in General Settings (macOS desktop only) lets users disable the behavior.

Macroscope summarized afccbfb.

image image
2026-03-30.18-33-21.mp4

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 30, 2026

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 10e2d6b7-b177-440c-ab91-57a4e4ce9078

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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 and usage tips.

@github-actions github-actions bot added size:L 100-499 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Mar 30, 2026
Copy link
Copy Markdown
Contributor

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant