Skip to main content

stynx_code_tui/layout/
modal_overlay.rs

1use ratatui::layout::{Constraint, Layout, Rect};
2
3pub struct ModalOverlay;
4
5impl ModalOverlay {
6    pub fn centered(percent_x: u16, percent_y: u16, area: Rect) -> Rect {
7        let vertical = Layout::vertical([
8            Constraint::Percentage((100 - percent_y) / 2),
9            Constraint::Percentage(percent_y),
10            Constraint::Percentage((100 - percent_y) / 2),
11        ])
12        .split(area);
13
14        Layout::horizontal([
15            Constraint::Percentage((100 - percent_x) / 2),
16            Constraint::Percentage(percent_x),
17            Constraint::Percentage((100 - percent_x) / 2),
18        ])
19        .split(vertical[1])[1]
20    }
21}