@@ -33,8 +33,6 @@ type SessionTabs = {
3333type SessionView = {
3434 scroll : Record < string , SessionScroll >
3535 reviewOpen ?: string [ ]
36- terminalOpened ?: boolean
37- reviewPanelOpened ?: boolean
3836}
3937
4038export type LocalProject = Partial < Project > & { worktree : string ; expanded : boolean }
@@ -78,9 +76,11 @@ export const { use: useLayout, provider: LayoutProvider } = createSimpleContext(
7876 } ,
7977 terminal : {
8078 height : 280 ,
79+ opened : false ,
8180 } ,
8281 review : {
8382 diffStyle : "split" as ReviewDiffStyle ,
83+ panelOpened : true ,
8484 } ,
8585 session : {
8686 width : 600 ,
@@ -172,7 +172,7 @@ export const { use: useLayout, provider: LayoutProvider } = createSimpleContext(
172172 const current = store . sessionView [ sessionKey ]
173173 const keep = meta . active ?? sessionKey
174174 if ( ! current ) {
175- setStore ( "sessionView" , sessionKey , { scroll : next , terminalOpened : false , reviewPanelOpened : true } )
175+ setStore ( "sessionView" , sessionKey , { scroll : next } )
176176 prune ( keep )
177177 return
178178 }
@@ -379,31 +379,31 @@ export const { use: useLayout, provider: LayoutProvider } = createSimpleContext(
379379 touch ( sessionKey )
380380 scroll . seed ( sessionKey )
381381 const s = createMemo ( ( ) => store . sessionView [ sessionKey ] ?? { scroll : { } } )
382- const terminalOpened = createMemo ( ( ) => s ( ) . terminalOpened ?? false )
383- const reviewPanelOpened = createMemo ( ( ) => s ( ) . reviewPanelOpened ?? true )
382+ const terminalOpened = createMemo ( ( ) => store . terminal ?. opened ?? false )
383+ const reviewPanelOpened = createMemo ( ( ) => store . review ?. panelOpened ?? true )
384384
385385 function setTerminalOpened ( next : boolean ) {
386- const current = store . sessionView [ sessionKey ]
386+ const current = store . terminal
387387 if ( ! current ) {
388- setStore ( "sessionView " , sessionKey , { scroll : { } , terminalOpened : next , reviewPanelOpened : true } )
388+ setStore ( "terminal " , { height : 280 , opened : next } )
389389 return
390390 }
391391
392- const value = current . terminalOpened ?? false
392+ const value = current . opened ?? false
393393 if ( value === next ) return
394- setStore ( "sessionView " , sessionKey , "terminalOpened ", next )
394+ setStore ( "terminal " , "opened ", next )
395395 }
396396
397397 function setReviewPanelOpened ( next : boolean ) {
398- const current = store . sessionView [ sessionKey ]
398+ const current = store . review
399399 if ( ! current ) {
400- setStore ( "sessionView " , sessionKey , { scroll : { } , terminalOpened : false , reviewPanelOpened : next } )
400+ setStore ( "review " , { diffStyle : "split" as ReviewDiffStyle , panelOpened : next } )
401401 return
402402 }
403403
404- const value = current . reviewPanelOpened ?? true
404+ const value = current . panelOpened ?? true
405405 if ( value === next ) return
406- setStore ( "sessionView " , sessionKey , "reviewPanelOpened ", next )
406+ setStore ( "review " , "panelOpened ", next )
407407 }
408408
409409 return {
@@ -444,8 +444,6 @@ export const { use: useLayout, provider: LayoutProvider } = createSimpleContext(
444444 if ( ! current ) {
445445 setStore ( "sessionView" , sessionKey , {
446446 scroll : { } ,
447- terminalOpened : false ,
448- reviewPanelOpened : true ,
449447 reviewOpen : open ,
450448 } )
451449 return
0 commit comments