umbriel: scratchpad residents float as a centered 960px square instead of maximized

This commit is contained in:
Prad Nukala committed 2026-10-17 13:36:49 -04:00
1 parent cdd0ee07ed
commit baa8f7d436
3 files changed
+21 -7

No files matched your search

+2 -2
View File
@@ -61,7 +61,7 @@ The Studio Display's phantom 640x480 connector, which niri switched off as `DP-5
## Scratchpads
Named scratchpads replace Hyprland's `special:*` workspaces and `omarchy-toggle-scratch`. A window rule sends each app into its scratchpad when it opens; toggling an empty scratchpad runs `spawn_when_empty`. Shown scratchpads are maximized over a desktop dimmed to 0.6, on the output under the pointer.
Named scratchpads replace Hyprland's `special:*` workspaces and `omarchy-toggle-scratch`. A window rule sends each app into its scratchpad when it opens; toggling an empty scratchpad runs `spawn_when_empty`. A shown scratchpad window floats as a 960 px square centered on the output under the pointer (`default_floating_size_px`, the last window rule in `rules.toml`; 960 fits the laptop panel's 1038 px usable height) over a desktop dimmed to 0.6. `animation.scratchpad.maximize` is off. The size is a default: a resident that was already open before the rule changed keeps its old geometry until it is reopened.
| Scratchpad | App id | Launch | Keys |
| --- | --- | --- | --- |
@@ -85,7 +85,7 @@ Named scratchpads replace Hyprland's `special:*` workspaces and `omarchy-toggle-
| title `Picture-in-Picture` / `Picture in picture` | floating, unfocused, opaque, 24 px from the top-right of `eDP-1` |
| YouTube and chat/mail/dashboard apps (`chromium`, Calendar, Discord, Slack, Gemini, Hermes, Todoist, Cloudflare web apps) | laptop panel, workspace 1, maximized |
| `zed`, `obsidian`, sticky notes, `vacuumtube`, `Fladder`, `kitty`, `kitty-herdr`, `kitty-tmux` | Apple Studio Display |
| the six scratchpad apps | their scratchpad |
| the six scratchpad apps | their scratchpad, floating 960×960 centered |
Noctalia's bar, panels, notifications, dock, OSD, and desktop widgets get blur through a layer rule.
+3 -3
View File
@@ -111,9 +111,9 @@ curve = "spring:0.78,1350"
curve = "spring:0.85,1463"
workspace_curve = "spring:0.78,1350"
# Hyprland's special workspaces show their app tiled over the whole output
# above a dimmed desktop; maximize is the scratchpad equivalent.
# Scratchpad residents float as a centered square (rules.toml, the last
# window rule) above a dimmed desktop, so maximize stays off here.
[animation.scratchpad]
curve = "spring:0.85,1463"
dim = 0.6
maximize = true
maximize = false
+16 -2
View File
@@ -119,8 +119,7 @@ default_output = "Apple Computer Inc StudioDisplay 0x984262A7"
match.title = "^Sticky Notes$"
default_output = "Apple Computer Inc StudioDisplay 0x984262A7"
# Scratchpad residents, last so they win over the placement rules above. Their
# presentation (maximized) is animation.scratchpad in config.toml.
# Scratchpad residents, last so they win over the placement rules above.
[[window_rule]]
match.app_id = "^so[.]stencil[.]tern$"
default_scratchpad = "tern"
@@ -145,6 +144,21 @@ default_scratchpad = "home"
match.app_id = "^ai[.]elementlabs[.]lmstudio$"
default_scratchpad = "lmstudio"
# Presentation shared by every scratchpad resident: a 960px square centered on
# the output (fits the laptop panel's 1038px usable height), floating so it
# never joins the strip. Last, so it overrides default_floating = false from
# the translucent-apps rule for Claude and Beeper.
[[window_rule]]
match.app_id = [
"^so[.]stencil[.]tern$", "^com[.]anthropic[.]Claude$",
"^com[.-]fastmail[.-][Ff]astmail$", "^Beeper$",
"^brave-home[.]google[.]com__", "^ai[.]elementlabs[.]lmstudio$",
]
default_floating = true
default_maximize = false
default_floating_size_px = { width = 960, height = 960 }
default_position = { x = 0, y = 0, anchor = "center" }
# ==============================================================================
# Layer rules