|
@@ -376,7 +376,8 @@ export default function Page() {
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
const info = createMemo(() => (params.id ? sync.session.get(params.id) : undefined))
|
|
const info = createMemo(() => (params.id ? sync.session.get(params.id) : undefined))
|
|
|
- const reviewCount = createMemo(() => info()?.summary?.files ?? 0)
|
|
|
|
|
|
|
+ const diffs = createMemo(() => (params.id ? (sync.data.session_diff[params.id] ?? []) : []))
|
|
|
|
|
+ const reviewCount = createMemo(() => Math.max(info()?.summary?.files ?? 0, diffs().length))
|
|
|
const hasReview = createMemo(() => reviewCount() > 0)
|
|
const hasReview = createMemo(() => reviewCount() > 0)
|
|
|
const revertMessageID = createMemo(() => info()?.revert?.messageID)
|
|
const revertMessageID = createMemo(() => info()?.revert?.messageID)
|
|
|
const messages = createMemo(() => (params.id ? (sync.data.message[params.id] ?? []) : []))
|
|
const messages = createMemo(() => (params.id ? (sync.data.message[params.id] ?? []) : []))
|
|
@@ -479,7 +480,6 @@ export default function Page() {
|
|
|
scrollToMessage(msgs[targetIndex], "auto")
|
|
scrollToMessage(msgs[targetIndex], "auto")
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- const diffs = createMemo(() => (params.id ? (sync.data.session_diff[params.id] ?? []) : []))
|
|
|
|
|
const emptyDiffFiles: string[] = []
|
|
const emptyDiffFiles: string[] = []
|
|
|
const diffFiles = createMemo(() => diffs().map((d) => d.file), emptyDiffFiles, { equals: same })
|
|
const diffFiles = createMemo(() => diffs().map((d) => d.file), emptyDiffFiles, { equals: same })
|
|
|
const diffsReady = createMemo(() => {
|
|
const diffsReady = createMemo(() => {
|
|
@@ -1235,14 +1235,13 @@ export default function Page() {
|
|
|
createEffect(() => {
|
|
createEffect(() => {
|
|
|
const id = params.id
|
|
const id = params.id
|
|
|
if (!id) return
|
|
if (!id) return
|
|
|
- if (!hasReview()) return
|
|
|
|
|
|
|
|
|
|
const wants = isDesktop()
|
|
const wants = isDesktop()
|
|
|
? view().reviewPanel.opened() &&
|
|
? view().reviewPanel.opened() &&
|
|
|
(layout.fileTree.opened() ? fileTreeTab() === "changes" : activeTab() === "review")
|
|
(layout.fileTree.opened() ? fileTreeTab() === "changes" : activeTab() === "review")
|
|
|
- : store.mobileTab === "review"
|
|
|
|
|
|
|
+ : view().reviewPanel.opened() && store.mobileTab === "review"
|
|
|
if (!wants) return
|
|
if (!wants) return
|
|
|
- if (diffsReady()) return
|
|
|
|
|
|
|
+ if (sync.data.session_diff[id] !== undefined) return
|
|
|
|
|
|
|
|
sync.session.diff(id)
|
|
sync.session.diff(id)
|
|
|
})
|
|
})
|