mirror of
https://github.com/prdlk/dotfiles.git
synced 2026-11-02 19:32:43 +00:00
feat(config): add smart-move corner floats, pip toggle, and floating YouTube
This commit is contained in:
1 parent
c81271b10b
commit
d1c676ca00
2 files changed
+44
-21
No files matched your search
@@ -99,11 +99,19 @@ o.bind("SUPER + L", "Focus on right window", hl.dsp.focus({ direction = "r" }))
|
||||
o.bind("SUPER + D", "Toggle window split", hl.dsp.layout("togglesplit"))
|
||||
|
||||
-- Smart move: merge into the neighboring group if there is one, else swap.
|
||||
-- A floating window is parked in a monitor corner instead, clockwise from
|
||||
-- the bottom left: H bottom-left, J top-left, K top-right, L bottom-right.
|
||||
-- Needs ~/.local/bin/omarchy-smart-move.
|
||||
o.bind("SUPER + SHIFT + H", "Move or merge left", "omarchy-smart-move l")
|
||||
o.bind("SUPER + SHIFT + J", "Move or merge down", "omarchy-smart-move d")
|
||||
o.bind("SUPER + SHIFT + K", "Move or merge up", "omarchy-smart-move u")
|
||||
o.bind("SUPER + SHIFT + L", "Move or merge right", "omarchy-smart-move r")
|
||||
o.bind("SUPER + SHIFT + H", "Move or merge left / float to bottom-left", "omarchy-smart-move l")
|
||||
o.bind("SUPER + SHIFT + J", "Move or merge down / float to top-left", "omarchy-smart-move d")
|
||||
o.bind("SUPER + SHIFT + K", "Move or merge up / float to top-right", "omarchy-smart-move u")
|
||||
o.bind("SUPER + SHIFT + L", "Move or merge right / float to bottom-right", "omarchy-smart-move r")
|
||||
|
||||
-- Picture-in-picture for any window: float + pin, 30% of the focused
|
||||
-- monitor on both axes, bottom-left corner; press again to tile it back.
|
||||
-- Needs ~/.local/bin/omarchy-pip (omarchy-summon shares it). SUPER + SHIFT
|
||||
-- + T is free in Omarchy; SUPER + T (toggle floating) stays as is.
|
||||
o.bind("SUPER + SHIFT + T", "Toggle picture-in-picture", "omarchy-pip")
|
||||
|
||||
-- ─── Workspaces and monitors ────────────────────────────────────────────────
|
||||
|
||||
@@ -121,9 +129,8 @@ o.bind("SUPER + CTRL + K", "Previous workspace", hl.dsp.focus({ workspace = "e-1
|
||||
-- (the raw toggle uses the focused one), and on reveal it starts whichever
|
||||
-- resident is missing instead of sliding an empty workspace into view. The
|
||||
-- residents are pinned to their workspaces by window rules in
|
||||
-- hypr/hyprland.lua. Fastmail, Beeper and YouTube have their own scratch
|
||||
-- workspaces under SUPER + CTRL + ALT + E / M / Y in the Applications block
|
||||
-- below.
|
||||
-- hypr/hyprland.lua. Fastmail and Beeper have their own scratch workspaces
|
||||
-- under SUPER + CTRL + ALT + E / M in the Applications block below.
|
||||
hl.unbind("SUPER + CTRL + S") -- was: share menu
|
||||
o.bind("SUPER + CTRL + S", "Toggle scratch workspace", "omarchy-toggle-scratch scratchpad")
|
||||
o.bind("SUPER + A", "Toggle scratch workspace", "omarchy-toggle-scratch scratchpad")
|
||||
@@ -185,15 +192,18 @@ o.bind("SUPER + CTRL + ALT + K", "Browsers", "omarchy-cycle-browser")
|
||||
o.bind("SUPER + CTRL + ALT + G", "Ghostty", "omarchy-cycle ghostty")
|
||||
o.bind("SUPER + CTRL + ALT + O", "Obsidian", "omarchy-cycle obsidian")
|
||||
o.bind("SUPER + CTRL + ALT + F", "File manager", "omarchy-launch-or-focus nautilus \"gtk-launch org.gnome.Nautilus\"")
|
||||
-- Fastmail, Beeper and the YouTube web app each live on their own scratch
|
||||
-- workspace (window rules in hypr/hyprland.lua); the toggle reveals it on the
|
||||
-- focused monitor and starts the app only when no window of it exists --
|
||||
-- the web-app launcher would otherwise open a second window every time.
|
||||
-- Fastmail and Beeper each live on their own scratch workspace (window rules
|
||||
-- in hypr/hyprland.lua); the toggle reveals it on the focused monitor and
|
||||
-- starts the app only when no window of it exists -- the web-app launcher
|
||||
-- would otherwise open a second window every time.
|
||||
o.bind("SUPER + CTRL + ALT + E", "Fastmail", "omarchy-toggle-scratch fastmail")
|
||||
o.bind("SUPER + CTRL + ALT + M", "Beeper", "omarchy-toggle-scratch beeper")
|
||||
o.bind("SUPER + CTRL + ALT + Y", "YouTube", "omarchy-toggle-scratch youtube") -- was: web apps cycle
|
||||
-- YouTube is a floating pinned window in the bottom-left corner (window rule
|
||||
-- in hypr/hyprland.lua). The summon launches it when no window exists,
|
||||
-- otherwise carries the window to the focused monitor and focuses it.
|
||||
o.bind("SUPER + CTRL + ALT + Y", "YouTube", "omarchy-summon youtube") -- was: web apps cycle
|
||||
hl.unbind("SUPER + SHIFT + Y") -- was: YouTube via the desktop entry (new window every press)
|
||||
o.bind("SUPER + SHIFT + Y", "YouTube", "omarchy-toggle-scratch youtube")
|
||||
o.bind("SUPER + SHIFT + Y", "YouTube", "omarchy-summon youtube")
|
||||
|
||||
hl.unbind("SUPER + CTRL + ALT + T") -- was: show time
|
||||
-- Pattern is the exact class from `hyprctl clients`; the window rule in
|
||||
|
||||
Reference in new issue
Block a user