From 74f74e3d371f5566242593d02855bc0a2fbd322e Mon Sep 17 00:00:00 2001 From: kenny lopez Date: Wed, 12 Aug 2026 10:18:16 +0100 Subject: [PATCH] Add conversation density preference Signed-off-by: kenny lopez --- .../channels/lib/threadFocusLayout.ts | 2 +- .../src/features/home/ui/InboxListPane.tsx | 13 +- .../src/features/home/ui/InboxMessageRow.tsx | 30 +- .../messages/lib/messageThreadPanelLayout.ts | 10 +- .../messages/lib/useRichTextEditor.ts | 2 +- .../messages/ui/MessageAgentOwner.tsx | 22 +- .../features/messages/ui/MessageHeader.tsx | 4 +- .../src/features/messages/ui/MessageRow.tsx | 8 +- .../messages/ui/MessageThreadPanel.tsx | 6 +- .../ui/MessageThreadPanelSkeleton.tsx | 4 +- .../features/messages/ui/MessageTimestamp.tsx | 2 +- .../ui/AppearanceSettingsControls.tsx | 129 +++++++ .../features/settings/ui/SettingsPanels.tsx | 51 +-- .../settings/ui/SettingsSegmentedControl.tsx | 185 ++++++++++ desktop/src/main.tsx | 5 +- desktop/src/shared/lib/cn.ts | 16 +- .../conversationDensityPreference.test.mjs | 59 ++++ .../lib/conversationDensityPreference.ts | 84 +++++ .../src/shared/styles/globals/composer.css | 3 +- desktop/src/shared/styles/globals/theme.css | 42 +++ desktop/src/shared/ui/markdown.tsx | 4 +- desktop/tailwind.config.js | 18 + .../tests/e2e/buzz-theme-screenshots.spec.ts | 326 ++++++++++++++++++ .../e2e/inbox-refactor-screenshots.spec.ts | 132 +++++++ desktop/tests/e2e/messaging.spec.ts | 4 +- 25 files changed, 1065 insertions(+), 96 deletions(-) create mode 100644 desktop/src/features/settings/ui/SettingsSegmentedControl.tsx create mode 100644 desktop/src/shared/lib/conversationDensityPreference.test.mjs create mode 100644 desktop/src/shared/lib/conversationDensityPreference.ts diff --git a/desktop/src/features/channels/lib/threadFocusLayout.ts b/desktop/src/features/channels/lib/threadFocusLayout.ts index f14f3399b..f0b40348d 100644 --- a/desktop/src/features/channels/lib/threadFocusLayout.ts +++ b/desktop/src/features/channels/lib/threadFocusLayout.ts @@ -24,7 +24,7 @@ export const THREAD_FOCUS_SLIVER_WIDTH_PX = 72; * with auto horizontal margins so the reading measure stays comfortable no * matter how wide the window gets. */ -export const THREAD_FOCUS_COLUMN_MAX_WIDTH_PX = 880; +export const THREAD_FOCUS_COLUMN_MAX_WIDTH_PX = 820; /** * Horizontal distance the focus drawer travels on enter/exit. diff --git a/desktop/src/features/home/ui/InboxListPane.tsx b/desktop/src/features/home/ui/InboxListPane.tsx index 17b06bf28..446cd3a65 100644 --- a/desktop/src/features/home/ui/InboxListPane.tsx +++ b/desktop/src/features/home/ui/InboxListPane.tsx @@ -13,6 +13,7 @@ import { DraftsPanel, type DraftViewItem, } from "@/features/messages/ui/DraftsPanel"; +import { MessageAuthorText } from "@/features/messages/ui/MessageHeader"; import { UserProfilePopover } from "@/features/profile/ui/UserProfilePopover"; import type { Reminder } from "@/features/reminders/lib/reminderTypes"; import { isDue } from "@/features/reminders/lib/reminderFilters"; @@ -351,7 +352,7 @@ export function InboxListPane({
- + {item.senderLabel} - + @@ -402,14 +403,14 @@ export function InboxListPane({
-

+

{hoverTimestampLabel}

@@ -175,18 +182,18 @@ export function InboxMessageRow({
)} -
+
{isContinuation ? null : ( -
+ - + {message.authorLabel} - + {message.isAgent ? ( ) : null} -

+

{message.fullTimestampLabel}

-
+ )} -
+
@@ -19,30 +17,22 @@ export function MessageAgentOwner({ {ownerPubkey && ownerLabel ? ( <> -