run-app's #:windows gives the windows a model has. The app opens a window when it is first in the list, patches its view and title while it stays, and closes it when it is gone. A click on its close button sends its on-close message, and the model closes it. A #:modal window is a dialog over the main window, so a dialog of the program's own is a window whose state is in the model. Windows wait for the main window to be shown, because a dialog cannot belong to a hidden one, and the program ends when the main window closes. Key shortcuts and commands such as focus reach the other windows too, and #:screenshot saves a picture of each one beside the main window's. 🤖 Generated with [ECA](https://eca.dev) (anthropic/claude-opus-4-8) Co-Authored-By: eca-agent <git@eca.dev> |
||
|---|---|---|
| .. | ||
| app.bjo | ||
| canvas.bjo | ||
| commands.bjo | ||
| components.bjo | ||
| controls.bjo | ||
| dialogs.bjo | ||
| effects.bjo | ||
| inputs.bjo | ||
| lists.bjo | ||
| menus.bjo | ||
| native.bjo | ||
| tree.bjo | ||
| windows.bjo | ||