use super::AppModel;
use crate::binding::WorkspaceKind;
use std::path::Path;
impl AppModel {
pub fn focused_ws_name(&self) -> Option<String> {
self.focus
.ws
.as_deref()
.and_then(Path::file_name)
.map(|s| s.to_string_lossy().into_owned())
}
pub fn workspace_names(&self) -> Vec<String> {
self.snap
.workspaces
.iter()
.filter_map(|w| match &w.kind {
WorkspaceKind::Named { name } => Some(name.clone()),
_ => None,
})
.collect()
}
pub fn move_targets(&self, owner: &str) -> Vec<String> {
self.workspace_names()
.into_iter()
.filter(|n| n != owner)
.collect()
}
}