97 lines
3.1 KiB
Text
97 lines
3.1 KiB
Text
# ===================================== #
|
|
# Assign programs to default workspaces #
|
|
# ===================================== #
|
|
|
|
## Get app_id and/or class for all open windows:
|
|
## `swaymsg -t get_tree | grep app_id`
|
|
## `swaymsg -t get_tree | grep class`
|
|
|
|
# Assign by app_id
|
|
assign [app_id="^betterbird$"] $wsF5
|
|
assign [app_id="^org.gnome.Calendar$"] $wsF8
|
|
assign [app_id="^cinny$"] $wsF6
|
|
assign [app_id="^Element$"] $wsF6
|
|
assign [app_id="^evolution$"] $wsF5
|
|
assign [app_id="^looking-glass-client$"] $wsF12
|
|
assign [app_id="^thunderbird$"] $wsF1
|
|
assign [app_id="^betterbird$"] $wsF5
|
|
assign [app_id="^virt-manager$"] $ws1
|
|
assign [app_id="^vesktop$"] $wsF7
|
|
|
|
# Assign by class
|
|
assign [class="^steam$"] $wsF11
|
|
assign [class="^steamwebhelper$"] $wsF11
|
|
assign [class="^steam_app_"] $wsF12
|
|
assign [class="^steam_proton$"] $wsF11
|
|
|
|
# Assign by Title
|
|
assign [title="Default - Wine desktop"] $wsF12
|
|
|
|
# Assign by app_id and class (apps i use with and without X)
|
|
assign [app_id="^discord$"] $wsF7
|
|
assign [app_id="^com.discordapp.Discord$"] $wsF7
|
|
assign [class="^discord$"] $wsF7
|
|
assign [app_id="^Signal$"] $wsF3
|
|
assign [class="^Signal$"] $wsF3
|
|
assign [app_id="^teamspeak"] $wsF2
|
|
assign [class="^TeamSpeak"] $wsF2
|
|
|
|
# ============================= #
|
|
# Assign workspaces to displays #
|
|
# ============================= #
|
|
|
|
workspace $ws1 output $disp1
|
|
workspace $ws2 output $disp2
|
|
workspace $ws3 output $disp3
|
|
workspace $ws4 output $disp3
|
|
workspace $ws5 output $disp3
|
|
workspace $wsF1 output $disp1
|
|
workspace $wsF2 output $disp1
|
|
workspace $wsF3 output $disp1
|
|
workspace $wsF4 output $disp1
|
|
workspace $wsF5 output $disp2
|
|
workspace $wsF6 output $disp2
|
|
workspace $wsF7 output $disp2
|
|
workspace $wsF8 output $disp2
|
|
workspace $wsF9 output $disp3
|
|
workspace $wsF10 output $disp3
|
|
workspace $wsF11 output $disp3
|
|
workspace $wsF12 output $disp3
|
|
|
|
# ================== #
|
|
# Setup window rules #
|
|
# ================== #
|
|
|
|
for_window {
|
|
# Mark all windows running under XWayland as such
|
|
[shell="xwayland"] title_format "%title [XWayland]"
|
|
|
|
# window rules for 'special' types of windows (in x11 territory)
|
|
[window_role="pop-up"] floating enable
|
|
[window_role="bubble"] floating enable
|
|
[window_role="dialog"] floating enable
|
|
[window_role="task_dialog"] floating enable
|
|
[window_role="Preferences"] floating enable
|
|
[window_type="dialog"] floating enable
|
|
[window_type="menu"] floating enable
|
|
[instance="update_installer"] floating enable
|
|
|
|
# window rules for 'special' types of windows; in wayland we can only go by window title for now
|
|
[title="Sharing Indicator"] floating enable
|
|
|
|
# floating and no border for (firefox) picture in picture windows
|
|
[title="Picture-in-Picture"] floating enable; border none
|
|
|
|
# window rules for specific apps
|
|
[app_id="^org.keepassxc.KeePassXC$"] floating enable
|
|
[app_id="mpv"] inhibit_idle visible; border none; max_render_time off
|
|
|
|
[app_id="showmethekey-gtk"] floating enable; sticky enable
|
|
|
|
[class="steam"] max_render_time off
|
|
[class="steam_app"] max_render_time off
|
|
[class="steam_proton"] max_render_time off
|
|
[class="steamwebhelper"] max_render_time off
|
|
|
|
[title="Default - Wine desktop"] fullscreen
|
|
}
|