Quickshell: QtObject [singleton]

import Quickshell

Properties

Functions

Signals

Property Details

[readonly]

processId: int

Quickshell’s process id.

[readonly]

screens: list<ShellScreen>

All currently connected screens.

This property updates as connected screens change.

Reusing a window on every screen

ShellRoot {
  Variants {
    // see Variants for details
    variants: Quickshell.screens
    PanelWindow {
      property var modelData
      screen: modelData
    }
  }
}

This creates an instance of your window once on every screen. As screens are added or removed your window will be created or destroyed on those screens.

watchFiles: bool

If true then the configuration will be reloaded whenever any files change. Defaults to true.

workingDirectory: string

Quickshell’s working directory. Defaults to whereever quickshell was launched from.

Function Details

variant env(variable: string)

Returns the string value of an environment variable or null if it is not set.

void reload(hard: bool)

Reload the shell from the [ShellRoot].

hard - perform a hard reload. If this is false, Quickshell will attempt to reuse windows that already exist. If true windows will be recreated.

See Reloadable for more information on what can be reloaded and how.

Signal Details

lastWindowClosed()

Sent when the last window is closed.

To make the application exit when the last window is closed run Qt.quit().

reloadCompleted()

The reload sequence has completed successfully.

reloadFailed(errorString: string)

The reload sequence has failed.