A read-only mirror of https://github.com/hyprwm/Hyprland
Find a file
Andrew Pritchard dfb78e0593
Fix swiping onto a new workspace with multiple monitors. (#1971)
The previous code could run into issues into the following circumstances:

* The focused monitor is on its rightmost workspace with ID `i`.
* Another monitor has a workspace with ID `i+1`.
* `workspace_swipe_create_new` is enabled.

Then, swiping rightwards attempts to target a new workspace with ID
`i+1`: completing the swipe gesture unintentionally focuses that
workspace on whichever monitor it's already on while leaving the active
monitor in a broken state where it shows no windows but creates new
windows on the workspace it was previously on; and cancelling the swipe
gesture shifts the entire workspace `i+1` to the right by the width of
the active monitor.

By choosing an ID that doesn't exist, this problematic behavior is
avoided.  More specifically, it's the smallest ID greater than any
existing workspace's ID, because otherwise the new workspace that was
seemingly just created to the right of the rightmost workspace could end
up somewhere in the middle of the workspace order.
2023-04-07 12:18:53 +01:00
.github Nix: simplify CI 2023-03-04 17:03:33 +02:00
assets updated-hyprland.png 2022-07-21 12:31:24 +05:30
docs [gha] build man pages 2023-04-03 22:47:26 +00:00
example examples: pull correct wlr dirs in example plugin 2023-04-01 02:22:52 +01:00
hyprctl hyprctl: add notify 2023-03-20 16:00:54 +00:00
nix Fix nix build options 2023-03-27 11:00:37 +03:00
protocols Hyprland Screencopy impl (#1800) 2023-04-03 17:01:05 +01:00
src Fix swiping onto a new workspace with multiple monitors. (#1971) 2023-04-07 12:18:53 +01:00
subprojects deps: update wlroots 2023-04-06 21:03:53 +01:00
.clang-format touch up the clang format and format all files 2022-12-20 02:18:47 +00:00
.gitattributes Initial commit 2022-03-16 20:49:02 +01:00
.gitignore Plugin System (#1590) 2023-02-27 12:32:38 +00:00
.gitmodules Plugin System (#1590) 2023-02-27 12:32:38 +00:00
CMakeLists.txt Hyprland Screencopy impl (#1800) 2023-04-03 17:01:05 +01:00
config.mk Initial Commit 2022-03-16 20:50:55 +01:00
flake.lock [gha] bump flake inputs 2023-04-06 20:09:01 +00:00
flake.nix Nix: disable HiDPI for default package 2023-03-22 19:10:46 +02:00
LICENSE update license on main branch (#1604) 2023-02-21 19:01:40 +00:00
Makefile Refactor CMake and Make file (#1766) 2023-03-14 21:50:30 +00:00
meson.build Fix nix build options 2023-03-27 11:00:37 +03:00
meson_options.txt Fix nix build options 2023-03-27 11:00:37 +03:00
props.json props.json: update to 0.23.0 2023-03-15 00:29:21 +02:00
README.md Readme: update to mention plugins 2023-03-14 21:56:31 +00:00

banner

Badge Workflow Badge License Badge Language Badge Pull Requests Badge Issues Badge Hi Mom
Badge Discord


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...


Gallery


Preview A


Preview B


Preview C



Stars Over Time


Stars Preview



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