Reset the s:vim_pane when reattaching
Prior to this change, VTR could get confused and focus the wrong pane after reattaching the runner pane. Closes #38 - Detaching the runner pane does not reset the vim_pane
This commit is contained in:
parent
8399c4ab7b
commit
fa1e9a53e3
@ -185,6 +185,7 @@ function! s:BreakRunnerPaneToTempWindow()
|
|||||||
call s:SendTmuxCommand(full_command)
|
call s:SendTmuxCommand(full_command)
|
||||||
let s:detached_window = s:LastWindowNumber()
|
let s:detached_window = s:LastWindowNumber()
|
||||||
unlet s:runner_pane
|
unlet s:runner_pane
|
||||||
|
unlet s:vim_pane
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:RunnerDimensionSpec()
|
function! s:RunnerDimensionSpec()
|
||||||
@ -192,14 +193,6 @@ function! s:RunnerDimensionSpec()
|
|||||||
return dimensions
|
return dimensions
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:_ReattachPane()
|
|
||||||
let join_cmd = join(["join-pane", "-s", ":".s:detached_window.".0",
|
|
||||||
\ s:RunnerDimensionSpec()])
|
|
||||||
call s:SendTmuxCommand(join_cmd)
|
|
||||||
unlet s:detached_window
|
|
||||||
let s:runner_pane = s:ActivePaneIndex()
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! s:TmuxInfo(message)
|
function! s:TmuxInfo(message)
|
||||||
" TODO: this should accept optional target pane, default to current.
|
" TODO: this should accept optional target pane, default to current.
|
||||||
" Pass that to TargetedCommand as "display-message", "-p '#{...}')
|
" Pass that to TargetedCommand as "display-message", "-p '#{...}')
|
||||||
@ -273,6 +266,7 @@ endfunction
|
|||||||
|
|
||||||
function! s:ReattachPane()
|
function! s:ReattachPane()
|
||||||
if !s:DetachedPaneAvailable() | return | endif
|
if !s:DetachedPaneAvailable() | return | endif
|
||||||
|
let s:vim_pane = s:ActivePaneIndex()
|
||||||
call s:_ReattachPane()
|
call s:_ReattachPane()
|
||||||
call s:FocusVimPane()
|
call s:FocusVimPane()
|
||||||
if g:VtrClearOnReattach
|
if g:VtrClearOnReattach
|
||||||
@ -280,6 +274,14 @@ function! s:ReattachPane()
|
|||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
function! s:_ReattachPane()
|
||||||
|
let join_cmd = join(["join-pane", "-s", ":".s:detached_window.".0",
|
||||||
|
\ s:RunnerDimensionSpec()])
|
||||||
|
call s:SendTmuxCommand(join_cmd)
|
||||||
|
unlet s:detached_window
|
||||||
|
let s:runner_pane = s:ActivePaneIndex()
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! s:ReorientRunner()
|
function! s:ReorientRunner()
|
||||||
if !s:ValidRunnerPaneSet() | return | endif
|
if !s:ValidRunnerPaneSet() | return | endif
|
||||||
let temp_window = s:BreakRunnerPaneToTempWindow()
|
let temp_window = s:BreakRunnerPaneToTempWindow()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user