update history of a newly focused view (#9271)

pull/9291/head
Pascal Kuthe 6 months ago committed by GitHub
parent 0cbd8d3df1
commit 48c49f0227
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1302,8 +1302,6 @@ impl Component for EditorView {
cx.editor.status_msg = None; cx.editor.status_msg = None;
let mode = cx.editor.mode(); 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 let Some(on_next_key) = self.on_next_key.take() {
// if there's a command waiting input, do that first // if there's a command waiting input, do that first
@ -1385,20 +1383,16 @@ impl Component for EditorView {
return EventResult::Ignored(None); return EventResult::Ignored(None);
} }
// if the focused view still exists and wasn't closed let config = cx.editor.config();
if cx.editor.tree.contains(focus) { let mode = cx.editor.mode();
let config = cx.editor.config(); let (view, doc) = current!(cx.editor);
let mode = cx.editor.mode();
let view = view_mut!(cx.editor, focus);
let doc = doc_mut!(cx.editor, &view.doc);
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 // Store a history state if not in insert mode. This also takes care of
// committing changes when leaving insert mode. // committing changes when leaving insert mode.
if mode != Mode::Insert { if mode != Mode::Insert {
doc.append_changes_to_history(view); doc.append_changes_to_history(view);
}
} }
EventResult::Consumed(callback) EventResult::Consumed(callback)

Loading…
Cancel
Save