diff options
author | Aram Drevekenin <aram@poor.dev> | 2023-08-30 09:58:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-30 09:58:48 +0200 |
commit | 2081a2e64fcd3c93489d4b4c22478faf784ef73f (patch) | |
tree | 201615241bc9be0b4f2cab1f460ef3c866ff4240 /src | |
parent | 90875b0c00498fef00fac673086bd30145b64ccd (diff) |
fix(reconnect): do not clear terminal state when entering alternate screen (#2750)
* debug
* refactor(reconnect): articular reconnection logic
Diffstat (limited to 'src')
-rw-r--r-- | src/commands.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/commands.rs b/src/commands.rs index 5ab188d69..96f49c315 100644 --- a/src/commands.rs +++ b/src/commands.rs @@ -340,6 +340,7 @@ pub(crate) fn start_client(opts: CliArgs) { let layout = layout.clone(); let mut config_options = config_options.clone(); let mut opts = opts.clone(); + let mut is_a_reconnect = false; if let Some(reconnect_to_session) = &reconnect_to_session { // this is integration code to make session reconnects work with this existing, @@ -358,6 +359,7 @@ pub(crate) fn start_client(opts: CliArgs) { opts.session = None; config_options.attach_to_session = None; } + is_a_reconnect = true; } let start_client_plan = |session_name: std::string::String| { @@ -417,6 +419,7 @@ pub(crate) fn start_client(opts: CliArgs) { attach_layout, tab_position_to_focus, pane_id_to_focus, + is_a_reconnect, ); } else { if let Some(session_name) = opts.session.clone() { @@ -430,6 +433,7 @@ pub(crate) fn start_client(opts: CliArgs) { Some(layout), None, None, + is_a_reconnect, ); } else { if let Some(session_name) = config_options.session_name.as_ref() { @@ -466,6 +470,7 @@ pub(crate) fn start_client(opts: CliArgs) { attach_layout, None, None, + is_a_reconnect, ); }, _ => { @@ -479,6 +484,7 @@ pub(crate) fn start_client(opts: CliArgs) { Some(layout), None, None, + is_a_reconnect, ); }, } @@ -501,6 +507,7 @@ pub(crate) fn start_client(opts: CliArgs) { Some(layout), None, None, + is_a_reconnect, ); } } |