Dots for the workspaces you actually use, a pill for the one you're on, and a dim trailing dot for the next workspace you can move to — so the bar always shows where you are and where you can go next.
GNOME's dynamic workspaces shows exactly the workspaces that matter and keeps room for one more. This widget brings that behavior to the Omarchy bar.
The stock omarchy.workspaces widget numbers every slot statically, whether
the workspace exists or not. With Hyprland's dynamic (non-persistent)
workspaces — the default — that means a bar full of numbers for workspaces you
will never visit, and no clue which one is next.
GNOME Workspace Dots only shows what's real:
- A pill for the active workspace
- A dot for every other occupied workspace
- A dim dot after the last occupied one: the next workspace you can move to
- The trailing dot disappears once you occupy it — the pill replaces it — and reappears only when a fresh next workspace legitimately exists behind it
- Empty workspaces are never shown
omarchy plugin add https://github.com/kingokeke/dynamic-workspace-dots.git --enable
omarchy plugin disable omarchy.workspaces
omarchy bar move io.github.kingokeke.workspace-dots --section leftThat's it. The dynamic behavior is intrinsic to Hyprland and the widget ships with sensible defaults; any optional knobs are documented below.
The widget works with no settings out of the box. Optional knobs are exposed
the standard Omarchy way, as keys on the widget's entry in bar.layout in
~/.config/omarchy/shell.json:
The bar hot-reloads shell.json on save, so no restart is needed after editing.
- Scroll to switch. Scrolling over the dots switches to the next or previous
in-use workspace, mirroring GNOME Shell's workspace indicator. Each scroll
event moves one workspace, throttled to at most one switch every
scrollDelaymilliseconds so a fast flick can't race through several. Works with a mouse wheel and with two-finger trackpad scrolling. scrollDelay— the minimum milliseconds between two scroll switches. Raise it for a more deliberate feel; lower it for a snappier response.scrollEnabled— set tofalseto keep scrolling from ever changing workspaces; clicking a dot still jumps to that workspace.
Clicking any dot still jumps directly to that workspace at any time.
- Omarchy Quattro with the Quickshell bar
- Hyprland
The widget only reads compositor state and dispatches focus to the selected workspace through the existing shell service. It spawns no processes, keeps no state, and needs no extra packages or privileged setup.
omarchy plugin update io.github.kingokeke.workspace-dots
omarchy plugin remove io.github.kingokeke.workspace-dotsDisabling the plugin removes the widget from the bar. Re-enable the stock
omarchy.workspaces widget if you want it back.
MIT

{ "id": "io.github.kingokeke.workspace-dots", "scrollDelay": 250, // milliseconds between scroll switches (default 150) "scrollEnabled": false // disable scrolling over the dots entirely (default true) }