From 18f6a7814a7aff8fb06d6b9a795e0f8144954d1f Mon Sep 17 00:00:00 2001 From: Patrycja Balik Date: Sun, 15 Jul 2018 15:10:33 +0200 Subject: Add config for unfocused window cursor change --- src/config.rs | 10 ++++++++++ src/term/mod.rs | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/config.rs b/src/config.rs index cdf1dc21..95058d38 100644 --- a/src/config.rs +++ b/src/config.rs @@ -390,6 +390,10 @@ pub struct Config { #[serde(default, deserialize_with = "failure_default")] cursor_style: CursorStyle, + /// Use hollow block cursor when unfocused + #[serde(default="true_bool", deserialize_with = "default_true_bool")] + unfocused_hollow_cursor: bool, + /// Live config reload #[serde(default="true_bool", deserialize_with = "default_true_bool")] live_config_reload: bool, @@ -1363,6 +1367,12 @@ impl Config { self.cursor_style } + /// Use hollow block cursor when unfocused + #[inline] + pub fn unfocused_hollow_cursor(&self) -> bool { + self.unfocused_hollow_cursor + } + /// Live config reload #[inline] pub fn live_config_reload(&self) -> bool { diff --git a/src/term/mod.rs b/src/term/mod.rs index d1f48c91..02d846a4 100644 --- a/src/term/mod.rs +++ b/src/term/mod.rs @@ -998,7 +998,7 @@ impl Term { ) -> RenderableCellsIter { let selection = selection.and_then(|s| s.to_span(self)) .map(|span| span.to_range()); - let cursor = if window_focused { + let cursor = if window_focused || !config.unfocused_hollow_cursor() { self.cursor_style.unwrap_or(self.default_cursor_style) } else { CursorStyle::HollowBlock -- cgit