Airlock

How the switcher behaves

The overlay and its gestures — the home page keeps the short version, per-workspace configuration lives in settings, and the hardware checklist verifies this behavior release by release.

The keyboard gesture

Hold Alt and tap Tab: an overlay lists the windows of the current workspace in most-recently-used (MRU) order.

  • Tab walks forward, Shift+Tab walks back; the arrow keys step too.
  • Releasing Alt focuses the selection and dismisses the overlay; Enter confirms without letting go; Escape dismisses without switching.
  • A tap released before the overlay appears still switches.
  • Ctrl+1 through Ctrl+9, keypad included, switch to that row's window. The first nine rows show their key; without Ctrl, the number row does nothing.

The pointer gesture

The mouse drives the same gesture while the overlay is up: crossing between rows (or tiles on the horizontal card) moves the selection, a click focuses and dismisses — the same outcome as releasing Alt — and the wheel steps one row per notch, wrapping. Wherever the pointer rests when the overlay appears, it selects nothing. Resting on a row reveals a small × badge that closes the window (see Closing windows).

The frozen list

The list is frozen for the gesture: a window that opened after the overlay appeared is not on it. Neither the pointer, the wheel, nor a number key can reach it mid-gesture.

Grouped mode

grouping = true re-partitions the same list into a per-app tree: one entry per application, that app's windows nested beneath. Groups start collapsed; expanding one is remembered for as long as the daemon runs. Committing an entry activates the app's most recently used window.

  • Tab, the arrows, and the wheel walk visible rows, wrapping; a collapsed group contributes only its entry.
  • → expands and enters; ← returns to the entry, or collapses an expanded one.
  • Ctrl+N activates the Nth app entry's window.
  • The frozen-list rule holds: the window set never changes mid-gesture, only what stands expanded.

The full key walk, including the quick tap, lives in settings.

Type-to-filter

While the card is up, printable keys type straight through the held Alt: the query collects in a strip above the rows and narrows the card to windows whose title or application name contains it, case-insensitive. The selection lands on the first match. It works in every mode — the flat list, the grouped tree, the same-app view — and Ctrl+N keeps its chord.

  • Tab, the arrows, and the wheel step the matches; Enter or releasing Alt switches.
  • Backspace erases; Escape clears a standing query first — only an empty query dismisses.
  • One carve-out: ` (the key above Tab) in a grouped card toggles the selected app's group from its entry and cycles its windows from inside it, and types only while a query stands.

Clearing the query restores the card you had. When nothing matches, the card keeps the query and commits as a no-op. The query dies with the gesture: nothing persists.

Closing windows

Windows close from the card without leaving the gesture:

  • Alt+minus closes the selected row's window; it works in every mode, and through a standing query.
  • Clicking the × badge on a window row or tile closes that window instead of activating it; the rest of the row still activates.

Every row closes exactly what it activates. After each close the selection moves to the next visible row, wrapping, and the card stays up — one held gesture can prune a stack of windows. Closing the last eligible window dismisses the overlay.

The card

Each row shows the window's application icon next to its title, resolved through the same icon pipeline the COSMIC launcher uses; an application with no themed icon falls back to a generic window glyph. The card is a rounded, near-opaque rectangle with a hairline border and the selected row highlighted; text renders at the configured font_size (12 px by default), sharp on HiDPI displays, and theme picks the color — auto, the default, follows the desktop's dark/light preference.

layout = "horizontal" trades the column for a wide, short band of icon-only tiles under one caption: Left and Right step it, Ctrl+N and the pointer address its tiles exactly as they address rows, and columns, width, and min-width size it. See settings.

Workspace scoping

Only windows whose workspace set includes the current workspace are listed: sticky windows appear everywhere, minimized windows nowhere, and a window parked on another workspace can never be focused through Airlock. The isolation is per-workspace configurable: a workspace can opt into the global switcher through a config file. See settings.

The extra keys

airlock install also claims three more keys:

  • Hold Alt and tap ` (the key above Tab): the overlay lists only the current application's windows in MRU order. Fewer than two windows in scope does nothing.
  • Alt+Shift+` opens it stepping backwards.
  • Alt+Esc switches to the MRU-second window under the same scope — the window a fast Alt+Tab tap reaches — with no overlay.

The daemon

A small daemon keeps a live snapshot of the compositor state; the keybind stubs are milliseconds-thin and auto-start the daemon on first press. The overlay is software-rendered: no GPU required.