diff options
| author | Aram Drevekenin <aram@poor.dev> | 2025-07-08 11:06:03 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-08 11:06:03 +0200 |
| commit | 358caa180ce7c60b8923caa98cf339f897d14feb (patch) | |
| tree | bb14df05b46d907a7af55ae98095abd8e9f4e7b4 /default-plugins | |
| parent | fix(plugins): use the terminal title when spawning terminals (#4272) (diff) | |
| download | sl0ppij-358caa180ce7c60b8923caa98cf339f897d14feb.tar.gz sl0ppij-358caa180ce7c60b8923caa98cf339f897d14feb.tar.xz sl0ppij-358caa180ce7c60b8923caa98cf339f897d14feb.zip | |
fix(tabs): allow setting cwd without a layout (#4273)
* working for cli and keybinding
* working for plugin API
* style(fmt): rustfmt
* docs(changelog): add PR
Diffstat (limited to 'default-plugins')
4 files changed, 11 insertions, 6 deletions
diff --git a/default-plugins/compact-bar/src/keybind_utils.rs b/default-plugins/compact-bar/src/keybind_utils.rs index c871d7c5..2a86dc88 100644 --- a/default-plugins/compact-bar/src/keybind_utils.rs +++ b/default-plugins/compact-bar/src/keybind_utils.rs @@ -348,7 +348,10 @@ impl KeybindProcessor { |action: &Action| matches!(action, Action::GoToPreviousTab), |action: &Action| matches!(action, Action::GoToNextTab), |action: &Action| { - matches!(action, Action::NewTab(None, _, None, None, None, true)) + matches!( + action, + Action::NewTab(None, _, None, None, None, true, None) + ) }, |action: &Action| matches!(action, Action::CloseTab), |action: &Action| matches!(action, Action::SwitchToMode(InputMode::RenameTab)), diff --git a/default-plugins/fixture-plugin-for-tests/src/main.rs b/default-plugins/fixture-plugin-for-tests/src/main.rs index 7f66fa4e..47e1295a 100644 --- a/default-plugins/fixture-plugin-for-tests/src/main.rs +++ b/default-plugins/fixture-plugin-for-tests/src/main.rs @@ -92,7 +92,9 @@ impl ZellijPlugin for State { }", ); }, - BareKey::Char('c') if key.has_no_modifiers() => new_tab(), + BareKey::Char('c') if key.has_no_modifiers() => { + new_tab(Some("new_tab_name"), Some("/path/to/my/cwd")) + }, BareKey::Char('d') if key.has_no_modifiers() => go_to_next_tab(), BareKey::Char('e') if key.has_no_modifiers() => go_to_previous_tab(), BareKey::Char('f') if key.has_no_modifiers() => { diff --git a/default-plugins/status-bar/src/one_line_ui.rs b/default-plugins/status-bar/src/one_line_ui.rs index 1902ac63..8ab5687d 100644 --- a/default-plugins/status-bar/src/one_line_ui.rs +++ b/default-plugins/status-bar/src/one_line_ui.rs @@ -1296,7 +1296,7 @@ fn get_keys_and_hints(mi: &ModeInfo) -> Vec<(String, String, Vec<KeyWithModifier }; vec![ - (s("New"), s("New"), single_action_key(&km, &[A::NewTab(None, vec![], None, None, None, true), TO_NORMAL])), + (s("New"), s("New"), single_action_key(&km, &[A::NewTab(None, vec![], None, None, None, true, None), TO_NORMAL])), (s("Change focus"), s("Move"), focus_keys), (s("Close"), s("Close"), single_action_key(&km, &[A::CloseTab, TO_NORMAL])), (s("Rename"), s("Rename"), @@ -1381,7 +1381,7 @@ fn get_keys_and_hints(mi: &ModeInfo) -> Vec<(String, String, Vec<KeyWithModifier (s("Split down"), s("Down"), action_key(&km, &[A::NewPane(Some(Dir::Down), None, false), TO_NORMAL])), (s("Split right"), s("Right"), action_key(&km, &[A::NewPane(Some(Dir::Right), None, false), TO_NORMAL])), (s("Fullscreen"), s("Fullscreen"), action_key(&km, &[A::ToggleFocusFullscreen, TO_NORMAL])), - (s("New tab"), s("New"), action_key(&km, &[A::NewTab(None, vec![], None, None, None, true), TO_NORMAL])), + (s("New tab"), s("New"), action_key(&km, &[A::NewTab(None, vec![], None, None, None, true, None), TO_NORMAL])), (s("Rename tab"), s("Rename"), action_key(&km, &[A::SwitchToMode(IM::RenameTab), A::TabNameInput(vec![0])])), (s("Previous Tab"), s("Previous"), action_key(&km, &[A::GoToPreviousTab, TO_NORMAL])), diff --git a/default-plugins/status-bar/src/second_line.rs b/default-plugins/status-bar/src/second_line.rs index fbc02b51..82ffe4b1 100644 --- a/default-plugins/status-bar/src/second_line.rs +++ b/default-plugins/status-bar/src/second_line.rs @@ -173,7 +173,7 @@ fn get_keys_and_hints(mi: &ModeInfo) -> Vec<(String, String, Vec<KeyWithModifier }; vec![ - (s("New"), s("New"), action_key(&km, &[A::NewTab(None, vec![], None, None, None, true), TO_NORMAL])), + (s("New"), s("New"), action_key(&km, &[A::NewTab(None, vec![], None, None, None, true, None), TO_NORMAL])), (s("Change focus"), s("Move"), focus_keys), (s("Close"), s("Close"), action_key(&km, &[A::CloseTab, TO_NORMAL])), (s("Rename"), s("Rename"), @@ -253,7 +253,7 @@ fn get_keys_and_hints(mi: &ModeInfo) -> Vec<(String, String, Vec<KeyWithModifier (s("Split down"), s("Down"), action_key(&km, &[A::NewPane(Some(Dir::Down), None, false), TO_NORMAL])), (s("Split right"), s("Right"), action_key(&km, &[A::NewPane(Some(Dir::Right), None, false), TO_NORMAL])), (s("Fullscreen"), s("Fullscreen"), action_key(&km, &[A::ToggleFocusFullscreen, TO_NORMAL])), - (s("New tab"), s("New"), action_key(&km, &[A::NewTab(None, vec![], None, None, None, true), TO_NORMAL])), + (s("New tab"), s("New"), action_key(&km, &[A::NewTab(None, vec![], None, None, None, true, None), TO_NORMAL])), (s("Rename tab"), s("Rename"), action_key(&km, &[A::SwitchToMode(IM::RenameTab), A::TabNameInput(vec![0])])), (s("Previous Tab"), s("Previous"), action_key(&km, &[A::GoToPreviousTab, TO_NORMAL])), |
