From ea502c8665332932b2311df3852b5ac8df6509af Mon Sep 17 00:00:00 2001 From: Blaž Hrastnik Date: Mon, 21 Dec 2020 13:58:54 +0900 Subject: fix change -> change -> undo -> change -> undo -> undo. --- helix-term/src/commands.rs | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) (limited to 'helix-term/src/commands.rs') diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index a8aea914..7722eca5 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -660,21 +660,15 @@ pub fn insert_char_prompt(prompt: &mut Prompt, c: char) { // Undo / Redo -pub fn undo(cx: &mut Context) { - if let Some(revert) = cx.view.doc.history.undo() { - cx.view.doc.version += 1; - cx.view.doc.apply(&revert); - // TODO: undo/redo needs to avoid storing in self.changes/self.old_state - } +// TODO: each command could simply return a Option, then the higher level handles +// storing it? - // TODO: each command could simply return a Option, then the higher level handles storing it? +pub fn undo(cx: &mut Context) { + cx.view.doc.undo(); } pub fn redo(cx: &mut Context) { - if let Some(transaction) = cx.view.doc.history.redo() { - cx.view.doc.version += 1; - cx.view.doc.apply(&transaction); - } + cx.view.doc.redo(); } // Yank / Paste -- cgit v1.2.3-70-g09d2