diff options
| author | Daniel Jankowski <daniel.jankowski@rub.de> | 2024-05-25 11:29:35 +0200 |
|---|---|---|
| committer | Daniel Jankowski <daniel.jankowski@rub.de> | 2024-05-25 11:29:35 +0200 |
| commit | c186c82cad5dac26c0a2214a9fc89c5ff2c4f112 (patch) | |
| tree | 0b8846258dfea45eac30384e8c0461bba9f20d0e /src/frames.rs | |
| parent | feat(tabs): format for renaming tabs (diff) | |
| download | sl0pstatus-c186c82cad5dac26c0a2214a9fc89c5ff2c4f112.tar.gz sl0pstatus-c186c82cad5dac26c0a2214a9fc89c5ff2c4f112.tar.xz sl0pstatus-c186c82cad5dac26c0a2214a9fc89c5ff2c4f112.zip | |
feat(frames): show frames when renaming pane or searching
Diffstat (limited to 'src/frames.rs')
| -rw-r--r-- | src/frames.rs | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/frames.rs b/src/frames.rs index cfe333b..7954755 100644 --- a/src/frames.rs +++ b/src/frames.rs @@ -4,6 +4,7 @@ use zellij_tile::prelude::*; pub fn hide_frames_on_single_pane( tabs: Vec<TabInfo>, pane_info: &PaneManifest, + mode_info: &ModeInfo, plugin_pane_id: PluginIds, ) { let panes = match get_current_panes(&tabs, pane_info) { @@ -20,12 +21,27 @@ pub fn hide_frames_on_single_pane( tracing::debug!("panes {:?}", panes); - let panes: Vec<&PaneInfo> = panes.iter().filter(|p| !p.is_plugin && !p.is_floating).collect(); + let panes: Vec<&PaneInfo> = panes + .iter() + .filter(|p| !p.is_plugin && !p.is_floating) + .collect(); // frame is enabled, when content does no start at [0, 0]. With default frames // it's [1, 1] let frame_enabled = panes.iter().any(|p| p.pane_content_x - p.pane_x > 0); + tracing::debug!("mode: {:?}", mode_info.mode); + if mode_info.mode == InputMode::RenamePane + || mode_info.mode == InputMode::Search + || mode_info.mode == InputMode::EnterSearch + { + if !frame_enabled { + toggle_pane_frames(); + } + + return; + } + if panes.len() == 1 && frame_enabled { toggle_pane_frames(); } |
