diff --git a/src/create-space-and-focus.tsx b/src/create-space-and-focus.tsx index d739fdb..67ecccb 100644 --- a/src/create-space-and-focus.tsx +++ b/src/create-space-and-focus.tsx @@ -7,16 +7,25 @@ export default async function Command() { const { stderr } = await runYabaiCommand(`-m space --create`); if (stderr) { + console.log(stderr); throw new Error(stderr); } + + const { stdout: spacesOutput } = await runYabaiCommand(`-m query --spaces --space mouse`); + const space = JSON.parse(spacesOutput); + + const { stderr: stderr2 } = await runYabaiCommand(`-m space last --move ${space.index+1}`); - const { stdout: spacesOutput } = await runYabaiCommand(`-m query --spaces`); - const spaces = JSON.parse(spacesOutput); - const lastSpaceIndex = spaces.filter((space: { [x: string]: never }) => !space["is-native-fullscreen"]).pop().index; + if (stderr2) { + console.log(stderr2); + throw new Error(stderr2); + } - await runYabaiCommand(`-m space --focus ${lastSpaceIndex}`); + - showHUD(`Created space: ${lastSpaceIndex}`); + await runYabaiCommand(`-m space --focus next`); + + showHUD(`Created space`); } catch (error) { if (error instanceof Error) { if (error.message.includes("Yabai executable not found")) { diff --git a/src/destroy-space.tsx b/src/destroy-space.tsx index 53fab08..80570b1 100644 --- a/src/destroy-space.tsx +++ b/src/destroy-space.tsx @@ -4,23 +4,12 @@ import { showFailureToast } from "@raycast/utils"; export default async function Command() { try { - const { stdout: rawRecentSpace, stderr } = await runYabaiCommand(`-m query --spaces --space recent`); + const { stderr } = await runYabaiCommand(`-m space --destroy`); if (stderr) { throw new Error(stderr); } - const recentSpace = JSON.parse(rawRecentSpace); - const lastSpaceIndex = recentSpace.index; - - await runYabaiCommand(`-m space --destroy`); - - try { - await runYabaiCommand(`-m space --focus ${lastSpaceIndex}`); - } catch (error) { - throw new Error(`Failed to focus space: ${error}`); - } - await showHUD(`Destroyed Space`); } catch (error) { if (error instanceof Error) {