ITADN

Feat: `create-window` primitive

#1895Opennikitabobko 创建于 2026-01-07
feature
N
nikitabobkocommented
The feature proposal is to introduce `aerospace create-window` primitive ``` aerospace create-window [--tiling|--floating] --title <title> --fullscreen --macos-native-fullscreen --macos-native-minimize --opacity <opacity>% --no-window-decoration --body <text> --body-size <text-size> --workspace <workspace> --opacity <opacity>:: Valid format is a number from 0 to 100. --fullscreen:: The created window is immediately fullscreened. See `fullscreen` command. --workspace <workspace>:: Immediately assign the created window to the specified workspace. ``` ## Things to decide `--body <text>`. Is it rich text or plain text? If it's a rich text is it markdown or html? ## Special casing for hiding windows AeroSpace hides windows in monitor corners. For our own windows, we could theoretically close them and open as needed. Though it's up to discussion. Other users might not like it because of mission control. In the first version, I'd prefer to avoid the special casing. ## Technical challenges AFAIK, we can't use the same mechanism that we use to move other windows. Process that tries to apply accessibility requests to itself immediately crashes ## Motivation Purity. Window is a basic primitive of a window manager. Similar to how package managers allow creating drafts of packages, window manager should be capable of creating windows. Given that it's a basic primitive, real world use cases will emerge. Some people may use it to show big text on their screen, other people may use it to intentionally introduce gaps to make half of the wide screen empty (https://github.com/nikitabobko/AeroSpace/discussions/1884)
0 条评论