@@ -78,21 +78,20 @@ where
81− fn supports_keyboard_enhancement_protocol(&self) -> io::Result<bool> {
81+ fn supports_keyboard_enhancement_protocol(&self) -> bool {
82− self.supports_keyboard_enhancement_protocol
82+ *self.supports_keyboard_enhancement_protocol
83− .get_or_try_init(|| {
83+ .get_or_init(|| {
84 use std::time::Instant;
84 use std::time::Instant;
86 let now = Instant::now();
86 let now = Instant::now();
87− let support = terminal::supports_keyboard_enhancement();
87+ let supported = matches!(terminal::supports_keyboard_enhancement(), Ok(true));
88 log::debug!(
88 log::debug!(
89 "The keyboard enhancement protocol is {}supported in this terminal (checked in {:?})",
89 "The keyboard enhancement protocol is {}supported in this terminal (checked in {:?})",
90− if matches!(support, Ok(true)) { "" } else { "not " },
90+ if supported { "" } else { "not " },
91 Instant::now().duration_since(now)
91 Instant::now().duration_since(now)
@@ -125,7 +124,7 @@ where
125 if config.enable_mouse_capture {
124 if config.enable_mouse_capture {
126 execute!(self.buffer, EnableMouseCapture)?;
125 execute!(self.buffer, EnableMouseCapture)?;
128− if self.supports_keyboard_enhancement_protocol()? {
127+ if self.supports_keyboard_enhancement_protocol() {
129 execute!(
128 execute!(
130 self.buffer,
129 self.buffer,
131 PushKeyboardEnhancementFlags(
130 PushKeyboardEnhancementFlags(
@@ -143,7 +142,7 @@ where
143 if config.enable_mouse_capture {
142 if config.enable_mouse_capture {
144 execute!(self.buffer, DisableMouseCapture)?;
143 execute!(self.buffer, DisableMouseCapture)?;
146− if self.supports_keyboard_enhancement_protocol()? {
145+ if self.supports_keyboard_enhancement_protocol() {
147 execute!(self.buffer, PopKeyboardEnhancementFlags)?;
146 execute!(self.buffer, PopKeyboardEnhancementFlags)?;
149 execute!(
148 execute!(