Sup y'all, new Hyprland update dropped :)
Shoutout to grandma
New features:
- Add support for smart splitting (#2676)
- Allow setting alpha value for ignorezero layer rule (#2477)
- feat: add ipc set title window event (#2419)
- feat: add lockactivegroup dispatcher (#2478)
- feat: add variable to customize locked group border color (#2507)
- gestures: add workspace_swipe_use_r
- noxwl: add missing stubs
- pluginapi: add configReloaded event
- rules: add nodim
- rules: add stayfocused
- screenshader: add output uniform
- xwayland: add force_zero_scaling
- xwayland: add nearest neighbor filtering as an opt
Fixes:
- Fix crash when screen size is 0x0 (#2523)
- Fix fractional scale updates in some cases (#2447)
- Nix CI: fix typo
- chore: fix typos (#2463)
- config: fix floating rules with floating-by-rule windows
- config: fix reading touchpad values to non-touchpad per-device cfgs
- config: minor path handling fixes
- configmgr: fix idiotic comparisons in device configs
- fix updating revision in wlroots.wrap
- format: fix hooksystem
- gradient: fix warn
- groupbar fixes (#2630)
- groupbar: fix damage calcs
- groupbar: fix vram leak
- internal: minor style fixes
- layout: minor style fixes
- lockgroups fix (#2636)
- main: fix segfault when -c is given with no other arguments (#2470)
- opengl: fix invalid tex references to tex-less shader
- plugins: fix config value usage in init
- screenshader: fix uniform variable checks (#2513)
- screenshot fix (#2640)
- swipe: fix mixup of r/m
- texture: fix styling
- xwayland: fix minor force_zero_scaling bugs
- xwaylandmanager: fixup style
Other:
- Avoid passing control unix socket descriptors to children (#2656)
- Cleanup compositor deadcode (#2657)
- Close socket2 client descriptor on hangup (#2654)
- Implement pass binds (#2503)
- Keep new mapped layer's alpha zero if the workspace has a fullscreen window (#2686)
- Make movetoworkspace register previous workspace (#2436)
- Nix CI: split inputs and wlroots updating
- Nix/portals.patch: conditionally check portals
- Nix: patch portals search dir
- Partial revert of Commit 302ec13: (#2539)
- Reloads animated decoration values set on window rules (#2594)
- Reloads dynamic window rules (#2585)
- Reuse same ID when reconnecting monitor, otherwise use minimum available ID (#2666)
- Update ISSUE_GUIDELINES.md faq link to the wiki (#2424)
- Xdg config home support (#2047)
- [hyprctl] Expose the special workspace id and name of the monitor (#2392)
- animationmgr: warp on equal start and goal
- calculate zoom_center based on monitor scale (#2482)
- compositor: don't set dim percent on disabled dim
- compositor: move group members properly in moveWindowToWorkspaceSafe
- crashreporter: log tag
- damage: account for popups in getFullWindowBoundingBox
- eventmanager: drop obsoleted ignore events flag (#2660)
- events: remove old comment
- flake.lock: update nixpkgs
- flake.lock: update nixpkgs
- gamma: use wlr's new gamma manager event
- hyprctl: recalc layout on setprop
- includes: move workspace protocol header to includes
- input: force focus on movefocus
- input: remove old redundant code
- input: schedule frame on mouse move
- input: update surface input on changeworkspace
- internal: damage window on change group
- internal: make borderSize prop overridable
- internal: properly set monitor props on special windows
- keybinds: remove old todo
- layout: improve time restraints in window drag
- layout: set pseudo to float size in new window
- layouts: make aware of borderSize prop
- monitor desc default workspace (#2673)
- monitor desc default workspace but working now (#2678)
- monitor desc support (#2670)
- props: bump ver to 0.27.0
- render: move lastFrameDamage to CMonitor
- render: resize subsurfaces with size resizes
- renderer: damage decos on damageWindow
- screencopy: send original damage, avoid extents
- shader: init uniforms to -1
- shader: remove useless comment
- shadow: drop useless damageEntire()
- toplevelexport: ignore defunct windows
- typo (#2643)
- window: recalc on deco remove
- xwayland: disconnect events on destroy
- xwayland: remove spaces from output names
- xwayland: send zero scaling to xwayland if enabled
- zoom: multiply by scale only on mouseZoomUseMouse (#2495)
Special Thanks
Special thanks as usual to those chads for donating me some moolah:
- Lipt0nas
- speedboat
- pulsar256
- Sinkerine
- hi im brown
- jsw
- meeri
- Ary Kleinerman
- Guido Panebianco
- Spearhead
- Amadeus
- spikespaz
- sbatial
- kamui
- Neo
- dano
MRs
- [hyprctl] Expose the special workspace id and name of the monitor by @15cm in #2392
- Update ISSUE_GUIDELINES.md faq link to the wiki by @asdfer-1234 in #2424
- feat: add ipc set title window event by @cyrinux in #2419
- Make movetoworkspace register previous workspace by @alyanser in #2436
- Fix fractional scale updates in some cases by @fberg in #2447
- chore: fix typos by @n3oney in #2463
- main: fix segfault when -c is given with no other arguments by @eriedaberrie in #2470
- feat: add lockactivegroup dispatcher by @memchr in #2478
- calculate zoom_center based on monitor scale by @nik012003 in #2482
- zoom: multiply by scale only on mouseZoomUseMouse by @nik012003 in #2495
- Allow setting alpha value for ignorezero layer rule by @end-4 in #2477
- feat: add variable to customize locked group border color by @memchr in #2507
- screenshader: fix uniform variable checks by @JManch in #2513
- Implement pass binds by @outfoxxed in #2503
- Fix crash when screen size is 0x0 by @shemig in #2523
- fix revision getting updated to the previous one, not current by @solopasha in #2524
- Partial revert of Commit 302ec13: by @shemig in #2539
- Reloads dynamic window rules by @MightyPlaza in #2585
- Reloads animated decoration values set on window rules by @MightyPlaza in #2594
- groupbar fixes by @MightyPlaza in #2630
- lockgroups fix by @MightyPlaza in #2636
- rotated and transformed screenshot fix by @MightyPlaza in #2640
- fix typo by @MightyPlaza in #2643
- Nix CI: split inputs and wlroots updating by @fufexan in #2645
- Close socket2 client descriptor on hangup by @nexec in #2654
- Avoid passing unix socket descriptors to children by @nexec in #2656
- eventmanager: drop obsoleted ignore events flag by @nexec in #2660
- Cleanup compositor deadcode by @nexec in #2657
- Xdg config home support by @edyounis in #2047
- Reuse monitor IDs, and use minimum available monitor ID for next monitor by @zjeffer in #2666
- monitor desc support by @MightyPlaza in #2670
- monitor desc default workspace by @MightyPlaza in #2673
- monitor desc default workspace but working now by @MightyPlaza in #2678
- Add support for smart splitting by @DanielAdolfsson in #2676
- Fix new LAYER_TOP layer surface rendering above fullscreen windows by @zakk4223 in #2686
New Contributors
- @15cm made their first contribution in #2392
- @asdfer-1234 made their first contribution in #2424
- @fberg made their first contribution in #2447
- @n3oney made their first contribution in #2463
- @memchr made their first contribution in #2478
- @nik012003 made their first contribution in #2482
- @end-4 made their first contribution in #2477
- @JManch made their first contribution in #2513
- @shemig made their first contribution in #2523
- @MightyPlaza made their first contribution in #2585
- @nexec made their first contribution in #2654
- @edyounis made their first contribution in #2047
- @zjeffer made their first contribution in #2666
- @DanielAdolfsson made their first contribution in #2676
- @zakk4223 made their first contribution in #2686
Full Changelog: v0.26.0...v0.27.0