Skip to content

Latest commit

 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QuickSwitch — macOS-style task switcher for Omarchy/Hyprland

A beautiful, themed window/task switcher in the style of the macOS app switcher, built as an Omarchy shell plugin (QML hosted by the long-running omarchy-shell Quickshell process).

screenshot-2026-09-04_03-21-39

Features

  • SUPER+TAB opens the switcher.
  • tap TAB (or Arrow Keys) repeatedly while holding SUPER to advance the selection (most-recently-used order, current window skipped).
  • Mouse hover highlights an item; click activates it.
  • SUPER+Q quits the highlighted app.
  • Release SUPER to activate the selected window — which switches you to that window's workspace.
  • Every item is a still window snapshot (captured when the switcher opens) with the app icon in the top-left corner, arranged in a horizontal strip centered on the screen.
  • Compatible with Omarchy Themes.

Requirements

  • Omarchy with the Quickshell shell (omarchy-shell)
  • Hyprland ≥ 0.56 (Lua config) with the hyprland-toplevel-export / screencopy support for live previews
  • hyprctl on PATH

Installation

Install it from this repository with the official Omarchy tooling:

omarchy plugin add https://github.com/ewweberlin/QuickSwitch.git --enable

This clones the repo into ~/.config/omarchy/plugins/, and enables it.

Bindings (enables SUPER + TAB) — add this line to ~/.config/hypr/bindings.lua:

dofile(os.getenv("HOME") .. "/.config/omarchy/plugins/ewweberlin.quickswitch/task-switch-bindings.lua")

Restart the shell, reload Hyprland and Bindings:

omarchy restart shell
hyprctl reload
hyprctl configerrors   # should be clean
hyprctl globalshortcuts

The SUPER + TAB shortcut should appear in hyprctl globalshortcuts.

Removal

omarchy plugin remove ewweberlin.quickswitch     # or: provide id interactively
omarchy plugin disable ewweberlin.quickswitch    # disable without deleting

plugin remove unloads and disables the plugin, then handles each install flavor: it unlinks a symlinked checkout (source stays in place), deletes a cloned install, or backs up a plain folder. plugin add installs from git can be updated later with:

omarchy plugin update ewweberlin.quickswitch

Behavior details

  • SUPER+TAB was already bound in Omarchy to "Next workspace" (hl.dsp.focus e+1). The bindings file unbinds it first, so SUPER+TAB now opens the switcher. The other workspace-shortcuts (SUPER+SHIFT+TAB, SUPER+CTRL+TAB) are untouched.
  • SUPER+Q quits the highlighted app only while the switcher is open. For a global close-this-window, SUPER+W already does that everywhere.
  • Releasing SUPER with no item highlighted / pointer outside the strip (Esc, or clicking empty space) closes without changing focus.
  • Colors come from the shell Color singleton, so the switcher follows the active Omarchy theme automatically.

About

macOS-style task/window switcher with window previews. Hold SUPER, tap TAB to cycle, release SUPER to switch to the selected window's workspace. SUPER+Q quits the highlighted app.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages