v0.41.2
Hi all! 0.41.2 bringing even more fixes on top of 0.41.1. Enjoy!
New features:
- core: add ability to select previous workspace per monitor (#6598)
- hyprctl: added --follow option to rolliglog (#6325)
- hyprpm: add --no-shallow
- input: add cursor:warp_on_changeworkspace (#6480)
- keybinds: add custom event dispatcher
- vrr: add option to fix mouse breaking vrr (#6483)
- window: expose pseudotiled state and add param to dispatcher (#6583)
Fixes:
- animations: fix overriding direction for slide
- core: fix a few small memory leaks on exit (#6470)
- data-device: minor fixes
- egl: fixup format modifier lookups with implicit modifiers
- foreign-toplevel-wlr: fix out-of-range for missing monitor resources
- format: fix flipped r/b channels on legacy_renderer
- hyprctl: add a newline after log()
- hyprctl: fix zsh completion (#6467)
- keybinds: fix mouse pass (#6652)
- output: fix cursors disappearing after dpms (#6659)
- subcompositor/renderer: fixup handling of subsurfaces below the main one
- surface: add virtual destructor to surfacerole to avoid undefined behaviour (#6620)
- vrr: add option to fix mouse breaking vrr (#6483)
- xdg-shell: fixup xdg-positioner's pointForAnchor with non-corner points
- xwayland: fixup unfocus atom conditions
Other:
- Nix: don't strip in debug builds
- Nix: tidy up derivation
- compositor: bump nofile rlimits on launch
- constraints: Lock surface region when region is empty (#6627)
- core: Move to hyprutils for Math
- core: avoid bumping hard rlimits, restore on fork
- damageRing: move to hyprland impl
- data-device: abort drag on unaccepted offers
- data-device: properly abort drag on missing device
- dbus: import PATH XDG_DATA_DIRS variables into systemd and dbus session
- format: include macros for unreachable
- github: reword bug or regression (#6520)
- helpers: make shm_open() portable after 8bcccf9 (#6471)
- hyprctl: avoid using select()
- hyprctl: make recv timeout bigger and give error message if it does timeout (#6621)
- hyprland.conf: update master section (#6537)
- keybinds: ignore missing keysyms if no other methods match
- master: refine master layout new window handling (#6479)
- math: include cstring for memset
- misc: a few compiler level performance optimisations (#6559)
- output: avoid crashes when binding a defunct wl_output global
- pointer: use software rendering when monitor is mirrored (#6587)
- renderer: shrink occlusion rect if blur is used
- seat/dnd: unfocus pointer from surfaces on dnd start
- seat: track pressed pointer buttons
- window: improve swallowing functionality
- window: use effective damage for tearing re-schedules
- wl-compositor: don't send enter to defunct output globals
- wl_data_device: send drop_performed in completeDrag
- wl_seat: accomodate for apps late-binding seat resources
- wl_seat: send repeat data from current keyboard on bind
- xdg-shell: Continue transform of popup until size fits (#6521)
- xdg-shell: properly check for resource version for TILED and SUSPENDED states
- xwayland: do not set a new data source if it has no MIMEs
- xwayland: drop some spammy logs to trace
- xwayland: force default plain mime atoms on known types
- xwayland: use safeRemove for removing files
Special thanks
As always, special thanks to these chads for donating:
- Xoores
- kittyandrew
- Azelphur
- maltbeverage
- alukortti
- Wickedly
- Philipp Soldunov
- Theory_Lukas
- MasterHowToLearn
- ari-cake
- taigrr
- SomeMediocreGamer
- Crashdummy
- Tristan
- ddbnl
- NathBeLive
- atomicptr
- Nutel
- rkoten
- Marek Vospel
- radicaltray
MRs
- last bits of asan output by @gulafaran in #6470
- helpers: unbreak shm_open() on FreeBSD by @jbeich in #6471
- Fix build warnings by @phonetic112 in #6486
- layerSurface: fix layer being refocused every commit with on_demand by @outfoxxed in #6487
- feat: added --follow option to
hyprctl rollinglog
#6300 by @Truenya in #6325 - option to fix mouse breaking vrr by @UjinT34 in #6483
- flake: update xdph by @diniamo in #6497
- layout: refine master layout new window handling by @memchr in #6479
- update example hyprland.conf by @memchr in #6537
- input: add cursor:warp_on_changeworkspace by @memchr in #6480
- xdg-shell: Continue transform of popup until size fits by @DashieTM in #6521
- a few compiler level performance optimisations by @gulafaran in #6559
- github: reword bug or regression by @Aqa-Ib in #6520
- fix zsh completion in hyprctl by @random2907 in #6467
- pointer: use software rendering when monitor is mirrored by @lucasreis1 in #6587
- Expose pseudotiled state in hyprctl clients and add an optional window argument for the pseudo dispatcher by @Przegryw321 in #6583
- add virtual destructor to surfacerole to avoid undefined behaviour by @gulafaran in #6620
- increase read timeout for hyprctl by @ikalco in #6621
- Pointer constraints: Lock surface region when region is empty by @MariuszTrybus in #6627
- feat: [compositor, misc] ability to select previous workspace per monitor by @Truenya in #6598
- systemd,dbus: import PATH XDG_DATA_DIRS variables into systemd and dbus session by @JohnRTitor in #6640
- output: fix cursors disappearing after dpms by @outfoxxed in #6659
- keybinds: fix mouse pass by @Trimutex in #6652
New Contributors
- @Truenya made their first contribution in #6325
- @UjinT34 made their first contribution in #6483
- @random2907 made their first contribution in #6467
- @Przegryw321 made their first contribution in #6583
- @MariuszTrybus made their first contribution in #6627
- @JohnRTitor made their first contribution in #6640
- @Trimutex made their first contribution in #6652
Full Changelog: v0.41.1...v0.41.2