fix flashing when swaping zoomed panes
This commit is contained in:
parent
9292a4a830
commit
c763f63f30
|
@ -59,7 +59,6 @@ module Fingers::Commands
|
||||||
fingers_pane_id = fingers_window.pane_id
|
fingers_pane_id = fingers_window.pane_id
|
||||||
|
|
||||||
tmux.swap_panes(fingers_pane_id, target_pane.pane_id)
|
tmux.swap_panes(fingers_pane_id, target_pane.pane_id)
|
||||||
tmux.zoom_pane(fingers_pane_id) if pane_was_zoomed?
|
|
||||||
end
|
end
|
||||||
|
|
||||||
private def handle_input
|
private def handle_input
|
||||||
|
@ -74,18 +73,12 @@ module Fingers::Commands
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
private def pane_was_zoomed?
|
|
||||||
target_pane.window_zoomed_flag
|
|
||||||
end
|
|
||||||
|
|
||||||
private def teardown
|
private def teardown
|
||||||
tmux.set_key_table "root"
|
tmux.set_key_table "root"
|
||||||
|
|
||||||
tmux.swap_panes(fingers_pane_id, target_pane.pane_id)
|
tmux.swap_panes(fingers_pane_id, target_pane.pane_id)
|
||||||
tmux.kill_pane(fingers_pane_id)
|
tmux.kill_pane(fingers_pane_id)
|
||||||
|
|
||||||
tmux.zoom_pane(target_pane.pane_id) if pane_was_zoomed?
|
|
||||||
|
|
||||||
restore_options
|
restore_options
|
||||||
view.run_action if state.result
|
view.run_action if state.result
|
||||||
end
|
end
|
||||||
|
|
|
@ -151,7 +151,7 @@ class Tmux
|
||||||
def swap_panes(src_id, dst_id)
|
def swap_panes(src_id, dst_id)
|
||||||
# TODO: -Z not supported on all tmux versions
|
# TODO: -Z not supported on all tmux versions
|
||||||
|
|
||||||
system(tmux, ["swap-pane", "-d", "-s", src_id, "-t", dst_id])
|
system(tmux, ["swap-pane", "-d", "-s", src_id, "-t", dst_id, "-Z"])
|
||||||
end
|
end
|
||||||
|
|
||||||
def kill_pane(id)
|
def kill_pane(id)
|
||||||
|
|
Loading…
Reference in New Issue