summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/pages/layout
diff options
context:
space:
mode:
authorBrendan Allan <[email protected]>2026-04-20 13:17:37 +0800
committerGitHub <[email protected]>2026-04-20 05:17:37 +0000
commit687b7588820df02dfe7397a399f213f394aa6b09 (patch)
tree0497e08000939606f41b9a7577924d9376ecba7c /packages/app/src/pages/layout
parent84e322b0fdb178ad420f3f6507a22c0da590f524 (diff)
downloadopencode-687b7588820df02dfe7397a399f213f394aa6b09.tar.gz
opencode-687b7588820df02dfe7397a399f213f394aa6b09.zip
app: better loading (#23489)
Diffstat (limited to 'packages/app/src/pages/layout')
-rw-r--r--packages/app/src/pages/layout/helpers.ts2
-rw-r--r--packages/app/src/pages/layout/sidebar-workspace.tsx2
2 files changed, 2 insertions, 2 deletions
diff --git a/packages/app/src/pages/layout/helpers.ts b/packages/app/src/pages/layout/helpers.ts
index 26b66d166..32b94c9cb 100644
--- a/packages/app/src/pages/layout/helpers.ts
+++ b/packages/app/src/pages/layout/helpers.ts
@@ -31,7 +31,7 @@ function sortSessions(now: number) {
const isRootVisibleSession = (session: Session, directory: string) =>
workspaceKey(session.directory) === workspaceKey(directory) && !session.parentID && !session.time?.archived
-const roots = (store: SessionStore) =>
+export const roots = (store: SessionStore) =>
(store.session ?? []).filter((session) => isRootVisibleSession(session, store.path.directory))
export const sortedRootSessions = (store: SessionStore, now: number) => roots(store).sort(sortSessions(now))
diff --git a/packages/app/src/pages/layout/sidebar-workspace.tsx b/packages/app/src/pages/layout/sidebar-workspace.tsx
index 0202cfc3b..cbb570106 100644
--- a/packages/app/src/pages/layout/sidebar-workspace.tsx
+++ b/packages/app/src/pages/layout/sidebar-workspace.tsx
@@ -321,7 +321,7 @@ export const SortableWorkspace = (props: {
const hasMore = createMemo(() => workspaceStore.sessionTotal > count())
const query = useQuery(() => ({ ...loadSessionsQuery(props.project.worktree) }))
const busy = createMemo(() => props.ctx.isBusy(props.directory))
- const loading = () => query.isLoading
+ const loading = () => query.isLoading && count() === 0
const touch = createMediaQuery("(hover: none)")
const showNew = createMemo(() => !loading() && (touch() || count() === 0 || (active() && !params.id)))
const loadMore = async () => {