From 7b8e4ac95a83513b315af29591ae957ae861605c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bla=C5=BE=20Hrastnik?= Date: Tue, 23 Aug 2022 11:44:10 +0900 Subject: [PATCH] Editor: remove duplication for view focus/swap commands --- helix-term/src/commands.rs | 17 +++++++++-------- helix-view/src/editor.rs | 32 ++++---------------------------- 2 files changed, 13 insertions(+), 36 deletions(-) diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index ccc959c65..16f7e6012 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -33,6 +33,7 @@ use helix_view::{ info::Info, input::KeyEvent, keyboard::KeyCode, + tree, view::View, Document, DocumentId, Editor, ViewId, }; @@ -4080,35 +4081,35 @@ fn rotate_view(cx: &mut Context) { } fn jump_view_right(cx: &mut Context) { - cx.editor.focus_right() + cx.editor.focus_direction(tree::Direction::Right) } fn jump_view_left(cx: &mut Context) { - cx.editor.focus_left() + cx.editor.focus_direction(tree::Direction::Left) } fn jump_view_up(cx: &mut Context) { - cx.editor.focus_up() + cx.editor.focus_direction(tree::Direction::Up) } fn jump_view_down(cx: &mut Context) { - cx.editor.focus_down() + cx.editor.focus_direction(tree::Direction::Down) } fn swap_view_right(cx: &mut Context) { - cx.editor.swap_right() + cx.editor.swap_split_in_direction(tree::Direction::Right) } fn swap_view_left(cx: &mut Context) { - cx.editor.swap_left() + cx.editor.swap_split_in_direction(tree::Direction::Left) } fn swap_view_up(cx: &mut Context) { - cx.editor.swap_up() + cx.editor.swap_split_in_direction(tree::Direction::Up) } fn swap_view_down(cx: &mut Context) { - cx.editor.swap_down() + cx.editor.swap_split_in_direction(tree::Direction::Down) } fn transpose_view(cx: &mut Context) { diff --git a/helix-view/src/editor.rs b/helix-view/src/editor.rs index a49fae00d..d6c896933 100644 --- a/helix-view/src/editor.rs +++ b/helix-view/src/editor.rs @@ -1095,36 +1095,12 @@ impl Editor { self.tree.focus_next(); } - pub fn focus_right(&mut self) { - self.tree.focus_direction(tree::Direction::Right); + pub fn focus_direction(&mut self, direction: tree::Direction) { + self.tree.focus_direction(direction); } - pub fn focus_left(&mut self) { - self.tree.focus_direction(tree::Direction::Left); - } - - pub fn focus_up(&mut self) { - self.tree.focus_direction(tree::Direction::Up); - } - - pub fn focus_down(&mut self) { - self.tree.focus_direction(tree::Direction::Down); - } - - pub fn swap_right(&mut self) { - self.tree.swap_split_in_direction(tree::Direction::Right); - } - - pub fn swap_left(&mut self) { - self.tree.swap_split_in_direction(tree::Direction::Left); - } - - pub fn swap_up(&mut self) { - self.tree.swap_split_in_direction(tree::Direction::Up); - } - - pub fn swap_down(&mut self) { - self.tree.swap_split_in_direction(tree::Direction::Down); + pub fn swap_split_in_direction(&mut self, direction: tree::Direction) { + self.tree.swap_split_in_direction(direction); } pub fn transpose_view(&mut self) {