mirror of
https://github.com/Nystik-gh/ignis.git
synced 2026-06-17 04:35:53 +00:00
add "open workspace in tab" command
This commit is contained in:
31
plugin/src/workspace-picker.js
Normal file
31
plugin/src/workspace-picker.js
Normal file
@@ -0,0 +1,31 @@
|
||||
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 };
|
||||
Reference in New Issue
Block a user