aboutsummaryrefslogtreecommitdiff
path: root/helix-term
diff options
context:
space:
mode:
authorBlaž Hrastnik2020-10-19 07:20:59 +0000
committerBlaž Hrastnik2020-12-03 04:04:42 +0000
commitb2b3083a623ec3dc5e2d1ea9c6ba35970efe19a3 (patch)
treeb9d55c8035619a99bad7c15e0a9d7676a76b771a /helix-term
parent13cb442850ac3cd4b884a62711f0eb8740270d74 (diff)
Support multiple open views.
Diffstat (limited to 'helix-term')
-rw-r--r--helix-term/src/application.rs13
1 files changed, 5 insertions, 8 deletions
diff --git a/helix-term/src/application.rs b/helix-term/src/application.rs
index 1e719f5f..9c90b6f3 100644
--- a/helix-term/src/application.rs
+++ b/helix-term/src/application.rs
@@ -354,7 +354,7 @@ impl Application {
fn render(&mut self) {
let viewport = Rect::new(OFFSET, 0, self.terminal.size.0, self.terminal.size.1 - 2); // - 2 for statusline and prompt
- if let Some(view) = &mut self.editor.view {
+ if let Some(view) = self.editor.view_mut() {
self.terminal.render_view(view, viewport);
if let Some(prompt) = &self.prompt {
if prompt.should_close {
@@ -368,11 +368,8 @@ impl Application {
self.terminal.draw();
// TODO: drop unwrap
- self.terminal.render_cursor(
- self.editor.view.as_ref().unwrap(),
- self.prompt.as_ref(),
- viewport,
- );
+ self.terminal
+ .render_cursor(self.editor.view().unwrap(), self.prompt.as_ref(), viewport);
}
pub async fn event_loop(&mut self) {
@@ -392,7 +389,7 @@ impl Application {
self.terminal.resize(width, height);
// TODO: simplistic ensure cursor in view for now
- if let Some(view) = &mut self.editor.view {
+ if let Some(view) = self.editor.view_mut() {
view.size = self.terminal.size;
view.ensure_cursor_in_view()
};
@@ -408,7 +405,7 @@ impl Application {
.handle_input(event, &mut self.editor);
self.render();
- } else if let Some(view) = &mut self.editor.view {
+ } else if let Some(view) = self.editor.view_mut() {
let keys = vec![event];
// TODO: sequences (`gg`)
// TODO: handle count other than 1