diff options
-rw-r--r-- | font/src/lib.rs | 2 | ||||
-rw-r--r-- | src/term/mod.rs | 30 |
2 files changed, 16 insertions, 16 deletions
diff --git a/font/src/lib.rs b/font/src/lib.rs index 68935e45..ad1f4f80 100644 --- a/font/src/lib.rs +++ b/font/src/lib.rs @@ -255,7 +255,7 @@ pub fn get_beam_cursor_glyph( }); } -// Returns a custom beam cursor character +// Returns a custom box cursor character pub fn get_box_cursor_glyph( ascent: i32, height: i32, diff --git a/src/term/mod.rs b/src/term/mod.rs index da59a037..571686c1 100644 --- a/src/term/mod.rs +++ b/src/term/mod.rs @@ -136,12 +136,7 @@ impl<'a> RenderableCellsIter<'a> { }.initialize(cursor_style, window_focused) } - fn populate_block_cursor(&mut self, window_focused: bool) { - if !window_focused { - self.populate_cursor(font::BOX_CURSOR_CHAR, ' '); - return; - } - + fn populate_block_cursor(&mut self) { let (text_color, cursor_color) = if self.config.custom_cursor_colors() { ( Color::Named(NamedColor::CursorText), @@ -233,15 +228,20 @@ impl<'a> RenderableCellsIter<'a> { fn initialize(mut self, cursor_style: CursorStyle, window_focused: bool) -> Self { if self.cursor_is_visible() { - match cursor_style { - CursorStyle::Block => { - self.populate_block_cursor(window_focused); - }, - CursorStyle::Beam => { - self.populate_beam_cursor(); - }, - CursorStyle::Underline => { - self.populate_underline_cursor(); + if !window_focused { + // Render the box cursor if the window is not focused + self.populate_cursor(font::BOX_CURSOR_CHAR, ' '); + } else { + match cursor_style { + CursorStyle::Block => { + self.populate_block_cursor(); + }, + CursorStyle::Beam => { + self.populate_beam_cursor(); + }, + CursorStyle::Underline => { + self.populate_underline_cursor(); + } } } } else { |