Application Window
An app opens in one window. Everything around its content — the size it starts at, the title it carries, its menu — is set under window in inca.config.ts (see Configuration for the full key list and an example), or falls back to a default.
These apply to the development window and to a packaged app alike.
NOTE
inca dev reads inca.config.ts once, at startup. Reloading it on change isn't supported yet — restart inca dev to pick up an edit.
Size
The window opens at window.width × window.height.
With neither set, it takes the width and height your app's root element declares, so a fixed-size app gets a window that fits it:
<template>
<div :style="{ width: 400, height: 300 }">…</div>
</template>Each dimension falls through on its own — a config that sets only width still takes its height from the root element. With neither source giving one, the window opens at 800 × 600.
window.minWidth and window.minHeight set the smallest the window can be. A window opens at least that size, and a dimension you leave out is unconstrained.
Resizing
A window holds the size it opened at unless window.resizable is true.
An element sizes in pixels or to its content, with no way to fill the window, so a window grown past the app's root element shows empty space around it. Let a user resize one whose layout survives it:
window: { width: 400, height: 300, resizable: true }, Title
The window's title bar carries window.title, or productName where that is unset.
The application menu
Every app gets an application menu with a Quit item, on ⌘Q on macOS and Ctrl+Q on Linux. macOS is the only platform that draws a menu bar for it today. There is no way to add items to it yet.
Under development
The development window, and --experimental-hmr on top of it, add a few dev-only quirks on top of the behavior above.
Under --experimental-hmr, the window's first launch can briefly open at the wrong size before snapping to the correct one — see the HMR guide.
In the development window, resizing it by hand keeps that size across later reloads; a non-resizable window snaps back to its configured size on each reload.
Closing the development window also stops the dev process.
Closing the app
Closing the window quits the app.