summaryrefslogtreecommitdiff
path: root/dot-config/hypr
diff options
context:
space:
mode:
Diffstat (limited to 'dot-config/hypr')
-rw-r--r--dot-config/hypr/autostart.lua3
-rw-r--r--dot-config/hypr/binds.lua9
-rw-r--r--dot-config/hypr/cursor.lua3
-rw-r--r--dot-config/hypr/decor.lua21
-rw-r--r--dot-config/hypr/hyprland.conf2
-rw-r--r--dot-config/hypr/hyprland.lua19
-rw-r--r--dot-config/hypr/perms.lua13
-rw-r--r--dot-config/hypr/perms.luagwCJsS.bck42
-rw-r--r--dot-config/hypr/plugins.lua137
-rw-r--r--dot-config/hypr/rules.lua29
-rw-r--r--dot-config/hypr/xdph.conf1
11 files changed, 244 insertions, 35 deletions
diff --git a/dot-config/hypr/autostart.lua b/dot-config/hypr/autostart.lua
index 6777954b..6be0cca8 100644
--- a/dot-config/hypr/autostart.lua
+++ b/dot-config/hypr/autostart.lua
@@ -70,7 +70,7 @@ hl.on("hyprland.start", function()
-- misc
-- sys hud
-- hl.exec_cmd('syshud -M audio_in,audio_out,brightness -b /sys/bus/ddcci/devices/ddcci13/backlight/ddcci13/')
- hl.exec_cmd('syshud')
+ hl.exec_cmd('while true; do syshud; done')
-- night light
-- hl.exec_cmd('gammastep -l geoclue2')
hl.exec_cmd('$HOME/scripts/hyprsunset.sh')
@@ -81,6 +81,7 @@ hl.on("hyprland.start", function()
hl.exec_cmd('bitwarden-desktop')
-- hl.exec_cmd('kdeconnectd')
-- hl.exec_cmd('killall input-leap input-leaps; input-leap -- works with https://github.com/3l0w/Hyprland/tree/feat/input-capture-impl')
+ hl.exec_cmd('deskflow-core server -s ~/.config/Deskflow/deskflow-server.conf')
hl.exec_cmd('nextcloud --background')
-- hl.exec_cmd(['noinitialfocus; workspace, special] localsend --hidden')
-- hl.exec_cmd(['workspace 6 silent; noinitialfocus] discord --start-minimized')
diff --git a/dot-config/hypr/binds.lua b/dot-config/hypr/binds.lua
index 0e9bc0ea..2328a4a7 100644
--- a/dot-config/hypr/binds.lua
+++ b/dot-config/hypr/binds.lua
@@ -109,7 +109,8 @@ hl.bind(mod .. " + D", hl.dsp.window.move({ workspace = "special:minimized", fol
hl.bind(mod .. " + I", hl.dsp.workspace.toggle_special("minimized"))
hl.bind(mod .. " + I", hl.dsp.window.move({ workspace = "+0" }))
hl.bind(mod .. " + Q", hl.dsp.window.close(), { repeating = true })
-hl.bind(mod .. " + SHIFT + Q", hl.dsp.window.close({ force = true }))
+-- hl.bind(mod .. " + SHIFT + Q", hl.dsp.window.close({ force = true }))
+hl.bind(mod .. " + SHIFT + Q", hl.dsp.window.kill())
hl.bind("CTRL + ALT + Escape", hl.dsp.exec_cmd("hyprctl kill"))
hl.bind("CTRL + " .. mod .. " + SHIFT + R", hl.dsp.exec_cmd("hyprctl reload"))
@@ -174,8 +175,8 @@ local function reset_zoom()
})
end
-hl.bind("SUPER + mouse_down", function() update_zoom(1.1) end)
-hl.bind("SUPER + mouse_up", function() update_zoom(0.9) end)
+hl.bind("SUPER + mouse_up", function() update_zoom(1.1) end)
+hl.bind("SUPER + mouse_down", function() update_zoom(0.9) end)
hl.bind("SUPER + equal", function() update_zoom(1.1) end, { repeating = true })
hl.bind("SUPER + minus", function() update_zoom(0.9) end, { repeating = true })
@@ -233,3 +234,5 @@ for _, ac in ipairs(autoclickers) do
hl.bind(ac.bind, hl.dsp.exec_cmd("kill $(pgrep -f autoclicker-" .. ac.name .. ")"),
{ ignore_mods = true, release = true })
end
+
+hl.bind(mod .. " + SHIFT + Escape", hl.dsp.release_input_capture())
diff --git a/dot-config/hypr/cursor.lua b/dot-config/hypr/cursor.lua
index 7eca0c19..fd24e11d 100644
--- a/dot-config/hypr/cursor.lua
+++ b/dot-config/hypr/cursor.lua
@@ -3,7 +3,8 @@ hl.config({
use_cpu_buffer = true,
-- no_hardware_cursors = true,
no_break_fs_vrr = true,
- zoom_rigid = true,
+ -- zoom_rigid = true,
persistent_warps = true,
+ -- zoom_detached_camera = false
}
})
diff --git a/dot-config/hypr/decor.lua b/dot-config/hypr/decor.lua
index f75290da..d773d75d 100644
--- a/dot-config/hypr/decor.lua
+++ b/dot-config/hypr/decor.lua
@@ -52,6 +52,11 @@ hl.config({
input_methods = true,
special = true,
},
+
+ motion_blur ={
+ enabled = true,
+ -- samples = 64,
+ },
},
animations = {
@@ -101,23 +106,23 @@ hl.animation({ leaf = "borderangle", enabled = true, speed = 100, bezier = "line
hl.animation({ leaf = "zoomFactor", enabled = true, speed = 3, bezier = "fast-slow" })
-hl.curve("spring", { type = "spring", mass = 3, stiffness = 200, dampening = 35 })
+hl.curve("spring", { type = "spring", mass = 1, stiffness = 600, dampening = 35 })
-hl.curve("layer", { type = "spring", mass = 4, stiffness = 450, dampening = 50 })
+hl.curve("layer", { type = "spring", mass = 1, stiffness = 1800, dampening = 50 })
-hl.curve("open", { type = "spring", mass = 4, stiffness = 300, dampening = 46 })
-hl.curve("move", { type = "spring", mass = 4, stiffness = 375, dampening = 48 })
+hl.curve("open", { type = "spring", mass = 1, stiffness = 1200, dampening = 46 })
+hl.curve("move", { type = "spring", mass = 1, stiffness = 1500, dampening = 48 })
-hl.curve("workspace", { type = "spring", mass = 4, stiffness = 325, dampening = 50 })
-hl.curve("workspaceIn", { type = "spring", mass = 4, stiffness = 375, dampening = 51 })
+hl.curve("workspace", { type = "spring", mass = 1, stiffness = 1300, dampening = 50 })
+hl.curve("workspaceIn", { type = "spring", mass = 1, stiffness = 1500, dampening = 51 })
--- hl.curve("zoom", { type = "spring", mass = 3, stiffness = 225, dampening = 38 })
+-- hl.curve("zoom", { type = "spring", mass = 1, stiffness = 675, dampening = 38 })
hl.animation({ leaf = "global", enabled = true, speed = 3, spring = "spring" })
hl.animation({ leaf = "layers", enabled = true, speed = 3, spring = "layer" })
-hl.animation({ leaf = "windowsIn", enabled = true, speed = 3, spring = "open" })
+hl.animation({ leaf = "windowsIn", enabled = true, speed = 30, spring = "open" })
hl.animation({ leaf = "windowsMove", enabled = true, speed = 3, spring = "move" })
hl.animation({ leaf = "workspaces", enabled = true, speed = 3, spring = "workspace" })
diff --git a/dot-config/hypr/hyprland.conf b/dot-config/hypr/hyprland.conf
index b46aa20a..33a85ac4 100644
--- a/dot-config/hypr/hyprland.conf
+++ b/dot-config/hypr/hyprland.conf
@@ -3,7 +3,7 @@
################
# See https://wiki.hyprland.org/Configuring/Monitors/
-monitor=,highres@highrr,auto,auto,bitdepth,10#,cm,hdr,sdrbrightness,1.5,sdrsaturation,1.35#,cm,auto
+monitor=,highres@highrr,auto,auto#,bitdepth,10#,cm,hdr,sdrbrightness,1.5,sdrsaturation,1.35#,cm,auto
# monitor=,preferred,auto,auto,bitdepth,10
# monitorv2 {
# output =
diff --git a/dot-config/hypr/hyprland.lua b/dot-config/hypr/hyprland.lua
index f0444b8f..2ab21d38 100644
--- a/dot-config/hypr/hyprland.lua
+++ b/dot-config/hypr/hyprland.lua
@@ -97,17 +97,24 @@ require("plugins")
--- hl.config({
--- debug = {
+hl.config({
+ experimental = {
+ wp_cm_1_2 = true,
+ },
+
+ input_capture = {
+ capture_modifiers = true
+ },
+
+ debug = {
-- -- disable_scale_checks = true,
-- disable_logs = false,
-- -- overlay = true, -- show fps
--- suppress_errors = true,
+ -- suppress_errors = true,
-- -- pass = true,
-- error_position = 1,
-- -- log_damage = true,
-- -- damage_blink = true,
-- full_cm_proto = true,
--- }
-
--- })
+ }
+})
diff --git a/dot-config/hypr/perms.lua b/dot-config/hypr/perms.lua
index b6a67e18..11014568 100644
--- a/dot-config/hypr/perms.lua
+++ b/dot-config/hypr/perms.lua
@@ -4,6 +4,7 @@ hl.config({
},
})
+-- Screencopy
hl.permission("/usr/(bin|local/bin)/grim", "screencopy", "allow")
hl.permission("/usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland", "screencopy", "allow")
hl.permission("/usr/(bin|local/bin)/hyprpm", "plugin", "allow")
@@ -11,11 +12,18 @@ hl.permission("/usr/(bin|local/bin)/hyprpm", "plugin", "allow")
hl.permission("/usr/bin/grim", "screencopy", "allow")
hl.permission("/usr/bin/hyprlock", "screencopy", "allow")
hl.permission("/usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland", "screencopy", "allow")
+hl.permission("/usr/bin/hyprland-preview-share-picker", "screencopy", "allow")
+-- Plugins
hl.permission("/var/cache/hyprpm/system/dynamic-cursors/dynamic-cursors.so", "plugin", "allow")
hl.permission("/var/cache/hyprpm/system/hyprscroller/hyprscroller.so", "plugin", "allow")
+-- InputCapture
+hl.permission("/usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland", "input-capture", "allow")
+
-- Keyboards
+hl.permission(".*", "keyboard", "ask")
+
hl.permission("^yubico-yubikey-otp\\+fido\\+ccid$", "keyboard", "allow")
hl.permission("^wooting-wooting-two-he-\\(arm\\)$", "keyboard", "allow")
hl.permission("^wooting-wooting-two-he-\\(arm\\)-system-control$", "keyboard", "allow")
@@ -30,7 +38,6 @@ hl.permission("^sleep-button$", "keyboard", "allow")
hl.permission("^hp-wmi-hotkeys$", "keyboard", "allow")
hl.permission("^hl-virtual-keyboard$", "keyboard", "allow")
hl.permission("^hl-virtual-keyboard-fcitx5$", "keyboard", "allow")
-
hl.permission("^company--usb-device--keyboard-1$", "keyboard", "allow")
-
-hl.permission(".*", "keyboard", "ask")
+hl.permission("^company--usb-device--1$", "keyboard", "allow")
+hl.permission("^wooting-wooting-two-he-\\(arm\\)-consumer-control-1$", "keyboard", "allow")
diff --git a/dot-config/hypr/perms.luagwCJsS.bck b/dot-config/hypr/perms.luagwCJsS.bck
new file mode 100644
index 00000000..9a6aaaa3
--- /dev/null
+++ b/dot-config/hypr/perms.luagwCJsS.bck
@@ -0,0 +1,42 @@
+hl.config({
+ ecosystem = {
+ enforce_permissions = true,
+ },
+})
+
+-- Screencopy
+hl.permission("/usr/(bin|local/bin)/grim", "screencopy", "allow")
+hl.permission("/usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland", "screencopy", "allow")
+hl.permission("/usr/(bin|local/bin)/hyprpm", "plugin", "allow")
+
+hl.permission("/usr/bin/grim", "screencopy", "allow")
+hl.permission("/usr/bin/hyprlock", "screencopy", "allow")
+hl.permission("/usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland", "screencopy", "allow")
+hl.permission("/usr/bin/hyprland-preview-share-picker", "screencopy", "allow")
+
+-- Plugins
+hl.permission("/var/cache/hyprpm/system/dynamic-cursors/dynamic-cursors.so", "plugin", "allow")
+hl.permission("/var/cache/hyprpm/system/hyprscroller/hyprscroller.so", "plugin", "allow")
+
+-- InputCapture
+hl.permission("/usr/bin/deskflow-core", "input-capture", "allow")
+
+-- Keyboards
+hl.permission("^yubico-yubikey-otp\\+fido\\+ccid$", "keyboard", "allow")
+hl.permission("^wooting-wooting-two-he-\\(arm\\)$", "keyboard", "allow")
+hl.permission("^wooting-wooting-two-he-\\(arm\\)-system-control$", "keyboard", "allow")
+hl.permission("^wooting-wooting-two-he-\\(arm\\)-consumer-control$", "keyboard", "allow")
+hl.permission("^company--usb-device-$", "keyboard", "allow")
+hl.permission("^company--usb-device--keyboard$", "keyboard", "allow")
+hl.permission("^logitech-brio-consumer-control$", "keyboard", "allow")
+hl.permission("^video-bus$", "keyboard", "allow")
+hl.permission("^power-button$", "keyboard", "allow")
+hl.permission("^power-button-1$", "keyboard", "allow")
+hl.permission("^sleep-button$", "keyboard", "allow")
+hl.permission("^hp-wmi-hotkeys$", "keyboard", "allow")
+hl.permission("^hl-virtual-keyboard$", "keyboard", "allow")
+hl.permission("^hl-virtual-keyboard-fcitx5$", "keyboard", "allow")
+
+hl.permission("^company--usb-device--keyboard-1$", "keyboard", "allow")
+
+hl.permission(".*", "keyboard", "ask")
diff --git a/dot-config/hypr/plugins.lua b/dot-config/hypr/plugins.lua
index 6f446303..d68617d3 100644
--- a/dot-config/hypr/plugins.lua
+++ b/dot-config/hypr/plugins.lua
@@ -1,3 +1,138 @@
hl.config({
- plugin = {}
+ plugin = {
+
+
+ -- overview = {
+ -- enabled = true,
+ -- disableGestures = true,
+ -- panelHeight = 150,
+ -- },
+ -- hyprfocus {
+ -- enabled = yes
+ -- focus_animation = shrink
+ -- animate_floating = yes
+ -- animate_worksapcechange = yes
+ -- }
+ dynamic_cursors = {
+ mode = "stretch",
+ shake = {
+ effects = true
+ },
+ -- shaperule = text, none
+ -- hyprcursor {
+ -- nearest = false
+ -- }
+ -- shaperule = clientside, none
+ },
+ -- scroller = {
+ -- column_default_width = "onehalf",
+ -- focus_edge_ms = 100,
+ -- only_window_one = true,
+ -- },
+ -- chromakey_background = $background
+ -- hy3 {
+ -- -- disable gaps when only one window is onscreen
+ -- -- 0 - always show gaps
+ -- -- 1 - hide gaps with a single window onscreen
+ -- -- 2 - 1 but also show the window border
+ -- -- no_gaps_when_only = <int> -- default: 0
+
+ -- -- policy controlling what happens when a node is removed from a group,
+ -- -- leaving only a group
+ -- -- 0 = remove the nested group
+ -- -- 1 = keep the nested group
+ -- -- 2 = keep the nested group only if its parent is a tab group
+ -- -- node_collapse_policy = <int> -- default: 2
+
+ -- -- offset from group split direction when only one window is in a group
+ -- -- group_inset = <int> -- default: 10
+
+ -- -- if a tab group will automatically be created for the first window spawned in a workspace
+ -- -- tab_first_window = <bool>
+
+ -- -- tab group settings
+ -- tabs {
+ -- -- height of the tab bar
+ -- -- height = <int> -- default: 15
+
+ -- -- padding between the tab bar and its focused node
+ -- -- padding = <int> -- default: 5
+
+ -- -- the tab bar should animate in/out from the top instead of below the window
+ -- -- from_top = <bool> -- default: false
+
+ -- -- rounding of tab bar corners
+ -- -- rounding = <int> -- default: 3
+
+ -- -- render the window title on the bar
+ -- -- render_text = <bool> -- default: true
+
+ -- -- center the window title
+ -- -- text_center = <bool> -- default: false
+
+ -- -- font to render the window title with
+ -- -- text_font = <string> -- default: Sans
+
+ -- -- height of the window title
+ -- -- text_height = <int> -- default: 8
+
+ -- -- left padding of the window title
+ -- -- text_padding = <int> -- default: 3
+
+ -- -- active tab bar segment color
+ -- -- col.active = <color> -- default: 0xff32b4ff
+
+ -- -- urgent tab bar segment color
+ -- -- col.urgent = <color> -- default: 0xffff4f4f
+
+ -- -- inactive tab bar segment color
+ -- -- col.inactive = <color> -- default: 0x80808080
+
+ -- -- active tab bar text color
+ -- -- col.text.active = <color> -- default: 0xff000000
+
+ -- -- urgent tab bar text color
+ -- -- col.text.urgent = <color> -- default: 0xff000000
+
+ -- -- inactive tab bar text color
+ -- -- col.text.inactive = <color> -- default: 0xff000000
+ -- }
+
+ -- -- autotiling settings
+ -- autotile {
+ -- -- enable autotile
+ -- -- enable = <bool> -- default: false
+
+ -- -- make autotile-created groups ephemeral
+ -- -- ephemeral_groups = <bool> -- default: true
+
+ -- -- if a window would be squished smaller than this width, a vertical split will be created
+ -- -- -1 = never automatically split vertically
+ -- -- 0 = always automatically split vertically
+ --
+ -- -- <number> = pixel height to split at
+ -- -- trigger_width = <int> -- default: 0
+
+ -- -- if a window would be squished smaller than this height, a horizontal split will be created
+ -- -- -1 = never automatically split horizontally
+ -- -- 0 = always automatically split horizontally
+ -- -- <number> = pixel height to split at
+ -- -- trigger_height = <int> -- default: 0
+
+ -- -- a space or comma separated list of workspace ids where autotile should be enabled
+ -- -- it's possible to create an exception rule by prefixing the definition with "not:"
+ -- -- workspaces = 1,2 -- autotiling will only be enabled on workspaces 1 and 2
+ -- -- workspaces = not:1,2 -- autotiling will be enabled on all workspaces except 1 and 2
+ -- -- workspaces = <string> -- default: all
+ -- }
+ -- }
+ -- hyprwinwrap {
+ -- class = winwrap
+ -- }
+ }
})
+
+hl.plugin.dynamic_cursors.shape_rule {
+ shape = "clientside",
+ mode = "none",
+}
diff --git a/dot-config/hypr/rules.lua b/dot-config/hypr/rules.lua
index 8a543fef..16d7cf89 100644
--- a/dot-config/hypr/rules.lua
+++ b/dot-config/hypr/rules.lua
@@ -78,12 +78,13 @@ hl.window_rule({ match = { tag = "games" }, content = "game" })
-- GUI Utils
hl.window_rule({
- match = { tag = "gui-utils" },
- opacity = "0.85 0.75",
- pin = true,
- size = { "(monitor_w*0.53)", "(monitor_h*0.6)" },
- move = { "(monitor_w-window_w-" .. offsets.right .. ")", tostring(offsets.top) },
- animation = "slide right top"
+ match = { tag = "gui-utils" },
+ float = true,
+ opacity = "0.85 0.75",
+ pin = true,
+ size = { "(monitor_w*0.53)", "(monitor_h*0.6)" },
+ move = { "(monitor_w*0.47-" .. offsets.right .. ")", tostring(offsets.top) },
+ animation = "slide right top"
})
-- media contents
@@ -114,10 +115,10 @@ end
hl.window_rule({ match = { tag = "fakefullscreen" }, fullscreen_state = "0 2" })
-- Games
-hl.window_rule({ match = { tag = "games" }, fullscreen = true, immediate = true })
+-- hl.window_rule({ match = { tag = "games" }, fullscreen = true, immediate = true })
-- fh5 & game focus suppression
-hl.window_rule({ match = { title = "^(Forza Horizon 5)$" }, suppress_event = "activatefocus" })
+hl.window_rule({ match = { title = "^(Forza Horizon [56])$" }, suppress_event = "activatefocus" })
hl.window_rule({ match = { class = "^(steam_app_1551360)$" }, suppress_event = "activatefocus" })
hl.window_rule({ match = { tag = "games" }, suppress_event = "activatefocus" })
@@ -154,7 +155,7 @@ hl.window_rule({ match = { tag = "hidden" }, workspace = "special:minimized sile
local app_tags = {
{ class = "^(Alacritty|Xfce4-terminal|Kitty|" .. (vars.term or "$term") .. "|com.mitchellh.ghostty)$", tag = "+terminal" },
{ class = "^(" .. (vars.browser or "$browser") .. "|Brave-browser|chromium|firefox|thorium|zen)$", tag = "+web" },
- { class = "^(" .. (vars.fileManager or "$fileManager") .. "|Pcmanfm|thunar|qBittorrent|Caja)$", tag = "+file" },
+ { class = "^(" .. (vars.fileManager or "$fileManager") .. "|Pcmanfm|thunar|org.qbittorrent.qBittorrent|Caja)$", tag = "+file" },
{ class = "^(code|code-url-handler|cursor-url-handler|code-oss|Code - OSS|install4j-burp-StartBurp|burp-StartBurp|Unity|jetbrains-pycharm-ce|Postman|jetbrains-clion|.*\\.zed\\.Zed-.*)$", tag = "+code" },
{ class = "^(LibreOffice.*|libreoffice.*|Typora|obsidian|figma-linux|anytype|craft-nativefier-e0958b|evince|org.gnome.Evince|ClickUp)$", tag = "+office" },
{ class = "^(discord|vesktop|VencordDesktop|Chat-gpt|Whatsapp-for-linux|Chatbox)$", tag = "+communication" },
@@ -165,7 +166,7 @@ local app_tags = {
{ title = ".*\\.exe", tag = "+games" },
{ title = "^(War Thunder.*)$", tag = "+games" },
{ content = "3", tag = "+games" },
- { class = "^(thorium-app.shortwave.com__-Default|thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default|BeeperTexts)$", tag = "+gui-utils" },
+ { class = "^(thorium-app.shortwave.com__-Default|thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default|BeeperTexts|Beeper)$", tag = "+gui-utils" },
{ class = "^(blobdrop|dragon|dragon-drop)$", tag = "+media-contents" },
{ class = "^(blobdrop|dragon|dragon-drop)$", tag = "+bottom-right" },
{ title = "^(Picture-in-Picture)$", tag = "+media-contents" },
@@ -189,7 +190,7 @@ for _, rule in ipairs(app_tags) do
end
-- Floating applications
-hl.window_rule({ match = { class = "^(zoom|sxiv|Sxiv|[Vv]iewnior|feh|nm-connection-editor|install4j-burp-StartBurp|thorium-app.shortwave.com__-Default|thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default|BeeperTexts|electron|com.github.rafostar.Clapper|io.github.celluloid_player.Celluloid|qimgv)$" }, float = true })
+hl.window_rule({ match = { class = "^(zoom|sxiv|Sxiv|[Vv]iewnior|feh|nm-connection-editor|install4j-burp-StartBurp|thorium-app.shortwave.com__-Default|thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default|BeeperTexts|Beeper|electron|com.github.rafostar.Clapper|io.github.celluloid_player.Celluloid|qimgv)$" }, float = true })
hl.window_rule({ match = { title = "^(Steam Settings|Sign in – Google accounts)$" }, float = true })
-- Specific window pin/stay_focused rules
@@ -245,6 +246,11 @@ end
-- Full screen no idle
hl.window_rule({ match = { class = ".*" }, idle_inhibit = "fullscreen" })
+hl.window_rule({
+ match = { class = "steam_app_2483190" },
+ render_unfocused = true,
+})
+
-- no blurs
hl.window_rule({ match = { title = "^(Annotation - Zoom)$" }, no_blur = true })
@@ -293,6 +299,7 @@ hl.window_rule({ match = { class = "^(org.vinegarhq.Sober)$", title = "^(Join Fr
-- suppressevent
hl.window_rule({ match = { class = "^spotify$" }, suppress_event = "activatefocus activate" })
+hl.window_rule({ match = { class = "^org.gnome.Evince$" }, suppress_event = "activate" })
-- Fix some dragging issues with XWayland
hl.window_rule({
diff --git a/dot-config/hypr/xdph.conf b/dot-config/hypr/xdph.conf
index 8f960548..363e7971 100644
--- a/dot-config/hypr/xdph.conf
+++ b/dot-config/hypr/xdph.conf
@@ -1,4 +1,5 @@
screencopy {
max_fps = 0
allow_token_by_default = true
+ custom_picker_binary = hyprland-preview-share-picker
}