mirror of
https://github.com/hyprwm/Hyprland
synced 2024-12-23 05:29:48 +01:00
A read-only mirror of https://github.com/hyprwm/Hyprland
efee6a1cda
Currently, if a window class is specified in the swallow_regex (e.g. Kitty) it will swallow every other window spawned by it automatically. Many other WMs implementing this functionality allow for defining exceptions from this rule. For instance, we want Kitty to swallow sxiv or zathura but we do not want Kitty to swallow something like wev. This commit adds an additional regex - swallow_exception_regex where these exceptions can be defined. This regex is then compared against the title of the window about to be swallowed and if it happens to be a match, aborts the swallowing. This works because whenever an application that could be swallowed is launched by a terminal, the class of the terminal remains the same while the title changes to whatever the application's name is, thus letting it be matched against a regex. |
||
---|---|---|
.github | ||
assets | ||
docs | ||
example | ||
hyprctl | ||
nix | ||
protocols | ||
src | ||
subprojects | ||
.clang-format | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
CMakeLists.txt | ||
config.mk | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
Makefile | ||
meson.build | ||
meson_options.txt | ||
props.json | ||
README.md |
Hyprland is a dynamic tiling Wayland compositor based on wlroots that doesn't sacrifice on its looks.
It supports multiple layouts, fancy effects, has a very flexible IPC model allowing for a lot of customization, a powerful plugin system and more.
Install
Quick Start
Configure
Contribute
Notice
Hyprland is still in pretty early development compared to some other Wayland compositors.
Although Hyprland is pretty stable, it may have some bugs.
Features
- Easily expandable and readable codebase
- Plugin support
- Config reloaded instantly upon saving
- Custom bezier curve based animations
- Dual Kawase blur
- Drop shadows
- Rounded corners
- Gradient borders
- Fully dynamic workspaces
- Closely follows
wlroots-git
- Global keybinds passed to your apps of choice
- A lot of customization
- Bundled wlroots
- Window/layer fade in/out
- Tiling/pseudotiling/floating/fullscreen windows
- Switching workspaces between window modes on the fly
- Special workspaces (scratchpads)
- Window/monitor rules
- Socket-based IPC
wlr_ext
workspaces protocol support- Event system for bash scripts
- Full damage tracking
- Docks support
- Drawing tablet support
- Native IME + Input panels support
- and much more...
Special Thanks
wlroots - For their amazing library
tinywl - For showing how 2 do stuff
Sway - For showing how 2 do stuff the overkill way
Vivarium - For showing how 2 do stuff the simple way
dwl - For showing how 2 do stuff the hacky way
Wayfire - For showing how 2 do some graphics stuff