
#
# General settings
#
general {
  gaps_in=10
  gaps_out=0
  border_size=2
  col.inactive_border=rgba(f7768eff) rgba(bb9af7ff) 45deg
  col.active_border=rgba(bb9af7ff) rgba(f7768eff) 45deg
  no_border_on_floating = false
  layout = dwindle
}


# unscale XWayland
xwayland {
  force_zero_scaling = true
}

# toolkit-specific scale
env = GDK_SCALE,2
env = XCURSOR_SIZE,32

misc {
  disable_hyprland_logo = true
  disable_splash_rendering = true
  mouse_move_enables_dpms = true
  enable_swallow = true
  swallow_regex = ^(alacritty)$
}

decoration {
  #
  # Round corners
  #
  rounding = 3
  
  #
  # Opacity
  #
  active_opacity = 0.98
  inactive_opacity = 0.65
  # 
  # Blur
  #
  #
  blur {
    enabled = true
    size = 2
    passes = 2
  }
  
 
  #
  # Shadow
  #
  drop_shadow = true
  shadow_ignore_window = true
  shadow_offset = 2 2
  shadow_range = 8
  shadow_render_power = 10
  col.shadow = rgba(00000055)
  blurls = gtk-layer-shell
  blurls = lockscreen
}

#
# Animation
#
animations {
  enabled = true
  #
  # Bezier curve
  #
  bezier = overshot, 0.05, 0.5, 0.1, 1.05
  bezier = smoothOut, 0.36, 0, 0.66, -0.56
  bezier = smoothIn, 0.25, 0.8, 0.5, 0.5

  animation = windows, 1, 5, overshot, slide
  animation = windowsOut, 1, 4, smoothOut, slide
  animation = windowsMove, 1, 4, default
  animation = border, 1, 10, default
  animation = fade, 1, 2, smoothIn
  animation = fadeDim, 1, 2, smoothIn
  animation = workspaces, 1, 6, default

}

#
# Layouts
#
dwindle {
  no_gaps_when_only = false
  pseudotile = true # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
  preserve_split = true # you probably want this
}

#
# Window rules
#
windowrule = float, file_progress
windowrule = float, confirm
windowrule = float, dialog
windowrule = float, download
windowrule = float, notification
windowrule = float, error
windowrule = float, splash
windowrule = float, confirmreset
windowrule = float, title:Open File
windowrule = float, title:branchdialog
windowrule = float, Lxappearance
#windowrulev2 = rounding 0 override, class:(wofi)
windowrule = float, class:(wofi)
windowrule = float,viewnior
# windowrule = float,feh
windowrulev2 = tile, title:^(.*)(Godot)(.*)$
# windowrule = float, file-roller
windowrule = fullscreen, wlogout
windowrule = float, title:wlogout
windowrule = fullscreen, title:wlogout
windowrule = idleinhibit focus, mpv
windowrule = idleinhibit fullscreen, firefox
windowrule = float, title:^(Media viewer)$
windowrule = float, title:^(Volume Control)$
windowrule = float, title:^(Picture-in-Picture)$
windowrule = size 800 600, title:^(Volume Control)$
windowrule = move 39% 420, title:^(Volume Control)$
windowrule = tile, title:^(.*)Aseprite(.*)$

windowrulev2 = workspace 1, class:^(alacritty)$
windowrulev2 = workspace 2, class:^(firefox)$
windowrulev2 = workspace 3, class:^(discord)$
windowrulev2 = workspace 3, title:^(Spotify)(.*)$
windowrulev2 = workspace 3, class:^(Slack)$
windowrulev2 = workspace special, class:^(thunar)$
windowrulev2 = workspace special, class:^(YouTube Music)$

# Screen share settings
windowrulev2 = opacity 0.0 override,class:^(xwaylandvideobridge)$
windowrulev2 = noanim,class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
windowrulev2 = maxsize 1 1,class:^(xwaylandvideobridge)$
windowrulev2 = noblur,class:^(xwaylandvideobridge)$
windowrulev2 = opacity 1 override,class:^(dev.warp.Warp)$
