245 lines
6.2 KiB
Text
245 lines
6.2 KiB
Text
#####################
|
|
### LOOK AND FEEL ###
|
|
#####################
|
|
|
|
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
|
source = ~/.config/hypr/config/colors.conf
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#general
|
|
general {
|
|
gaps_in = 1
|
|
gaps_out = 1
|
|
|
|
border_size = 1
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
col.active_border = $active_color
|
|
col.inactive_border = $inactive_color
|
|
|
|
# Resizing windows by clicking and dragging on borders and gaps
|
|
resize_on_border = true
|
|
|
|
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
|
allow_tearing = false
|
|
|
|
layout = dwindle
|
|
}
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
|
decoration {
|
|
rounding = 2
|
|
|
|
# Change transparency of focused and unfocused windows
|
|
active_opacity = 1.0
|
|
inactive_opacity = 1.0
|
|
|
|
shadow {
|
|
enabled = true
|
|
range = 4
|
|
render_power = 3
|
|
color = rgba(1a1a1aee)
|
|
}
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
|
blur {
|
|
enabled = true
|
|
size = 6
|
|
passes = 4
|
|
|
|
vibrancy = 0.1696
|
|
}
|
|
|
|
}
|
|
|
|
# TODO: replace layerrules
|
|
|
|
# Apply blur to waybar
|
|
# layerrule {
|
|
# name = waybar
|
|
# blur = on
|
|
# }
|
|
|
|
# Apply blur to swaync
|
|
|
|
## New
|
|
layerrule {
|
|
name = swaync-control-center,swaync-notification-window
|
|
blur = on
|
|
ignore_alpha = 0.5
|
|
}
|
|
|
|
## Old
|
|
# layerrule = blur, swaync-control-center
|
|
# layerrule = blur, swaync-notification-window
|
|
# layerrule = ignorezero, swaync-control-center
|
|
# layerrule = ignorezero, swaync-notification-window
|
|
# layerrule = ignorealpha 0.5, swaync-control-center
|
|
# layerrule = ignorealpha 0.5, swaync-notification-window
|
|
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
|
animations {
|
|
enabled = yes, please :)
|
|
|
|
# See https://wiki.hyprland.org/Configuring/Animations/ for more
|
|
|
|
# Bezier curves
|
|
bezier = easeOutQuint,0.23,1,0.32,1
|
|
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
|
bezier = linear,0,0,1,1
|
|
bezier = almostLinear,0.5,0.5,0.75,1.0
|
|
bezier = quick,0.15,0,0.1,1
|
|
|
|
bezier = easeInOutExpo,0.87,0,0.13,1
|
|
|
|
# Animations
|
|
animation = global, 1, 10, default
|
|
animation = border, 1, 5.39, easeOutQuint
|
|
|
|
animation = windows, 1, 3.79, easeOutQuint
|
|
animation = windowsIn, 1, 3.1, easeOutQuint, popin 87%
|
|
animation = windowsOut, 1, 1.49, linear, popin 87%
|
|
|
|
animation = fadeIn, 1, 1.73, almostLinear
|
|
animation = fadeOut, 1, 1.46, almostLinear
|
|
animation = fade, 1, 3.03, quick
|
|
|
|
animation = layers, 1, 3.81, easeOutQuint
|
|
animation = layersIn, 1, 4, easeOutQuint, fade
|
|
animation = layersOut, 1, 1.5, linear, fade
|
|
animation = fadeLayersIn, 1, 1.79, almostLinear
|
|
animation = fadeLayersOut, 1, 1.39, almostLinear
|
|
|
|
animation = workspaces, 1, 1.94, almostLinear, fade
|
|
animation = workspacesIn, 1, 3, easeOutQuint, slide
|
|
animation = workspacesOut, 1, 3, easeOutQuint, slide
|
|
|
|
#animation = workspacesIn, 1, 3, easeOutQuint, slidefade
|
|
#animation = workspacesOut, 1, 5, easeOutQuint, slidefade
|
|
}
|
|
|
|
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
|
# "Smart gaps" / "No gaps when only"
|
|
# uncomment all if you wish to use that.
|
|
# workspace = w[tv1], gapsout:0, gapsin:0
|
|
# workspace = f[1], gapsout:0, gapsin:0
|
|
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
|
|
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1]
|
|
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
|
|
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
|
|
|
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
|
dwindle {
|
|
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
|
preserve_split = true # You probably want this
|
|
}
|
|
|
|
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
|
master {
|
|
new_status = master
|
|
}
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
|
misc {
|
|
force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
|
|
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
|
|
disable_splash_rendering = true # Disable default wallpapers rendering
|
|
vfr = true # Lower sent frames when idle
|
|
}
|
|
|
|
|
|
##############################
|
|
### WINDOWS AND WORKSPACES ###
|
|
##############################
|
|
|
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
|
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
|
|
|
# Ignore maximize requests from apps. You'll probably like this.
|
|
windowrule {
|
|
name = suppress-maximize-events
|
|
suppress_event = maximize
|
|
match:class = .*
|
|
}
|
|
|
|
# Fix some dragging issues with XWayland
|
|
windowrule {
|
|
name = fix-xwayland-drags
|
|
match:class = ^$
|
|
match:title = ^$
|
|
match:xwayland = true
|
|
match:float = true
|
|
match:fullscreen = false
|
|
match:pin = false
|
|
|
|
no_focus = true
|
|
}
|
|
|
|
# Albert
|
|
windowrule {
|
|
name = albert
|
|
border_size = 0
|
|
no_blur = on
|
|
no_shadow = on
|
|
float = on
|
|
stay_focused = on
|
|
no_dim = on
|
|
match:class = ^(albert)$
|
|
}
|
|
|
|
# Prism Launcher
|
|
windowrule {
|
|
name = prismlauncher-all
|
|
pseudo = on
|
|
match:class = (org.prismlauncher.PrismLauncher)
|
|
}
|
|
windowrule {
|
|
name = prismlauncher-main
|
|
size = (monitor_w*0.65) (monitor_h*0.7)
|
|
match:class = (org.prismlauncher.PrismLauncher)
|
|
match:title = ^(Prism Launcher .*)$
|
|
}
|
|
|
|
# Nautilus
|
|
windowrule {
|
|
name = nautilus-all
|
|
pseudo = on
|
|
match:class = (org.gnome.Nautilus)
|
|
}
|
|
windowrule {
|
|
name = nautilus-main
|
|
size = (monitor_w*0.65) (monitor_h*0.7)
|
|
match:class = (org.gnome.Nautilus) # initialTitle:^(Loading…)$
|
|
}
|
|
|
|
# Vivado
|
|
## Loading screen
|
|
windowrule {
|
|
name = vivado-loading-screen
|
|
float = on
|
|
center = on
|
|
match:class = (ui-PlanAhead)
|
|
}
|
|
windowrule {
|
|
name = vivado-loading-screen-2
|
|
size = 397 295
|
|
match:class = (ui-PlanAhead) title:^(win0)$
|
|
}
|
|
## Main window
|
|
windowrule {
|
|
name = vivado-main
|
|
tile = on
|
|
match:class = (Vivado)
|
|
}
|
|
|
|
|
|
# TODO Automatically fullscreen single apps
|
|
# - Seems impossible for now (try mixing with workspace rules)
|
|
|
|
# Default size for floating windows
|
|
## TODO
|
|
#windowrulev2 = size 100 100,floating:1
|
|
|
|
# Increase gaps for single apps
|
|
## Usless since I changed the default gap but may be useful if you decide to reset it to 0
|
|
#workspace=w[t1], gapsout:2
|