aboutsummaryrefslogtreecommitdiff
path: root/src/app/input
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/input')
-rw-r--r--src/app/input/modal.rs8
-rw-r--r--src/app/input/navigate.rs4
-rw-r--r--src/app/input/sidebar.rs5
3 files changed, 10 insertions, 7 deletions
diff --git a/src/app/input/modal.rs b/src/app/input/modal.rs
index 79d066f9..3d106765 100644
--- a/src/app/input/modal.rs
+++ b/src/app/input/modal.rs
@@ -355,7 +355,7 @@ fn next_new_tab_default_name(state: &AppState) -> String {
state
.active
.and_then(|i| state.workspaces.get(i))
- .map(|ws| (ws.tabs.len() + 1).to_string())
+ .map(|ws| ws.next_public_tab_number.to_string())
.unwrap_or_else(|| "1".to_string())
}
@@ -1288,7 +1288,7 @@ mod tests {
}
#[test]
- fn closing_first_auto_tab_resets_remaining_auto_tab_and_next_prompt() {
+ fn closing_first_auto_tab_keeps_remaining_auto_tab_number_and_next_prompt() {
let mut state = state_with_workspaces(&["test"]);
open_new_tab_dialog(&mut state);
handle_rename_key(
@@ -1303,11 +1303,11 @@ mod tests {
state.workspaces[0].close_tab(0);
state.workspaces[0].switch_tab(0);
- assert_eq!(state.workspaces[0].tabs[0].display_name(), "1");
+ assert_eq!(state.workspaces[0].tabs[0].display_name(), "2");
assert!(state.workspaces[0].tabs[0].custom_name.is_none());
open_new_tab_dialog(&mut state);
- assert_eq!(state.name_input, "2");
+ assert_eq!(state.name_input, "3");
}
#[test]
diff --git a/src/app/input/navigate.rs b/src/app/input/navigate.rs
index 9d861f66..b27b5cb9 100644
--- a/src/app/input/navigate.rs
+++ b/src/app/input/navigate.rs
@@ -1943,8 +1943,8 @@ last_pane = "prefix+tab"
let lines: Vec<&str> = content.lines().collect();
assert_eq!(lines.len(), 3);
assert_eq!(lines[0], app.state.workspaces[0].id);
- assert_eq!(lines[1], format!("{}:1", app.state.workspaces[0].id));
- assert_eq!(lines[2], format!("{}-1", app.state.workspaces[0].id));
+ assert_eq!(lines[1], format!("{}:t1", app.state.workspaces[0].id));
+ assert_eq!(lines[2], format!("{}:p1", app.state.workspaces[0].id));
assert_eq!(app.state.mode, Mode::Terminal);
let _ = std::fs::remove_file(output_path);
diff --git a/src/app/input/sidebar.rs b/src/app/input/sidebar.rs
index 43093a82..c4bd52d9 100644
--- a/src/app/input/sidebar.rs
+++ b/src/app/input/sidebar.rs
@@ -1300,13 +1300,16 @@ mod tests {
.iter()
.map(|tab| tab.display_name())
.collect();
- assert_eq!(labels, vec!["foo", "2", "3"]);
+ assert_eq!(labels, vec!["foo", "3", "1"]);
assert_eq!(
app.state.workspaces[0].tabs[0].custom_name.as_deref(),
Some("foo")
);
assert!(app.state.workspaces[0].tabs[1].custom_name.is_none());
assert!(app.state.workspaces[0].tabs[2].custom_name.is_none());
+ assert_eq!(app.state.workspaces[0].tabs[0].number, 2);
+ assert_eq!(app.state.workspaces[0].tabs[1].number, 3);
+ assert_eq!(app.state.workspaces[0].tabs[2].number, 1);
assert_eq!(app.state.workspaces[0].tabs[2].root_pane, moved_root);
assert_eq!(app.state.workspaces[0].active_tab, 2);
}