Window Management
Interact with application windows, workspaces, and screens.
List Windows
import { WindowManagement } from "@vicinae/api";
const windows = await WindowManagement.getWindows();
for (const win of windows) {
console.log(win.title, win.application?.name, win.active);
}
Focus a Window
import { WindowManagement } from "@vicinae/api";
const windows = await WindowManagement.getWindows();
const browser = windows.find((w) => w.application?.name?.includes("firefox"));
if (browser) {
await browser.focus();
}
Active Window
import { WindowManagement } from "@vicinae/api";
const active = await WindowManagement.getActiveWindow();
console.log(active.title);
Workspaces
import { WindowManagement } from "@vicinae/api";
const workspaces = await WindowManagement.getWorkspaces();
const active = await WindowManagement.getActiveWorkspace();
const windows = await WindowManagement.getWindowsOnActiveWorkspace();
Screens
Get information about attached screens.
import { WindowManagement } from "@vicinae/api";
const screens = await WindowManagement.getScreens();
for (const screen of screens) {
console.log(screen.name, screen.make, screen.model, screen.bounds);
}