Show manual sync-conflict fix instructions in-app instead of deep-linking to Help
NSWorkspace.shared.open() silently drops #fragment anchors on file:// URLs, so "Fix It Myself" always landed on the Help Book index instead of the relevant section. Replaced with GitSyncManualFixSheet, an in-app sheet showing the real conflicting filenames and sync path. Also indent conversation rows one level deeper than their containing folder in the sidebar and conversation list, so nesting is visible on the conversations themselves and not just the folder headers.
This commit is contained in:
@@ -266,7 +266,7 @@ struct ConversationListView: View {
|
||||
Section {
|
||||
if !collapsedFolders.contains(entry.folder.id) {
|
||||
ForEach(folderConversations) { conversation in
|
||||
conversationRow(conversation)
|
||||
conversationRow(conversation, depth: entry.depth + 1)
|
||||
}
|
||||
}
|
||||
} header: {
|
||||
@@ -337,7 +337,7 @@ struct ConversationListView: View {
|
||||
}
|
||||
|
||||
@ViewBuilder
|
||||
private func conversationRow(_ conversation: Conversation) -> some View {
|
||||
private func conversationRow(_ conversation: Conversation, depth: Int = 0) -> some View {
|
||||
let index = filteredConversations.firstIndex(where: { $0.id == conversation.id }) ?? 0
|
||||
HStack(spacing: 12) {
|
||||
if isSelecting {
|
||||
@@ -382,6 +382,7 @@ struct ConversationListView: View {
|
||||
.help("Delete conversation")
|
||||
}
|
||||
}
|
||||
.padding(.leading, CGFloat(depth) * 14)
|
||||
.listRowBackground(
|
||||
!isSelecting && index == selectedIndex
|
||||
? Color.confabAccent.opacity(0.15)
|
||||
|
||||
Reference in New Issue
Block a user