Skip to main content
otter-overview is a one-shot overlay. Bind it to a hotkey. Workspace cards, window thumbnails, search, and an app grid. Click a tile to jump there. Type to launch an app. Escape closes. The same package ships otter-switcher, an Alt-Tab strip for the current workspace only. See that page for binds and input. The overlay uses zwlr_layer_shell_v1 on the output under the cursor. It is not a compositor. Niri has its own overview. That one uses otter-wallpaper overview_enabled for a blurred backdrop. otter-overview is a separate app.

Usage

Typical Hyprland bind:
Do not autostart it. Same pattern as otter-launcher: run it from a hotkey. It exits when you dismiss.

What you can do

  • Click a window tile to focus it. The overlay closes first so it cannot steal focus back.
  • Click a workspace card to switch to it.
  • Click a mini workspace in the bottom strip to scroll that card to the center without closing.
  • While the overlay is open, Ctrl+1 through Ctrl+9 jump to workspaces 1 to 9. Ctrl+0 is the tenth. Same as the mini strip. Digit keys without Ctrl still type into search.
  • Drag a tile onto another card to move that window. Drag onto another tile in the same card to swap them. Drop on empty space snaps back.
  • Hover a tile and click the close chip to close that window.
  • Click the search bar, or type, for the application grid. Enter launches. Escape clears search, then closes.
  • Wheel or trackpad scrolls the card strip, or pages the app grid. Page Up / Page Down and the < n / m > chips change pages. Arrows and Tab move between tiles or app cells.
On compositors that advertise zwp_pointer_gestures_v1, a three-finger vertical swipe tracks overlay progress 1:1 while it is open. Touchpad motion on the card strip stays 1:1 until you lift, then snaps to the nearest card. Only that output’s workspaces show. If tiled windows sit past the output edge (Hyprland scrolling layout, niri columns, mango scrolling tags), the card becomes a sideways lane. Wheel pans that lane. A niri floating window stays on the card instead of joining the lane.

Configuration

Config: ~/.config/otter-shell/otter-overview.conf (fallback: /etc/otter-shell/otter-overview.conf). Created on first run.
The Overview tab in otter-settings writes the same file.
Omit color keys (overlay_color, card_color, card_active_color, card_border_color, tile_color, search_color, text_color, muted_color, accent_color) to inherit from theme.conf. font_path, font_size, and border_radius are optional the same way.

Thumbnails

On startup it captures every window before the first paint, active workspace first. If capture is missing, tiles use a stable per-app tint. Hyprland can also use hyprland_toplevel_export. Other compositors use ext-image-copy-capture when present.

Compositor support

Needs zwlr_layer_shell_v1.

Keyboard

Dependencies

  • Wayland compositor with zwlr_layer_shell_v1
  • Window thumbnails need a capture protocol (ext_image_copy_capture or Hyprland export)