fix(tab): do not crash when only floating panes are left (#1266)
This commit is contained in:
parent
c53b3235c8
commit
509f236023
2 changed files with 5 additions and 1 deletions
|
|
@ -429,7 +429,7 @@ impl Screen {
|
||||||
let size = self.size;
|
let size = self.size;
|
||||||
let overlay = self.overlay.clone();
|
let overlay = self.overlay.clone();
|
||||||
for (tab_index, tab) in &mut self.tabs {
|
for (tab_index, tab) in &mut self.tabs {
|
||||||
if tab.has_selectable_panes() {
|
if tab.has_selectable_tiled_panes() {
|
||||||
let vte_overlay = overlay.generate_overlay(size);
|
let vte_overlay = overlay.generate_overlay(size);
|
||||||
tab.render(&mut output, Some(vte_overlay));
|
tab.render(&mut output, Some(vte_overlay));
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -1035,6 +1035,10 @@ impl Tab {
|
||||||
.filter(|(_, p)| p.selectable());
|
.filter(|(_, p)| p.selectable());
|
||||||
selectable_tiled_panes.count() > 0 || selectable_floating_panes.count() > 0
|
selectable_tiled_panes.count() > 0 || selectable_floating_panes.count() > 0
|
||||||
}
|
}
|
||||||
|
pub fn has_selectable_tiled_panes(&self) -> bool {
|
||||||
|
let selectable_tiled_panes = self.tiled_panes.get_panes().filter(|(_, p)| p.selectable());
|
||||||
|
selectable_tiled_panes.count() > 0
|
||||||
|
}
|
||||||
pub fn resize_whole_tab(&mut self, new_screen_size: Size) {
|
pub fn resize_whole_tab(&mut self, new_screen_size: Size) {
|
||||||
self.floating_panes.resize(new_screen_size);
|
self.floating_panes.resize(new_screen_size);
|
||||||
self.tiled_panes.resize(new_screen_size);
|
self.tiled_panes.resize(new_screen_size);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue