Omahub
← All plugins
R

Ultrawide Focus Layout

by Ross

Provides a centered 16:9 monocle workspace with black side gutters on ultrawide displays

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
f615a4d
Scanned
3 weeks ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

No obvious issues detected

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

Low
AI risk level
Low
Recommendation
install
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
f615a4d
Reviewed
3 weeks ago

The plugin toggles an ultrawide focus mode by modifying Hyprland workspace layouts and layer-shell surfaces via a bash script. The code is straightforward, contains no network access or obfuscation, and validates workspace IDs and layout names before running hyprctl commands. No malicious behavior was found.

  • The plugin executes a shell script that modifies Hyprland workspace layouts and toggles bar/gaps, which is expected behavior but should be reviewed if you are cautious about automated Hyprland state changes.
How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/rossvz/omarchy-focus-mode --enable
Desktop #Hyprland #quickshell #workspaces

Ultrawide Focus Layout for Omarchy

Ultrawide Focus Layout turns an ultrawide display into a centered 16:9 workspace. It reserves the unused sides as pure-black gutters, hides Omarchy's bar, removes window gaps, and temporarily switches the active workspace to Hyprland's monocle layout. Every tiled window fills the centered focus area; changing focus selects which window is visible. Turning Ultrawide Focus Layout off restores the workspace's previous layout and only the other states the layout changed. When enabled, Ultrawide Focus Layout applies monocle to every existing normal workspace on the focused output and remembers each workspace's original layout. The local SUPER+TAB bindings call next-workspace / previous-workspace, which also apply monocle synchronously after changing workspaces. Ultrawide Focus Layout persists its temporary rules across Hyprland configuration reloads and removes them on exit.

Hyprland's normal window-cycle dispatcher does not cycle monocle windows. The recommended bindings use monocle's layout messages while retaining Omarchy's normal behavior outside Ultrawide Focus Layout:

hl.unbind("ALT + TAB")
hl.unbind("ALT + SHIFT + TAB")

local function cycle_window(next_window)
  return function()
    local workspace = hl.get_active_special_workspace() or hl.get_active_workspace()
    if workspace and workspace.tiled_layout == "monocle" then
      hl.dispatch(hl.dsp.layout(next_window and "cyclenext" or "cycleprev"))
    else
      hl.dispatch(hl.dsp.window.cycle_next({ next = next_window }))
      hl.dispatch(hl.dsp.window.bring_to_top())
    end
  end
end

o.bind("ALT + TAB", "Focus on next window", cycle_window(true))
o.bind("ALT + SHIFT + TAB", "Focus on previous window", cycle_window(false))

By default, Ultrawide Focus Layout targets the output containing the active workspace and derives the center width from that output's height. A 5120x1440 display becomes a centered 2560x1440 canvas; a 3440x1440 display does the same with narrower gutters.

Install

Install and enable it with:

omarchy plugin add https://github.com/rossvz/omarchy-focus-mode.git --enable

Toggle or inspect it through the service's IPC API:

omarchy-shell rossvz.focus-mode toggle
omarchy-shell rossvz.focus-mode status

Omarchy plugins cannot install keybindings or menu extensions. To add the original SUPER + F11 binding, put this in ~/.config/hypr/bindings.lua:

o.bind("SUPER + F11", "Ultrawide Focus Layout", "omarchy-shell rossvz.focus-mode toggle")

To add Trigger -> Toggle -> Ultrawide Focus Layout to the Omarchy menu, merge this row into ~/.config/omarchy/extensions/omarchy-menu.jsonc:

"trigger.toggle.ultrawide-focus-layout": {
  "icon": "\uf2d0",
  "label": "Ultrawide Focus Layout",
  "description": "Centered 16:9 monocle workspace for ultrawide displays",
  "checked": "omarchy-shell rossvz.focus-mode status >/dev/null 2>&1",
  "action": "omarchy-shell rossvz.focus-mode toggle"
}

Configure

The defaults require no configuration. To override them, copy focus-mode.example.json to ~/.config/omarchy/focus-mode.json and edit the values:

{
  "output": "DP-1",
  "contentWidth": 2560,
  "color": "#000000",
  "hideBar": true,
  "removeGaps": true,
  "workspaceLayout": "monocle"
}

An empty output follows the active workspace. A contentWidth of 0 calculates a 16:9 width from the monitor height. workspaceLayout accepts monocle, scrolling, master, or dwindle; monocle is the layout's default because it makes the focused tiled window fill the entire canvas.

Requirements

Ultrawide Focus Layout targets Omarchy Quattro and uses tools included with a standard Omarchy installation: Quickshell, Hyprland (hyprctl), Bash, jq, notify-send, omarchy-shell, and omarchy-hyprland-toggle. It does not download code, require root privileges, or use network access at runtime.

Remove

Because Omarchy intentionally does not run plugin install or uninstall hooks, turn Ultrawide Focus Layout off before disabling or removing it:

omarchy-shell rossvz.focus-mode disable
omarchy plugin remove rossvz.focus-mode

Compatibility identifiers

The plugin keeps its original internal ID, rossvz.focus-mode, along with the existing IPC route, install directory, state paths, configuration filename, and GitHub repository URL. These are compatibility identifiers rather than the user-facing product name; retaining them avoids breaking existing installs.

True fullscreen windows may intentionally cover layer-shell exclusion zones. Leave windows tiled in monocle mode when you want them constrained to the centered canvas.