Make prompt use cursor set for Insert mode (#10945)

* Resolve issue #10874

* cargo fmt
pull/10989/head
Shaun_Sheep 2 weeks ago committed by GitHub
parent dbacaaddca
commit bc73dd19d3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -2,6 +2,7 @@ use crate::compositor::{Component, Compositor, Context, Event, EventResult};
use crate::{alt, ctrl, key, shift, ui}; use crate::{alt, ctrl, key, shift, ui};
use arc_swap::ArcSwap; use arc_swap::ArcSwap;
use helix_core::syntax; use helix_core::syntax;
use helix_view::document::Mode;
use helix_view::input::KeyEvent; use helix_view::input::KeyEvent;
use helix_view::keyboard::KeyCode; use helix_view::keyboard::KeyCode;
use std::sync::Arc; use std::sync::Arc;
@ -662,7 +663,7 @@ impl Component for Prompt {
self.render_prompt(area, surface, cx) self.render_prompt(area, surface, cx)
} }
fn cursor(&self, area: Rect, _editor: &Editor) -> (Option<Position>, CursorKind) { fn cursor(&self, area: Rect, editor: &Editor) -> (Option<Position>, CursorKind) {
let line = area.height as usize - 1; let line = area.height as usize - 1;
( (
Some(Position::new( Some(Position::new(
@ -671,7 +672,7 @@ impl Component for Prompt {
+ self.prompt.len() + self.prompt.len()
+ UnicodeWidthStr::width(&self.line[..self.cursor]), + UnicodeWidthStr::width(&self.line[..self.cursor]),
)), )),
CursorKind::Block, editor.config().cursor_shape.from_mode(Mode::Insert),
) )
} }
} }

Loading…
Cancel
Save