From b79f5b7c3f5e3721aba25ee9d24afad92254e9b4 Mon Sep 17 00:00:00 2001 From: Pascal Kuthe Date: Tue, 9 Jan 2024 01:56:09 +0100 Subject: [PATCH] update history of a newly focused view (#9271) --- helix-term/src/ui/editor.rs | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/helix-term/src/ui/editor.rs b/helix-term/src/ui/editor.rs index c808be175e0b..ff267e42d971 100644 --- a/helix-term/src/ui/editor.rs +++ b/helix-term/src/ui/editor.rs @@ -1302,8 +1302,6 @@ impl Component for EditorView { cx.editor.status_msg = None; let mode = cx.editor.mode(); - let (view, _) = current!(cx.editor); - let focus = view.id; if let Some(on_next_key) = self.on_next_key.take() { // if there's a command waiting input, do that first @@ -1385,20 +1383,16 @@ impl Component for EditorView { return EventResult::Ignored(None); } - // if the focused view still exists and wasn't closed - if cx.editor.tree.contains(focus) { - let config = cx.editor.config(); - let mode = cx.editor.mode(); - let view = view_mut!(cx.editor, focus); - let doc = doc_mut!(cx.editor, &view.doc); + let config = cx.editor.config(); + let mode = cx.editor.mode(); + let (view, doc) = current!(cx.editor); - view.ensure_cursor_in_view(doc, config.scrolloff); + view.ensure_cursor_in_view(doc, config.scrolloff); - // Store a history state if not in insert mode. This also takes care of - // committing changes when leaving insert mode. - if mode != Mode::Insert { - doc.append_changes_to_history(view); - } + // Store a history state if not in insert mode. This also takes care of + // committing changes when leaving insert mode. + if mode != Mode::Insert { + doc.append_changes_to_history(view); } EventResult::Consumed(callback)