aboutsummaryrefslogtreecommitdiff
path: root/alacritty/src/display.rs
diff options
context:
space:
mode:
Diffstat (limited to 'alacritty/src/display.rs')
-rw-r--r--alacritty/src/display.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/alacritty/src/display.rs b/alacritty/src/display.rs
index 317c8758..6d5d810d 100644
--- a/alacritty/src/display.rs
+++ b/alacritty/src/display.rs
@@ -366,6 +366,12 @@ impl Display {
let selection = !terminal.selection().as_ref().map(Selection::is_empty).unwrap_or(true);
let mouse_mode = terminal.mode().intersects(TermMode::MOUSE_MODE);
+ let vi_mode_cursor = if terminal.mode().contains(TermMode::VI) {
+ Some(terminal.vi_mode_cursor)
+ } else {
+ None
+ };
+
// Update IME position
#[cfg(not(windows))]
self.window.update_ime_position(&terminal, &self.size_info);
@@ -419,6 +425,13 @@ impl Display {
}
}
+ // Highlight URLs at the vi mode cursor position
+ if let Some(vi_mode_cursor) = vi_mode_cursor {
+ if let Some(url) = self.urls.find_at(vi_mode_cursor.point) {
+ rects.append(&mut url.rects(&metrics, &size_info));
+ }
+ }
+
// Push visual bell after url/underline/strikeout rects
if visual_bell_intensity != 0. {
let visual_bell_rect = RenderRect::new(