@@ -976,16 +976,15 @@ impl EditorView {
976 doc.set_selection(view_id, Selection::point(pos));
976 doc.set_selection(view_id, Selection::point(pos));
979− editor.tree.focus = view_id;
979+ editor.focus(view_id);
981 return EventResult::Consumed(None);
981 return EventResult::Consumed(None);
984 if let Some((coords, view_id)) = gutter_coords_and_view(editor, row, column) {
984 if let Some((coords, view_id)) = gutter_coords_and_view(editor, row, column) {
985− editor.tree.focus = view_id;
985+ editor.focus(view_id);
987− let view = editor.tree.get(view_id);
987+ let (view, doc) = current!(cxt.editor);
988− let doc = editor.documents.get_mut(&view.doc).unwrap();
990 let path = match doc.path() {
989 let path = match doc.path() {
991 Some(path) => path.clone(),
990 Some(path) => path.clone(),
@@ -1064,10 +1063,9 @@ impl EditorView {
1065 MouseEventKind::Up(MouseButton::Right) => {
1064 MouseEventKind::Up(MouseButton::Right) => {
1066 if let Some((coords, view_id)) = gutter_coords_and_view(cxt.editor, row, column) {
1065 if let Some((coords, view_id)) = gutter_coords_and_view(cxt.editor, row, column) {
1067− cxt.editor.tree.focus = view_id;
1066+ cxt.editor.focus(view_id);
1069− let view = cxt.editor.tree.get(view_id);
1068+ let (view, doc) = current!(cxt.editor);
1070− let doc = cxt.editor.documents.get_mut(&view.doc).unwrap();
1071 let line = coords.row + view.offset.row;
1069 let line = coords.row + view.offset.row;
1072 if let Ok(pos) = doc.text().try_line_to_char(line) {
1070 if let Ok(pos) = doc.text().try_line_to_char(line) {
1073 doc.set_selection(view_id, Selection::point(pos));
1071 doc.set_selection(view_id, Selection::point(pos));
@@ -1100,7 +1098,7 @@ impl EditorView {
1100 if let Some((pos, view_id)) = pos_and_view(editor, row, column) {
1098 if let Some((pos, view_id)) = pos_and_view(editor, row, column) {
1101 let doc = editor.document_mut(editor.tree.get(view_id).doc).unwrap();
1099 let doc = editor.document_mut(editor.tree.get(view_id).doc).unwrap();
1102 doc.set_selection(view_id, Selection::point(pos));
1100 doc.set_selection(view_id, Selection::point(pos));
1103− editor.tree.focus = view_id;
1101+ cxt.editor.focus(view_id);
1104 commands::MappableCommand::paste_primary_clipboard_before.execute(cxt);
1102 commands::MappableCommand::paste_primary_clipboard_before.execute(cxt);
1106 return EventResult::Consumed(None);
1104 return EventResult::Consumed(None);