From f24a8909c8700bda65f0b7def85ee68831ca896f Mon Sep 17 00:00:00 2001 From: Thomas Petersen Date: Mon, 17 Aug 2026 15:13:59 -0400 Subject: [PATCH] fix(desktop): polish Projects navigation and detail presentation Make sidebar and repository navigation behave predictably while clarifying review metadata, activity hierarchy, and file-detail presentation. Signed-off-by: Thomas Petersen --- .../projects/ui/DiscussionChannels.tsx | 2 +- .../projects/ui/ProjectCommitCopyButton.tsx | 17 ++++-- .../projects/ui/ProjectEntityListRow.tsx | 4 +- .../ui/ProjectRepositoryActionsPanel.tsx | 1 + .../projects/ui/ProjectRepositoryPanel.tsx | 58 ++++++++++++------- .../ui/ProjectWorkItemContextDetails.tsx | 21 +++++++ .../projects/ui/ProjectWorkspaceTabs.tsx | 1 + .../projects/ui/ProjectsOverviewPanel.tsx | 27 ++++++++- .../projects/ui/PullRequestReviewersRow.tsx | 35 +++++------ .../src/features/sidebar/ui/AppSidebar.tsx | 16 +++-- .../sidebar/ui/AppSidebarPinnedHeader.tsx | 23 +------- .../sidebar/ui/SidebarProjectsSection.tsx | 9 +-- .../tests/e2e/buzz-theme-screenshots.spec.ts | 4 +- .../tests/e2e/project-commit-detail.spec.ts | 34 ++++++++++- desktop/tests/e2e/project-pr-review.spec.ts | 26 ++++++--- .../tests/e2e/projects-v3-screenshots.spec.ts | 33 ++++++++--- desktop/tests/e2e/sidebar.spec.ts | 41 +++++++++++++ 17 files changed, 244 insertions(+), 108 deletions(-) diff --git a/desktop/src/features/projects/ui/DiscussionChannels.tsx b/desktop/src/features/projects/ui/DiscussionChannels.tsx index aade999a2..832231c66 100644 --- a/desktop/src/features/projects/ui/DiscussionChannels.tsx +++ b/desktop/src/features/projects/ui/DiscussionChannels.tsx @@ -354,7 +354,7 @@ function DiscussionMessagePreview({ }) { return ( { - void writeTextToClipboard(text).then(() => { - setCopied(true); - setTimeout(() => setCopied(false), 2_000); - }); - }, [text]); + const handleCopy = React.useCallback( + (event: React.MouseEvent) => { + event.stopPropagation(); + void writeTextToClipboard(text).then(() => { + setCopied(true); + setTimeout(() => setCopied(false), 2_000); + }); + }, + [text], + ); return (