github YaLTeR/niri v0.1.0-alpha.2

latest releases: v0.1.7, v0.1.6, v0.1.5...
6 months ago

Several important additions have landed since alpha.1.

Implemented the relative-pointer and pointer-constraints protocols

These protocols allow apps to lock or confine the mouse pointer within their window. In particular, Xwayland makes use of these protocols to make 3D games with mouse look "just work"!

mouse-look.mp4

Other examples include Blender and virtual machines.

blender-warp.mp4

Implemented popup unconstraining

Popups will no longer open partially off-screen. Niri will also try to position popups within the application's window horizontally so that if a window is fully on-screen, the popup will also be fully visible.

Fractal screenshot with open emoji popup

Added a struts option

This one allows you to add a kind of "outer gaps" if you like those layouts. Also, left and right struts will make windows to the sides always partially visible, which can help with mouse-only navigation.

Screenshot from 2023-12-23 10-21-20

More improvements in this release

  • New windows can no longer steal focus from a fullscreen window. All it took was a Syncthing dialog interrupting my Hollow Knight boss battle.
  • Tablets will now match their target monitor's aspect ratio (works the same way as in GNOME Shell).
  • Tablets can no longer move the cursor outside of their target monitor's bounds.
  • Tablets will no longer send wl_pointer events (as they shouldn't), which makes them work correctly with GTK 4 apps.
  • Added a niri validate subcommand that will check if your config parses successfully.
  • Added a way to disable an output with an off config flag.
  • Added focus-window-or-workspace-up/down and move-window-up-or-to-workspace-up/down bind commands that do a workspace switch when the focus is at the end of a window column (not bound to anything by default). This way you can avoid an extra set of workspace switch binds. Thanks @rabidpug for adding this.
  • Keyboard config is now live-reloaded, including the XKB options.
  • Fixed screen not immediately redrawing in some cases, most notably when a layer-shell surface shows a popup.
  • Allegedly, high-resolution scroll wheel mice should now work after a Smithay update, but I don't have one so I don't know for sure.

This is an alpha tag. There are known bugs and missing features. Don't be surprised if there's a breaking config change in the future.

Please check the README for building and installation instructions. Also, if you're on Fedora, I've got a COPR.

Don't miss a new niri release

NewReleases is sending notifications on new releases.