From 1d8bb2249b7153b2e9d3591534bdca32176c9975 Mon Sep 17 00:00:00 2001 From: A-Walrus Date: Mon, 3 Oct 2022 18:07:21 +0300 Subject: Change focus to modified docs on quit (#3872) * Change focus to modified docs on quit When quitting with modified documents, automatically switch focus to one of them. * Update helix-term/src/commands/typed.rs Co-authored-by: Poliorcetics * Make it work with buffer-close-all and the like * Cleanup Use Cow instead of String, and rename DoesntExist -> DoesNotExist Co-authored-by: Poliorcetics --- helix-view/src/document.rs | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'helix-view/src/document.rs') diff --git a/helix-view/src/document.rs b/helix-view/src/document.rs index 2ef99c6a..b6b2f664 100644 --- a/helix-view/src/document.rs +++ b/helix-view/src/document.rs @@ -5,6 +5,7 @@ use helix_core::auto_pairs::AutoPairs; use helix_core::Range; use serde::de::{self, Deserialize, Deserializer}; use serde::Serialize; +use std::borrow::Cow; use std::cell::Cell; use std::collections::HashMap; use std::fmt::Display; @@ -1038,6 +1039,12 @@ impl Document { .map(helix_core::path::get_relative_path) } + pub fn display_name(&self) -> Cow<'static, str> { + self.relative_path() + .map(|path| path.to_string_lossy().to_string().into()) + .unwrap_or_else(|| SCRATCH_BUFFER_NAME.into()) + } + // transact(Fn) ? // -- LSP methods -- cgit v1.2.3-70-g09d2