Files
ignis/plugin/src/workspace-picker.js

32 lines
675 B
JavaScript
Raw Normal View History

2026-04-03 12:19:24 +02:00
const { FuzzySuggestModal } = require("obsidian");
class WorkspacePickerModal extends FuzzySuggestModal {
constructor(app) {
super(app);
this.setPlaceholder("Open workspace in new tab");
}
getItems() {
const plugin = this.app.internalPlugins.plugins.workspaces;
if (!plugin || !plugin.enabled || !plugin.instance) {
return [];
}
return Object.keys(plugin.instance.workspaces);
}
getItemText(item) {
return item;
}
onChooseItem(item) {
const url = new URL(window.location.href);
url.searchParams.set("workspace", item);
window.open(url.toString(), "_blank");
}
}
module.exports = { WorkspacePickerModal };