fix(sessions): preflight every worktree move
This commit is contained in:
@@ -11,6 +11,7 @@ import { HelpDialog } from '../ui/HelpDialog';
|
||||
import { OpenCodeStatusDialog } from '../ui/OpenCodeStatusDialog';
|
||||
import { SessionSidebar } from '@/components/session/SessionSidebar';
|
||||
import { SessionDialogs } from '@/components/session/SessionDialogs';
|
||||
import { SessionWorktreeMoveConfirmDialog } from '@/components/session/sidebar/SessionWorktreeMoveConfirmDialog';
|
||||
import { ScheduledTasksDialog } from '@/components/session/ScheduledTasksDialog';
|
||||
import { ArchiveView } from '@/components/views/ArchiveView';
|
||||
import { WorktreesView } from '@/components/views/WorktreesView';
|
||||
@@ -19,6 +20,11 @@ import { MultiRunLauncher } from '@/components/multirun';
|
||||
|
||||
import { useUIStore } from '@/stores/useUIStore';
|
||||
import { useSessionUIStore } from '@/sync/session-ui-store';
|
||||
import {
|
||||
cancelSessionTreeMove,
|
||||
confirmSessionTreeMove,
|
||||
useSessionTreeMoveConfirmation,
|
||||
} from '@/lib/worktrees/sessionWorktreeMove';
|
||||
import { useUpdatePolling } from '@/hooks/useUpdatePolling';
|
||||
import { useDeviceInfo } from '@/lib/device';
|
||||
import { cn } from '@/lib/utils';
|
||||
@@ -80,6 +86,8 @@ export const MainLayout: React.FC = () => {
|
||||
|
||||
useUpdatePolling();
|
||||
|
||||
const sessionTreeMoveConfirmation = useSessionTreeMoveConfirmation();
|
||||
|
||||
React.useEffect(() => {
|
||||
const previous = useUIStore.getState().isMobile;
|
||||
if (previous !== isMobile) {
|
||||
@@ -97,6 +105,12 @@ export const MainLayout: React.FC = () => {
|
||||
<HelpDialog />
|
||||
<OpenCodeStatusDialog />
|
||||
<SessionDialogs />
|
||||
<SessionWorktreeMoveConfirmDialog
|
||||
value={sessionTreeMoveConfirmation}
|
||||
onMoveSessionOnly={() => confirmSessionTreeMove(false)}
|
||||
onMoveAllChanges={() => confirmSessionTreeMove(true)}
|
||||
onCancel={cancelSessionTreeMove}
|
||||
/>
|
||||
|
||||
{/* Persistent top-left controls (toggle + project actions) that
|
||||
stay put while the sidebar/header animate beneath them. */}
|
||||
|
||||
Reference in New Issue
Block a user