hyprland-plugins/hyprbars
2026-05-05 00:35:52 +01:00
..
barDeco.cpp hyprbars: add missing includes needed for GCC16 (#645) 2026-04-27 13:23:33 +01:00
barDeco.hpp bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
BarPassElement.cpp bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
BarPassElement.hpp bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
CMakeLists.txt bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
default.nix chore: chase nixpkgs 2025-09-22 12:18:57 +03:00
globals.hpp bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
main.cpp bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
Makefile bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
meson.build bars/vkfix/focus: chase hyprland 2026-04-26 17:15:05 +01:00
README.md all: lua update compatibility (#649) 2026-05-05 00:35:52 +01:00

hyprbars

Adds simple title bars to windows.

image

Config

All config options are in plugin:hyprbars:

plugin {
    hyprbars {
        # example config
        bar_height = 20

        # example buttons (R -> L)
        # hyprbars-button = color, size, on-click
        hyprbars-button = rgb(ff4040), 10, 󰖭, hyprctl dispatch killactive
        hyprbars-button = rgb(eeee11), 10, , hyprctl dispatch fullscreen 1

        # cmd to run on double click of the bar
        on_double_click = hyprctl dispatch fullscreen 1
    }
}
property type description default
enabled bool whether to enable the bars
bar_color color bar's background color
bar_height int bar's height 15
bar_blur bool whether to blur the bar. Also requires the global blur to be enabled.
col.text color bar's title text color
bar_title_enabled bool whether to render the title true
bar_text_size int bar's title text font size 10
bar_text_font str bar's title text font Sans
bar_text_align left, center bar's title text alignment center
bar_buttons_alignment right, left bar's buttons alignment right
bar_part_of_window bool whether the bar is a part of the main window (if it is, stuff like shadows render around it)
bar_precedence_over_border bool whether the bar should have a higher priority than the border (border will be around the bar)
bar_padding int left / right edge padding 7
bar_button_padding int padding between the buttons 5
icon_on_hover bool whether the icons show on mouse hovering over the buttons false
inactive_button_color col buttons bg color when window isn't focused
on_double_click str command to run on double click of the bar (not on a button)

Buttons Config

Use the hyprbars-button keyword.

hyprbars-button = bgcolor, size, icon, on-click, fgcolor

Please note it has to be inside plugin { hyprbars { } }.

For Lua config, use hl.config for plugin options and hl.plugin.hyprbars.add_button for buttons:

hl.config({
    plugin = {
        hyprbars = {
            bar_height = 20,
            on_double_click = "hyprctl dispatch fullscreen 1",
        },
    },
})

hl.plugin.hyprbars.add_button({
    bg_color = "rgb(ff4040)",
    fg_color = "rgb(ffffff)",
    size = 10,
    icon = "X",
    action = "hyprctl dispatch killactive",
})

hl.plugin.hyprbars.add_button({
    bg_color = "rgb(eeee11)",
    fg_color = "rgb(000000)",
    size = 10,
    icon = "_",
    action = "hyprctl dispatch fullscreen 1",
})

Window rules

Hyprbars supports the following dynamic window rules:

hyprbars:no_bar -> disables the bar on matching windows.
hyprbars:bar_color -> sets the bar background color on matching windows.
hyprbars:title_color -> sets the bar title color on matching windows.

Example:

# Sets the bar color in red for all windows that have 'myClass' as a class
windowrule {
    name = myClass-red-bars
    match:class = ^(myClass)$
    hyprbars:bar_color = rgb(ff0000)
}