Repository navigation
fix(web): replace the update tooltip with a changelog popover - #7880
RakshithBhat03 wants to merge 14 commits into
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📥 CommitsReviewing files that changed from the base of the PR and between 11f0513 and 301fb4185ec63f53ae36e542010403c65bed50d3. 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthrough
ChangesSidebar update release notes
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to This PR makes nightly release notes easier to read and scroll while preserving existing download and restart/install actions. No actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
One finding: the new hover-only release-notes popover removes keyboard access to the update details that the tooltip previously provided on focus. Details inline.
Posted via Macroscope — UI Consistency
|
@coderabbitai review |
✅ Action performedReview finished.
|
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This is a self-contained Electron sidebar UI replacement that moves existing nightly release notes from a tooltip into a bounded hover/focus popover while preserving update actions and fallback tooltips. The interaction behavior is covered by focused tests, with no backend, schema, security, or deployment impact. You can add or adjust custom eligibility rules. Learn more. |
There was a problem hiding this comment.
One finding: the release-notes popover branch drops the update-state surface treatment that the tooltip branch still applies for the same update states.
Posted via Macroscope — UI Consistency
da6109b to
7d63251
Compare
There was a problem hiding this comment.
One finding on the new focus-latch behavior in SidebarUpdatePill.tsx. Everything else (primitive usage, popover surface/geometry, viewport scroll ownership, eventDetails.cancel() pattern) matches the existing Popover conventions in this app.
Posted via Macroscope — UI Consistency
There was a problem hiding this comment.
Reviewed the release-notes popover migration for shared-primitive, theming, and interaction consistency. One new finding on the conditional trigger host; the previously raised popup theming difference between the popover and tooltip branches still appears unaddressed at this head.
Posted via Macroscope — UI Consistency
There was a problem hiding this comment.
One finding on the unified trigger host: the always-mounted PopoverTrigger now advertises a dialog popup on the pill in states where the popover can never open. Details inline.
Posted via Macroscope — UI Consistency
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit cddb765. Configure here.
|
Note 🤖 GPT-5.6 Sol responding on behalf of Theo We're closing this PR as we clean up the T3 Code backlog. Thank you for taking the time to put this together. This replaces a nightly-update tooltip with a 702-line hover popover for long changelogs. Download and restart remain direct actions, so the extra popover state, accessibility behavior, and tests are too much for optional release-note reading. If you believe we closed this in error, please reopen the PR and leave a comment explaining what we missed. |

Nightly update notes were rendered in a tooltip, so the panel disappeared when the pointer moved into it and long changelogs were difficult to read or scroll.
Nightly updates with release notes now use a hover popover that stays open while reading and scrolling. Compared with the superseded #7876 draft, the sidebar pill keeps its original direct action: clicking an available update immediately starts the download, while clicking a downloaded update invokes the existing restart/install flow. The popover contains only the update status and changelog, with no duplicate Download or Restart and install buttons.
Stable updates and states without release notes continue using the existing tooltip. The trigger remains a native button with its accessible label and visible focus treatment. The popover has a screen-reader title and does not move focus away from the trigger when it opens.
Tests: 42 focused tests, lint, format check, and
git diff --checkpassed; local browser pass covered both update states, changelog scrolling, and direct sidebar download/restart-install actions. Web typecheck still reports two pre-existingconditionalUIerrors insrc/components/clerk/electronPasskeys.test.ts.Screenshots
Update ready to download
Update downloaded
Built by GPT-5.6 Sol in T3 Code through the Codex harness.
Summary by CodeRabbit
Note
Low Risk
Sidebar Electron update UI and accessibility behavior only; no auth, API, or data-path changes.
Overview
Nightly desktop updates with release notes no longer cram the changelog into a tooltip. Eligible states now use a hover-activated popover with a scrollable changelog; stable channel or empty notes still get the original tooltip only.
The sidebar pill click behavior is unchanged in intent: click still downloads or installs immediately—
preventBaseUIHandlerstops the popover from toggling, and the popover shows status plus notes only (no duplicate action buttons). A newSidebarUpdateReleaseNotesPopoverowns open state, hover delays, keyboard:focus-visiblehandling, and cancellation of premature hover-close while the trigger stays focused or hovered; when notes are ineligible it disables the popover and strips popover ARIA from the trigger.SidebarUpdateReleaseNotes(renamed from the tooltip variant) is changelog-only—eligibility is gated upstream. Tests add a large hook-harness suite covering download-on-click, popover vs tooltip fallbacks, downloading witharia-disabled, and focus/hover edge cases.Reviewed by Cursor Bugbot for commit 1a0c3c0. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Replace sidebar update tooltip with a changelog popover
SidebarUpdateReleaseNotesPopoverin SidebarUpdatePill.tsx that coordinates aTooltipfallback with a hover/focus-drivenPopoverfor release notes, using delayed hover open/close and keyboard focus latchingSidebarUpdateControlnow renders the popover only when eligible (showUpdateDetails, nightly channel, and non-empty release notes); clicking the button invokes the update action without toggling the popoverSidebarUpdateReleaseNotesto always render the release notes markup and defer eligibility to the caller, moving width/scroll constraints into the popoverMacroscope summarized 1a0c3c0.