From e7a683ef9d4e6fbb240d010df29e616b594f934c Mon Sep 17 00:00:00 2001 From: sxyazi Date: Sun, 17 Sep 2023 18:01:54 +0800 Subject: [PATCH] revert `url_owned` --- core/src/files/file.rs | 5 ++++- core/src/files/files.rs | 6 +++--- core/src/manager/finder.rs | 2 +- core/src/manager/folder.rs | 2 +- core/src/manager/manager.rs | 8 ++++---- 5 files changed, 13 insertions(+), 10 deletions(-) diff --git a/core/src/files/file.rs b/core/src/files/file.rs index f63d7335..b1b1d756 100644 --- a/core/src/files/file.rs +++ b/core/src/files/file.rs @@ -42,7 +42,10 @@ impl File { pub fn url(&self) -> &Url { &self.url } #[inline] - pub fn url_mut(&mut self) -> &mut Url { &mut self.url } + pub fn url_mut(&mut self) -> &mut Url { &mut self.url } + + #[inline] + pub fn url_owned(&self) -> Url { self.url.clone() } #[inline] pub fn name(&self) -> Option<&OsStr> { self.url.file_name() } diff --git a/core/src/files/files.rs b/core/src/files/files.rs index f6ec4cbf..2781740f 100644 --- a/core/src/files/files.rs +++ b/core/src/files/files.rs @@ -89,7 +89,7 @@ impl Files { self.items.iter().any(|f| !self.selected.contains(&f.url)) }; - self.selected = self.iter().map(|f| f.url().to_owned()).collect(); + self.selected = self.iter().map(|f| f.url_owned()).collect(); b } Some(false) => { @@ -106,7 +106,7 @@ impl Files { if self.selected.contains(&item.url) { self.selected.remove(&item.url); } else { - self.selected.insert(item.url().to_owned()); + self.selected.insert(item.url_owned()); } } !self.items.is_empty() @@ -116,7 +116,7 @@ impl Files { pub fn select_index(&mut self, indices: &BTreeSet, state: Option) -> bool { let mut applied = false; - let paths: Vec<_> = self.pick(indices).iter().map(|f| f.url().to_owned()).collect(); + let paths: Vec<_> = self.pick(indices).iter().map(|f| f.url_owned()).collect(); for path in paths { applied |= self.select(&path, state); diff --git a/core/src/manager/finder.rs b/core/src/manager/finder.rs index fb6e310b..01a6b85a 100644 --- a/core/src/manager/finder.rs +++ b/core/src/manager/finder.rs @@ -84,7 +84,7 @@ impl Finder { continue; } - self.matched.insert(file.url().to_owned(), i); + self.matched.insert(file.url_owned(), i); if self.matched.len() > 99 { break; } diff --git a/core/src/manager/folder.rs b/core/src/manager/folder.rs index 6d04b56e..6899d1f7 100644 --- a/core/src/manager/folder.rs +++ b/core/src/manager/folder.rs @@ -114,7 +114,7 @@ impl Folder { #[inline] pub fn hover_repos(&mut self) -> bool { - self.hover(&self.hovered.as_ref().map(|h| h.url().to_owned()).unwrap_or_default()) + self.hover(&self.hovered.as_ref().map(|h| h.url_owned()).unwrap_or_default()) } pub fn hover_force(&mut self, file: File) -> bool { diff --git a/core/src/manager/manager.rs b/core/src/manager/manager.rs index 7bc16758..373c418e 100644 --- a/core/src/manager/manager.rs +++ b/core/src/manager/manager.rs @@ -84,7 +84,7 @@ impl Manager { pub fn yank(&mut self, cut: bool) -> bool { self.yanked.0 = cut; - self.yanked.1 = self.selected().into_iter().map(|f| f.url().to_owned()).collect(); + self.yanked.1 = self.selected().into_iter().map(|f| f.url_owned()).collect(); false } @@ -131,7 +131,7 @@ impl Manager { .into_iter() .map(|f| { ( - f.url().to_owned(), + f.url_owned(), f.is_dir().then(|| MIME_DIR.to_owned()).or_else(|| self.mimetype.get(f.url()).cloned()), ) }) @@ -208,7 +208,7 @@ impl Manager { return self.bulk_rename(); } - let Some(hovered) = self.hovered().map(|h| h.url().to_owned()) else { + let Some(hovered) = self.hovered().map(|h| h.url_owned()) else { return false; }; @@ -333,7 +333,7 @@ impl Manager { pub fn update_read(&mut self, op: FilesOp) -> bool { let url = op.url().clone(); let cwd = self.cwd().to_owned(); - let hovered = self.hovered().map(|h| h.url().to_owned()); + let hovered = self.hovered().map(|h| h.url_owned()); let mut b = if cwd == url { self.current_mut().update(op)