File tree Expand file tree Collapse file tree
packages/tui/src/routes/session/composer Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -22,6 +22,7 @@ interface Tab {
2222const ComposerContext = createContext < {
2323 register : ( tab : Tab ) => ( ) => void
2424 active : ( id : string ) => boolean
25+ close : ( ) => void
2526} > ( )
2627
2728export function useComposerTab ( ) {
@@ -73,6 +74,7 @@ export function Composer(props: ComposerProps) {
7374 active ( id : string ) {
7475 return props . open && store . active === id
7576 } ,
77+ close,
7678 }
7779
7880 const keymap = Keymap . use ( )
Original file line number Diff line number Diff line change @@ -59,9 +59,11 @@ export function ShellTab(props: { sessionID: string }) {
5959 group : "Composer" ,
6060 bind : "up" ,
6161 run ( ) {
62- const list = entries ( )
63- if ( list . length === 0 ) return
64- setStore ( "selected" , ( prev ) => ( prev - 1 + list . length ) % list . length )
62+ if ( store . selected === 0 ) {
63+ composer . close ( )
64+ return
65+ }
66+ setStore ( "selected" , ( prev ) => prev - 1 )
6567 } ,
6668 } ,
6769 {
Original file line number Diff line number Diff line change @@ -160,9 +160,11 @@ export function SubagentsTab(props: { sessionID: string }) {
160160 group : "Composer" ,
161161 bind : "up" ,
162162 run ( ) {
163- const list = entries ( )
164- if ( list . length === 0 ) return
165- moveTo ( ( store . selected - 1 + list . length ) % list . length , true )
163+ if ( store . selected === 0 ) {
164+ composer . close ( )
165+ return
166+ }
167+ moveTo ( store . selected - 1 , true )
166168 } ,
167169 } ,
168170 {
You can’t perform that action at this time.
0 commit comments