Skip to content

feat: Minimize launcher to system tray after startup #52

Open
@iwr-redmond

Description

Once the Invoke instance has launched successfully and the main window has been opened, it would be helpful to minimize the launcher window to the system tray. This would make Invoke more like a fully fledged local app, similar to the starter screens used in Adobe's Elements products, which similarly disappear once the main product is up and running. Should the user need to inspect the logs while Invoke is running, they could use the tray icon to restore the launcher window to the screen.

Proposed Implementation

  • A new toggle function to hide and show the main launcher window
  • A new systray function to create a tray icon and context menu connected to toggle function, allowing the user to show the main launcher window when needed (e.g. to review the live stdout/stderr output)
  • Hide the launcher window automatically, and create the systray interface, once loadURL(localUrl) has succeeded
  • Show the launcher window automatically, and destroy the systray interface, once the main window is closed

Options

  • Recommended: A new stored option and associated SettingsModal to control this auto-hide feature
  • Suggested: A new "Do you want to quit?" dialog box function triggered when the user attempts to close the main window or selects "Quit" from the the tray icon, which triggers the existing exitInvoke function and automatically closes the launcher window upon successful user-initiated shutdown if the launcher window is currently hidden (reverting to current behavior if the launcher window is on-screen, i.e. being accessed by the user, or if there is a discernible error on Invoke exit)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions