Skip to content

0.1.1 — Launch fix

Pre-release
Pre-release

Choose a tag to compare

@Meet2304 Meet2304 released this 25 Jul 21:01
· 43 commits to main since this release
3344cdf

Fixes a packaging bug that made v0.1.0 unusable: the app launched to a small blank white panel with no wordmark, no Connect button, and no theme.

What was wrong

The main process resolves its tray/window icon as out/main/../../resources/icon.png, but the build config only shipped out/**/* and package.jsonresources/ never made it into the app bundle, so that path did not exist at runtime.

new Tray() throws on an unloadable image, and that throw landed inside the app.whenReady() chain as an unhandled rejection, silently aborting every step after it — including all of the IPC handler registrations the UI depends on. The renderer awaits those on startup, so its init aborted with both views still hidden: an empty panel.

This never reproduced in development, where resources/icon.png exists in the source tree. Only packaged builds broke.

Changes

  • resources/** now ships inside the app bundle.
  • The tray falls back to an empty image instead of a path that can throw.
  • IPC handlers register before the window and tray are created; the tray and auto-updater are individually guarded so neither can take down startup.
  • The renderer falls back to the connect view if startup state is unavailable — a blank panel is no longer a reachable state.
  • New default position: bottom-right, just above the taskbar, instead of bottom-center. Accounts for the transparent shadow gutter so the visible panel sits 16px from the corner. Only applies before you have placed the window yourself.

Upgrading from 0.1.0

Because the crash happened before the auto-updater initialized, 0.1.0 cannot update itself. Download and run the installer below to replace it.

If 0.1.0 left a saved window position behind, Linea will reuse it rather than the new default. To get the bottom-right placement, drag the panel where you want it, or delete windowBounds from %APPDATA%\Linea\prefs.json.