// Window rules let you adjust behavior for individual windows.
// Find more information on the wiki:
// https://yalter.github.io/niri/Configuration:-Window-Rules

// Terminal applications - open in workspace 1
window-rule {
    match app-id="foot"
    open-on-workspace "1terminal"
    open-maximized true
}
window-rule {
    match app-id="Alacritty"
    open-on-workspace "1terminal"
    open-maximized true
}
window-rule {
    match app-id="com.mitchellh.ghostty"
    open-on-workspace "1terminal"
    open-maximized true
}

// Web browsers - open in workspace 2
window-rule {
    match app-id="firefox"
    open-on-workspace "2browser"
    open-maximized true
}
window-rule {
    match app-id="google-chrome"
    open-on-workspace "2browser"
    open-maximized true
}
window-rule {
    match app-id="chromium-browser"
    open-on-workspace "2browser"
    open-maximized true
}

// Chat applications - open in workspace 3
window-rule {
    // match app-id="org.telegram.desktop"
    match title="^Telegram"
    open-on-workspace "3chat"
}
window-rule {
    match app-id="wechat"
    open-on-workspace "3chat"
}
window-rule {
    match app-id="QQ"
    open-on-workspace "3chat"
}

// Gaming applications - open in workspace 4
window-rule {
    match app-id="steam"
    open-on-workspace "4gaming"
}
window-rule {
    match app-id="steam_app_default"
    open-on-workspace "4gaming"
}
window-rule {
    match app-id="heroic"
    open-on-workspace "4gaming"
}
window-rule {
    match app-id="net.lutris.Lutris"
    open-on-workspace "4gaming"
}
window-rule {
    match app-id="com.vysp3r.ProtonPlus"
    open-on-workspace "4gaming"
}
window-rule {
    // Run anime games on Linux
    match app-id="^moe.launcher"
    open-on-workspace "4gaming"
}
window-rule {
    // All *.exe (Windows applications)
    match app-id=".exe$"
    open-on-workspace "4gaming"
}

// File management applications - open in workspace 6
window-rule {
    match app-id="com.github.johnfactotum.Foliate"
    open-on-workspace "6file"
}
window-rule {
    match app-id="thunar"
    open-on-workspace "6file"
}

// Other applications - open in workspace 0
window-rule {
    match app-id="Clash-verge"
    open-on-workspace "0other"
}
window-rule {
    match app-id="Zoom Workplace"
    open-on-workspace "0other"
}
