diff --git a/lib/shared/threads/protocols/dm-thread-protocol.js b/lib/shared/threads/protocols/dm-thread-protocol.js --- a/lib/shared/threads/protocols/dm-thread-protocol.js +++ b/lib/shared/threads/protocols/dm-thread-protocol.js @@ -560,7 +560,8 @@ membershipChangesShownInThreadPreview: true, usersWithoutDeviceListExcludedFromSearchResult: true, supportsMediaGallery: false, - chatThreadListIcon: 'lock', + nativeChatThreadListIcon: 'lock', + webChatThreadListIcon: 'lock', threadAncestorLabel: () => 'Local DM', }, diff --git a/lib/shared/threads/protocols/keyserver-thread-protocol.js b/lib/shared/threads/protocols/keyserver-thread-protocol.js --- a/lib/shared/threads/protocols/keyserver-thread-protocol.js +++ b/lib/shared/threads/protocols/keyserver-thread-protocol.js @@ -356,7 +356,8 @@ membershipChangesShownInThreadPreview: false, usersWithoutDeviceListExcludedFromSearchResult: false, supportsMediaGallery: true, - chatThreadListIcon: 'server', + nativeChatThreadListIcon: 'server', + webChatThreadListIcon: 'server', threadAncestorLabel: (ancestorPath: React.Node) => ancestorPath, }, diff --git a/lib/shared/threads/thread-spec.js b/lib/shared/threads/thread-spec.js --- a/lib/shared/threads/thread-spec.js +++ b/lib/shared/threads/thread-spec.js @@ -265,7 +265,8 @@ +membershipChangesShownInThreadPreview: boolean, +usersWithoutDeviceListExcludedFromSearchResult: boolean, +supportsMediaGallery: boolean, - +chatThreadListIcon: string, + +nativeChatThreadListIcon: string, + +webChatThreadListIcon: 'lock' | 'server', +threadAncestorLabel: (ancestorPath: React.Node) => React.Node, }, +uploadMultimediaMetadataToKeyserver: boolean, diff --git a/native/chat/chat-thread-list-item.react.js b/native/chat/chat-thread-list-item.react.js --- a/native/chat/chat-thread-list-item.react.js +++ b/native/chat/chat-thread-list-item.react.js @@ -137,7 +137,7 @@ : styles.iconRead; const iconName = threadSpecs[data.threadInfo.type].protocol.presentationDetails - .chatThreadListIcon; + .nativeChatThreadListIcon; const threadDetails = React.useMemo( () => ( diff --git a/web/chat/chat-thread-list-item.react.js b/web/chat/chat-thread-list-item.react.js --- a/web/chat/chat-thread-list-item.react.js +++ b/web/chat/chat-thread-list-item.react.js @@ -12,7 +12,6 @@ import type { ChatThreadItem } from 'lib/selectors/chat-selectors.js'; import { useAncestorThreads } from 'lib/shared/ancestor-threads.js'; import { threadSpecs } from 'lib/shared/threads/thread-specs.js'; -import { threadTypeIsThick } from 'lib/types/thread-types-enum.js'; import { shortAbsoluteDate } from 'lib/utils/date-utils.js'; import { useResolvedThreadInfo, @@ -129,14 +128,13 @@ const { uiName } = useResolvedThreadInfo(threadInfo); - const isThick = threadTypeIsThick(threadInfo.type); + const presentationDetails = + threadSpecs[threadInfo.type].protocol.presentationDetails; const iconClass = unread ? css.iconUnread : css.iconRead; - const icon = isThick ? lock : server; - const breadCrumbs = - threadSpecs[ - threadInfo.type - ].protocol.presentationDetails.threadAncestorLabel(ancestorPath); + const icon = + presentationDetails.webChatThreadListIcon === 'lock' ? lock : server; + const breadCrumbs = presentationDetails.threadAncestorLabel(ancestorPath); return ( <>