diff options
| author | Aram Drevekenin <aram@poor.dev> | 2021-01-06 10:10:25 +0100 |
|---|---|---|
| committer | Aram Drevekenin <aram@poor.dev> | 2021-01-06 10:10:25 +0100 |
| commit | d8fca1d808d2bab0441ad3044a6512e5b2eaac96 (patch) | |
| tree | 53e1663226d565e6bb9a1f7e920adaf24568c49a /src | |
| parent | Acutually pass combined position and size (diff) | |
| download | sl0ppij-d8fca1d808d2bab0441ad3044a6512e5b2eaac96.tar.gz sl0ppij-d8fca1d808d2bab0441ad3044a6512e5b2eaac96.tar.xz sl0ppij-d8fca1d808d2bab0441ad3044a6512e5b2eaac96.zip | |
fix(render): properly render plugin borders and content
Diffstat (limited to 'src')
| -rw-r--r-- | src/tab.rs | 1 | ||||
| -rw-r--r-- | src/terminal_pane/plugin_pane.rs | 5 |
2 files changed, 5 insertions, 1 deletions
@@ -563,6 +563,7 @@ impl Tab { // TBD } PaneKind::PluginPane(_) => { + boundaries.add_rect(&terminal); if let Some(output) = terminal.render() { write!( stdout, diff --git a/src/terminal_pane/plugin_pane.rs b/src/terminal_pane/plugin_pane.rs index b3525338..3da072eb 100644 --- a/src/terminal_pane/plugin_pane.rs +++ b/src/terminal_pane/plugin_pane.rs @@ -111,7 +111,10 @@ impl Pane for PluginPane { .unwrap(); self.should_render = false; - Some(buf_rx.recv().unwrap()) + let goto_plugin_coordinates = format!("\u{1b}[{};{}H", self.position_and_size.y + 1, self.position_and_size.x + 1); // goto row/col and reset styles + let reset_styles = "\u{1b}[m"; + let vte_output = format!("{}{}{}", goto_plugin_coordinates, reset_styles, buf_rx.recv().unwrap()); + Some(vte_output) } else { None } |
