fix: enter and leave commands should treat the search results as regular entities (#1687)

This commit is contained in:
三咲雅 · Misaki Masa 2024-09-26 08:50:07 +08:00 committed by GitHub
parent 5b66192332
commit c4ffdc08bb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 7 additions and 10 deletions

View File

@ -1,4 +1,4 @@
use yazi_shared::{event::{Cmd, Data}, fs::Url, render};
use yazi_shared::{event::{Cmd, Data}, fs::Url};
use crate::manager::Manager;

View File

@ -1,6 +1,6 @@
use yazi_config::PLUGIN;
use yazi_plugin::isolate;
use yazi_shared::{MIME_DIR, event::{Cmd, Data}, render};
use yazi_shared::{MIME_DIR, event::{Cmd, Data}};
use crate::manager::Manager;

View File

@ -42,11 +42,11 @@ impl Tabs {
} else if let Some(h) = self.active().current.hovered() {
tab.conf = self.active().conf.clone();
tab.apply_files_attrs();
tab.reveal(h.url_owned());
tab.reveal(h.url.to_regular());
} else {
tab.conf = self.active().conf.clone();
tab.apply_files_attrs();
tab.cd(self.active().cwd().to_owned());
tab.cd(self.active().cwd().to_regular());
}
self.items.insert(self.cursor + 1, tab);

View File

@ -4,6 +4,6 @@ use crate::tab::Tab;
impl Tab {
pub fn enter(&mut self, _: Cmd) {
self.current.hovered().filter(|h| h.is_dir()).map(|h| h.url_owned()).map(|u| self.cd(u));
self.current.hovered().filter(|h| h.is_dir()).map(|h| h.url.to_regular()).map(|u| self.cd(u));
}
}

View File

@ -15,9 +15,9 @@ impl Tab {
self
.current
.hovered()
.and_then(|h| h.parent())
.and_then(|h| h.url.parent_url())
.filter(|u| u != self.cwd())
.or_else(|| self.cwd().parent_url())
.map(|u| self.cd(u));
.map(|u| self.cd(u.into_regular()));
}
}

View File

@ -101,7 +101,4 @@ impl File {
#[inline]
pub fn stem(&self) -> Option<&OsStr> { self.url.file_stem() }
#[inline]
pub fn parent(&self) -> Option<Url> { self.url.parent_url() }
}