Skip to content

Releases: hyprwm/Hyprland

v0.56.0

Choose a tag to compare

@vaxerski vaxerski released this 20 Jul 08:36
36b2e0c

A big new release with tons of features and fixes, brought to you by the Hyprland Corp.

No breaking changes! :)

New features:

  • algo/master: add an option to focus master when window is closed (#14306) by @ArchSav
  • algo/scrolling: add inhibit_scroll dispatch for scrolling algorithm (#13955) by @erstarr
  • algo/scrolling: add a "fit expand" layout message (#14761) by @LichtMarv
  • algo/scrolling: add new fit_into_view layout msg (#14991) by @erstarr
  • cm/icc: add Primaries to ICC-generated SImageDescription (#15227) by @GamingLiamStudios
  • config/lua: add a change_id workspace API (#15298) by @vaxerski
  • config/lua: add get_loaded_plugins (#14582) by @vaxerski
  • config/lua: add hl.clear_crashed_lockscreen() and fix tty instructions (#15299) by @vaxerski
  • config/lua: add is_key_down and a key event (#14779) by @zacoons
  • config/lua: add lua-driven custom live gestures (#15393) by @vaxerski
  • config/lua: add physicalWidth and physicalHeight to lua's Monitor (#14657) by @leiserfg
  • config/propRefresher: add capability to execute scheduled prop refresh immediately with lua helper function, add event for prop refresh (#14990) by @erstarr
  • crashreporter: fix SIGSEGV on dladdr1 failure (#15352) by @oclaw
  • decoration/glow: add gradient and angle animation (#15208) by @Undeadamien
  • decoration/shadow: add gradient and angle animation (#14809) by @Undeadamien
  • desktop/windowRule: add no_auto_hdr window rule (#14694) by @fxzzi
  • desktop/windowRule: add stableid: window selector (#14984) by @LRitzdorf
  • desktop/windowRule: add a suppressevent for X11 configure requests (#13313) by @lichie567
  • desktop/windowrule: add silent option to monitor effect (#14357) by @ArchSav
  • event/bus: add specialActive event to workspace (#14971) by @vaxerski
  • groups: add groupbar disable_when_only option (#15009) by @feelamee
  • groups: sync window monitor/workspace when added to a group (#14478) by @andresilva
  • hyprctl: add config full-reload for performing a ground-up reload (#14748) by @vaxerski
  • hyprctl: add interactive Lua REPL mode (#15043) by @Dregu
  • hyprctl: add onCreatedEmpty field to workspacerules dispatcher data (#14826) by @ikalco
  • hyprtester: add -t option for running specific tests (#14846) by @ArchSav
  • input/tablet: add TabletTool config options for eraser button and tool pressure (#14110) by @marcello505
  • lua/monitor: add set_ functions for raw workspace management (#14875) by @vaxerski
  • lua/objects: add cm and reserved properties to monitor (#14523) by @ndavd
  • meta/lua: add missing notification text field and make timeout required (#14665) by @atomicptr
  • meta/lua: add proper lua stub types to the general config (#14993) by @JustLinuxUser
  • plugins: add api for registering and dispatching events (#14734) by @zacoons
  • protocols/xdg-shell: add support for xdg interactive drags (#15343) by @vaxerski
  • renderer: add a motion blur option to windows (#14911) by @vaxerski
  • renderer: add tonemap settings (#14903) by @UjinT34
  • renderer: add wrapping options to SRenderData (#14666) by @zacoons
  • socket2: add back changefloatingmode and togglegroup events (#14089) by @ErrorNoInternet
  • splashes: add 5th comp winner's splash

Fixes:

  • Minor fixes today (#14401) by @vaxerski
  • Tests/scroll: fix window hiding test passing inconsistently (#15384) by @erstarr
  • algo/dwindle: fix moving windows across a split (#15079) by @LRitzdorf
  • algo/master: fix drag-swap with two tiled windows (#14974) by @karaolidis
  • animation: refactor manager, fixup desktopAnimationManager, clean up code (#15302) by @vaxerski
  • binds/submap: fix mouse binds inside submaps (#15060) by @jestemleonard
  • binds/submap: fix submap enter bind == bind inside submap (#14856) by @bendi-github
  • ci: fix codeownersplus (#15383) by @vaxerski
  • AGENTS: add agents.md (#14835) by @vaxerski
  • CI/Arch: add libheif dep
  • code: fix clang-format
  • compositor: fix monitor re-enabling on hotplug when dpms is off (#14818) by @samsyu518
  • compositor: fix render unfocused for subsurfaces (#14718) by @UjinT34
  • config/actions: fix null derefs in pin dispatcher (#14914) by @DxCx
  • config/lua: add hl.clear_crashed_lockscreen() and fix tty instructions (#15299) by @vaxerski
  • config/lua: fix layout ctx checking the wrong argument (#15061) by @vaxerski
  • config/lua: fix missing event from know events lists (#15232) by @nath1416
  • config: fix VRR not applying on runtime change (#14744) by @BlueManCZ
  • config: fix cycle_next using nonexist layoutmsg for prev (#15396) by @Dregu
  • config: fix decoration values to refresh on runtime eval/keyword change (#14590) by @BlueManCZ
  • config: fix description matching for default workspaces (#15074) by @vaxerski
  • config: fix initial workspace tracking (#15395) by @gulafaran
  • config: fix plugin variables with dashes (#14379) by @VirtCode
  • config: fix slide animation direction param (#15240) by @Dregu
  • core: fix --verify-config crash (#15418) by @gulafaran
  • core: fix a few fd leaks (#14870) by @vaxerski
  • core: refactor fullscreen logic, improve maintainability and add a lot of tests (#14705) by @erstarr
  • core: various SHM handling fixes (#15315) by @vaxerski
  • crashreporter: fix SIGSEGV on dladdr1 failure (#15352) by @oclaw
  • decoration/glow: fix visibility when no decorate is set (#14602) by @vaxerski
  • desktop/groups: fix crash on dissolution (#15135) by @vaxerski
  • desktop/popup: fix crash on destroy (#15416) by @gulafaran
  • desktop/popup: fix reposition artifacts (#14820) by @gulafaran
  • desktop/popup: fix subsurface scaling (#14936) by @Brandtweary
  • desktop/view: fix IView virtual inheritance and erase_if ptr (#15421) by @gulafaran
  • desktop/window: fix crash on requested workspace not having a mon (#15234) by @vaxerski
  • desktop/window: fix unwanted reswallow (#12993) by @tomben13
  • desktop/window: fix wrong scale being applied after workspace rules (#14832) by @awused
  • desktopAnimation: fix crash in startAnimation on ws with no parent (#15224) by @vaxerski
  • dispatchers: fix fullscreen movefocus regression (#15226) by @MightyPlaza
  • frame: fix frame scheduling being skipped or one vblank off (#15404) by @gulafaran
  • fullscreen: fix some bars remaining invisible when unfullscreening (#15370) by @erstarr
  • gestures: fix live cursorZoom anchoring to a mid-animation value (#14996) by @barrettruth
  • gestures: fix toggle cursorZoom sharing a single on/off flag (#14998) by @barrettruth
  • glframebuffer: fix spurious incomplete framebuffer errors (#15380) by @gulafaran
  • groups: fix border color for locked groups (#15015) by @EnzoBarizza
  • hyprtester: Fix some failing tests terminating early (#14969) by @kolayne
  • hyprtester: misc bug fixes & refactorings (#15025) by @kolayne
  • i18n: completed italian translation and fixed some previous italian translation inaccuracies (#14763) by @Lucad44
  • input/dnd: fix touch-driven drag-and-drop (#15077) by @hjanuschka
  • input/window: fix dragging pointer-locked and fullscreen game windows (gamescope) (#15165) by @ZStud
  • input: fix inverted scrollwheel direction in keybinds (#14749) by @zjeffer
  • input: fix missing a pointer frame after absolute pointer motion (#15003) by @seven-mile
  • input: fix wheel scroll events from virtual pointers being dropped (#15319) by @Nicholas-Arthur-Cook
  • internal: fix bugs revealed by hu update
  • internal: fix filename string not being computed at compile time in RASSERT and GLCALL macros (#14972) by @danielkrupinski
  • internal: fix more fd leaks (#15225) by @vaxerski
  • internal: fix null deref in setWindowFullscreenInternal when fullscreen state stale (#14725) by @neonetizen
  • internal: fix tokens for xdg-desktop-portals (#15433) by @gulafaran
  • internal: minor spelling fixes (#15199) by @bjoernab
  • internal: modernize truthy(fix possible UB) (#15217) by @b1tflyyyy
  • jeremy: fix auto-generating hyprlang instead of lua config file by default (#14944) by @LionHeartP
  • keybinds: fix nested submaps and resets (#15213) by @ItsOhen
  • layout/WindowTarget: fix crash when toggling float on oversized windows (#14587) by @floresce
  • layout/monocle: fix w[tv1] workspace rule not working on monocle layout (#15382) by @erstarr
  • layout/scrolling: fix prop refresh triggering hard input (#14594) by @erstarr
  • layout/target: fix unmanaged configure loops in x11 (#15336) by @vaxerski
  • meta/lua: fix capture of lua events (#15071) by @SteinGaming
  • monitor: refactor inheritance, expand query, add unit tests for position and query (#15073) by @vaxerski
  • monitor: fix cursor default_monitor option (#15322) by @lichie567
  • monitor: fix special fade state update (#15316) by @vaxerski
  • monitor: fix top-layer bar visibility on workspace change with scrolling-layout fullscreen (#14425) by @zerbiniandrea
  • nix/tests: fix deprecation warning
  • pointer-warp: fix forgetting enter serial (#15462) by @Dregu
  • pointer: fix cursor bounds not updating on monitor layout changes (#14393) by @x1h0
  • pointer: fix two stale cursor images clearings (#15376) by @gulafaran
  • protocols/foreignToplevel: fix class and title reporting on map and afterwards (#15037) by @vaxerski
  • protocols/grab: fix refocus to unreachable windows (#14555) by @gusjengis
  • protocols/pointerWarp: fix crash when warp is on a non interactive surf (#15021) by @vaxerski
  • protocols: Fix crash when creating inert workspace resource (#15303) by @PlasmaPower
  • protocols: fix SHM cursor partial damage copy (#15399) by @gulafaran
  • protocols: fix protocol null dereference paths (#15275)
  • render/cm: fix premult in shaders (#14403) by @vaxerski
  • render/gl/framebuffer: fix swizzle comparisons (#14481) by @vaxerski
  • renderer/cm: fix blur clipping with HDR (#15371) by @ryanpholt
  • renderer: fix SEGV on monitor disconnect (#15048) by @neonetizen
  • renderer: fix `cursor:z...
Read more

v0.55.4

Choose a tag to compare

@vaxerski vaxerski released this 11 Jun 17:10

Another small round of patches on top of 0.55.3.

Fixes backported

  • config/lua: fix layout ctx checking the wrong argument (#15061)
  • desktop/popup: fix subsurface scaling (#14936)
  • gestures: fix live cursorZoom anchoring to a mid-animation value (#14996)
  • gestures: fix toggle cursorZoom sharing a single on/off flag (#14998)
  • groups: fix border color for locked groups (#15015)
  • protocols/foreignToplevel: fix class and title reporting on map and afterwards (#15037)
  • protocols/pointerWarp: fix crash when warp is on a non interactive surf (#15021)
  • renderer: fix SEGV on monitor disconnect (#15048)
  • gestures: clamp toggle cursorZoom like mult and live (#14997)
  • gestures: configure client to final size on fullscreen/float gesture completion (#14981)

Special Thanks

As always, special thanks to these people / companies for supporting Hyprland's continued development:

Sponsors

Diamond

37Signals

Gold

Framework, Butterfly

Donators

Top Supporters:

Tonao Paneguini, Semtex, soy_3l.beantser, Seishin, Nox Æterna, Illyan, Snorezor, Bonsai, Joshua Weaver, ExBhal, DHH, Mikko_Nyman, Kay, iain, TyrHeimdal, miget.com, alexmanman5, Hunter Wesson, --, RaymondLC92, Theory_Lukas, Brandon Wang, Insprill, lzieniew, 3RM, johndoe42, Jas Singh, RayJameson, MadCatX, Xoores, d, Ammar Hossain, Ki☆, inittux111, Arkevius, John Shelburne, DeWattaUnk, ari-cake, gfunnymoney, alukortti, taigrr

New Monthly Supporters:

tubid2wenty, Uros Cotman, yafantik, Guy, goblin_engineer, Julius John Puno, Peter Buijs, mb, StellaBuckley, haikuolin, Antibaddy, sludge10123, C Money, Lipski, KampotKaca, Kazuhide Takahashi, Skeptomai, bombadurelli, Rebellen, Álan, StreamCyper, taras, Yury, Sherab, Filinto Delgado, Taddelladius

One-time Donators:

Quuton, Selvan, Tyler Adams, tonis, Sam, Dimitrios Liappis, Chivtar, Eric, aponsasan888, bkode, LonestarF1, Chris, Dogmatic Polack, Larry, maxx, MonolithImmortal, edrix, I like GameNative, take my money., nyxloom, Frederic Toemboel, Schmendiey, himes, brandonia, Xphelus, New user, Miguel Flores-Acton, R3dGh0st, Glen, Vitor Moura GUEDES, Anersyum, le_04, Dan, AT, chorr, Awesome, IdeaSpring, Jacobrale, anonymous, Elias Griffin, w00z4, Marcus Edvardsson, Gerhard, Bashmaks, Benjaneb, R4dicalEdward, Matýsek ^^, Michael, Gene Raymond, naivesheep, Neginja, anarchuser, Uta, Francois KERISIT, ay4, Lorenzo santacreu, Gitznik, Jure S, Oliver, Pipes, Mein, ironick, Nlight, Pfoid, DasCleverle, Jaf Endee, DIEBUSTER, senorBeard, alex, Mike, luxxa, JasonPettys, One, Daniel, Sven Eppler, L3rdy, Ilunn, Thorff, XurxoMF, Wonkhester, Brian, Doc O, Mortja, Spook, Miguel Cordero Collar, bennyzen, deah, Sean, Higor, nanea808, Torsten Schieber, I3lack5hield, Kevin Steffer, Zarenno, vfosterm, Nikola, EGB, Dietmar, KilahDentist, Wilf Lin, Rad, Yuza, Supporter, nooob, esseonline, Naresh, darquill, BrnPrs, Pani, BYK, Amaury, nythix, Mika, Patriarch, Gambit, GoatCedric, Adam, MirasM, bl4ckb1rd, Loon, KevOlek, AsciiWolf, Brian Barrow, Anon, Kilian, Cristian M., abhinavmishra094, Dejv78, LinoDB, Trofim, Konstantin, JoaquinCamposPlaza(Ximo), Gabo, Phil, dev2and0m, Neil Brown, zarilion, JavierArias(Javi), Thank you, Mystrasun, Skrazzo, MeguminLoli, revitalist, barcellos-pedro, Juh, Goldie, benabrig, mynus, Daniel Zudel, Grant, Jacob Felknor, Noah, e033x, Nick, Niklas, mkami, Slippy, joenu, Oleksandr, t.i.m., Joss001, M4CETO, Nighty, Donater, David N, Cameron, Ekoban, Kieran, brotiii, Doug, Hypruser#0224975, Shadesofastar, sonicbhoc, GKL, Damien, João Seixas, mothmashine, James Freiwirth, Mek, Krizzkrozz, Panzer, mika.dev, Franky Valley, Sycho sMILEz, Roy, Amundis, willibenmula ❤️, Justin, marvelousIT, pablo, Alex, Ryan, cito, Juergen, Eric Koslow, valerius21, jfk, Andrejs, tyforupdate, skwrl, DaintyFox

Full Changelog: v0.55.3...v0.55.4

v0.55.3

Choose a tag to compare

@vaxerski vaxerski released this 07 Jun 10:36

A small (or maybe not that small) patch release backporting some fixes from main onto 0.55.2.

Fixes backported

  • hyprctl: add config full-reload for performing a ground-up reload (#14748)
  • meta/lua: add missing notification text field and make timeout required (#14665)
  • binds/submap: fix submap enter bind == bind inside submap (#14856)
  • compositor: fix monitor re-enabling on hotplug when dpms is off (#14818)
  • compositor: fix render unfocused for subsurfaces (#14718)
  • config/actions: fix null derefs in pin dispatcher (#14914)
  • config: fix VRR not applying on runtime change (#14744)
  • config: fix decoration values to refresh on runtime eval/keyword change (#14590)
  • core: fix a few fd leaks (#14870)
  • decoration/glow: fix visibility when no decorate is set (#14602)
  • desktop/popup: fix reposition artifacts (#14820)
  • desktop/window: fix wrong scale being applied after workspace rules (#14832)
  • internal: fix null deref in setWindowFullscreenInternal when fullscreen state stale (#14725)
  • jeremy: fix auto-generating hyprlang instead of lua config file by default (#14944)
  • renderer: fix cursor:zoom_rigid being ignored with detached camera (#14995)
  • renderer: fix screenshader with fp16 (#14918)
  • renderer: minor shader fixes (#14584)
  • screencopy: fix screenshare copyfb pending frames (#14837)
  • xwayland: fix ICCCM synthetic event comparison (#14827)
  • algo/master: guard target in remove (#14756)
  • compositor: give preference to same-workspace windows in getWindowInDirection (#14941)
  • config/lua: improve error handle-ability with Lua require (#14937)
  • config/lua: report errors better without check* (#14695)
  • config/monitor: refresh splash texture on monitor reload (#14632)
  • config/propRefresher: schedule frames on screen shader refresh (#14874)
  • desktop/rule: optimize mapping rule properties to strings and engines (#14945)
  • desktop/window: allow focus while held to non-OR X11 windows (#14821)
  • input: aggregate modifier states from all keyboards on focus enter (#14633)
  • internal: replace O_CLOEXEC with FD_CLOEXEC for file descriptor flags (#14909)
  • keybinds: set a fallback releasePending flag for special lua binds (#14600)
  • keybinds: store hit binds first, then execute callbacks (#14743)
  • layersurface: inform layer surfaces of scale changes (#14771)
  • layout/dragController: reset floating offset on ended drag (#14940)
  • layout/scrolling: check if cursor overlaps with target in focusOnInput (#14687)
  • main: gain SCHED_RR and drop CAP_SYS_NICE earlier (#14897)
  • meta/lua: Gestures can accept a lua function (#14649)
  • monitor: move floating windows with layout changes (#14928)
  • monitor: retry transient mode selection failures (#14927)
  • protocols/fractional-scale: track if scale is known and send scales eagerly when known (#14798)
  • protocols: bump xdg-decoration to rev 2 (#14869)
  • renderer/gl: release failed fence syncs (#14956)
  • renderer/gl: skip invalidation clear on empty damage (#14921)
  • renderer: reduce per-frame heap allocations (#14932)
  • renderer: send frame callbacks on presented if no change (#14849)
  • texture: cache G and A swizzle channels aswell (#14605)

Special Thanks

As always, special thanks to these people / companies for supporting Hyprland's continued development:

Sponsors

Diamond

37Signals

Gold

Framework, Butterfly

Donators

Top Supporters:

Tonao Paneguini, Semtex, soy_3l.beantser, Seishin, Nox Æterna, Illyan, Snorezor, Bonsai, Joshua Weaver, ExBhal, DHH, Mikko_Nyman, Kay, iain, TyrHeimdal, miget.com, alexmanman5, Hunter Wesson, --, RaymondLC92, Theory_Lukas, Brandon Wang, Insprill, lzieniew, 3RM, johndoe42, Jas Singh, RayJameson, MadCatX, Xoores, d, Ammar Hossain, Ki☆, inittux111, Arkevius, John Shelburne, DeWattaUnk, ari-cake, gfunnymoney, alukortti, taigrr

New Monthly Supporters:

tubid2wenty, Uros Cotman, yafantik, Guy, goblin_engineer, Julius John Puno, Peter Buijs, mb, StellaBuckley, haikuolin, Antibaddy, sludge10123, C Money, Lipski, KampotKaca, Kazuhide Takahashi, Skeptomai, bombadurelli, Rebellen, Álan, StreamCyper, taras, Yury, Sherab, Filinto Delgado, Taddelladius

One-time Donators:

Quuton, Selvan, Tyler Adams, tonis, Sam, Dimitrios Liappis, Chivtar, Eric, aponsasan888, bkode, LonestarF1, Chris, Dogmatic Polack, Larry, maxx, MonolithImmortal, edrix, I like GameNative, take my money., nyxloom, Frederic Toemboel, Schmendiey, himes, brandonia, Xphelus, New user, Miguel Flores-Acton, R3dGh0st, Glen, Vitor Moura GUEDES, Anersyum, le_04, Dan, AT, chorr, Awesome, IdeaSpring, Jacobrale, anonymous, Elias Griffin, w00z4, Marcus Edvardsson, Gerhard, Bashmaks, Benjaneb, R4dicalEdward, Matýsek ^^, Michael, Gene Raymond, naivesheep, Neginja, anarchuser, Uta, Francois KERISIT, ay4, Lorenzo santacreu, Gitznik, Jure S, Oliver, Pipes, Mein, ironick, Nlight, Pfoid, DasCleverle, Jaf Endee, DIEBUSTER, senorBeard, alex, Mike, luxxa, JasonPettys, One, Daniel, Sven Eppler, L3rdy, Ilunn, Thorff, XurxoMF, Wonkhester, Brian, Doc O, Mortja, Spook, Miguel Cordero Collar, bennyzen, deah, Sean, Higor, nanea808, Torsten Schieber, I3lack5hield, Kevin Steffer, Zarenno, vfosterm, Nikola, EGB, Dietmar, KilahDentist, Wilf Lin, Rad, Yuza, Supporter, nooob, esseonline, Naresh, darquill, BrnPrs, Pani, BYK, Amaury, nythix, Mika, Patriarch, Gambit, GoatCedric, Adam, MirasM, bl4ckb1rd, Loon, KevOlek, AsciiWolf, Brian Barrow, Anon, Kilian, Cristian M., abhinavmishra094, Dejv78, LinoDB, Trofim, Konstantin, JoaquinCamposPlaza(Ximo), Gabo, Phil, dev2and0m, Neil Brown, zarilion, JavierArias(Javi), Thank you, Mystrasun, Skrazzo, MeguminLoli, revitalist, barcellos-pedro, Juh, Goldie, benabrig, mynus, Daniel Zudel, Grant, Jacob Felknor, Noah, e033x, Nick, Niklas, mkami, Slippy, joenu, Oleksandr, t.i.m., Joss001, M4CETO, Nighty, Donater, David N, Cameron, Ekoban, Kieran, brotiii, Doug, Hypruser#0224975, Shadesofastar, sonicbhoc, GKL, Damien, João Seixas, mothmashine, James Freiwirth, Mek, Krizzkrozz, Panzer, mika.dev, Franky Valley, Sycho sMILEz, Roy, Amundis, willibenmula ❤️, Justin, marvelousIT, pablo, Alex, Ryan, cito, Juergen, Eric Koslow, valerius21, jfk, Andrejs, tyforupdate, skwrl, DaintyFox

Full Changelog: v0.55.2...v0.55.3

v0.55.2

Choose a tag to compare

@vaxerski vaxerski released this 16 May 13:01
39d7e20

Another round of minor fixes backported from main onto 0.55.1.

Fixes backported

  • layout/WindowTarget: fix crash when toggling float on oversized windows (#14587)
  • protocols/grab: fix refocus to unreachable windows (#14555)
  • renderer: fix border cm for mirroring (#14574)
  • config/lua: revert "restrict package module loading to lua-only modules (#14526)" (#14533)
  • config/lua: use ref for workspace destroy events (#14562)
  • config/values: default no_hardware_cursors to 2 (#14575)
  • xwayland: lock focus while dragging an xwayland window (#12051)

Special Thanks

As always, special thanks to these people / companies for supporting Hyprland's continued development:

Sponsors

Diamond

37Signals

Gold

Framework, Butterfly

Donators

Top Supporters:

Tonao Paneguini, Semtex, soy_3l.beantser, Seishin, Nox Æterna, Illyan, Snorezor, Bonsai, Joshua Weaver, ExBhal, DHH, Mikko_Nyman, Kay, iain, TyrHeimdal, miget.com, alexmanman5, Hunter Wesson, --, RaymondLC92, Theory_Lukas, Brandon Wang, Insprill, lzieniew, 3RM, johndoe42, Jas Singh, RayJameson, MadCatX, Xoores, d, Ammar Hossain, Ki☆, inittux111, Arkevius, John Shelburne, DeWattaUnk, ari-cake, gfunnymoney, alukortti, taigrr

New Monthly Supporters:

tubid2wenty, Uros Cotman, yafantik, Guy, goblin_engineer, Julius John Puno, Peter Buijs, mb, StellaBuckley, haikuolin, Antibaddy, sludge10123, C Money, Lipski, KampotKaca, Kazuhide Takahashi, Skeptomai, bombadurelli, Rebellen, Álan, StreamCyper, taras, Yury, Sherab, Filinto Delgado, Taddelladius

One-time Donators:

Quuton, Selvan, Tyler Adams, tonis, Sam, Dimitrios Liappis, Chivtar, Eric, aponsasan888, bkode, LonestarF1, Chris, Dogmatic Polack, Larry, maxx, MonolithImmortal, edrix, I like GameNative, take my money., nyxloom, Frederic Toemboel, Schmendiey, himes, brandonia, Xphelus, New user, Miguel Flores-Acton, R3dGh0st, Glen, Vitor Moura GUEDES, Anersyum, le_04, Dan, AT, chorr, Awesome, IdeaSpring, Jacobrale, anonymous, Elias Griffin, w00z4, Marcus Edvardsson, Gerhard, Bashmaks, Benjaneb, R4dicalEdward, Matýsek ^^, Michael, Gene Raymond, naivesheep, Neginja, anarchuser, Uta, Francois KERISIT, ay4, Lorenzo santacreu, Gitznik, Jure S, Oliver, Pipes, Mein, ironick, Nlight, Pfoid, DasCleverle, Jaf Endee, DIEBUSTER, senorBeard, alex, Mike, luxxa, JasonPettys, One, Daniel, Sven Eppler, L3rdy, Ilunn, Thorff, XurxoMF, Wonkhester, Brian, Doc O, Mortja, Spook, Miguel Cordero Collar, bennyzen, deah, Sean, Higor, nanea808, Torsten Schieber, I3lack5hield, Kevin Steffer, Zarenno, vfosterm, Nikola, EGB, Dietmar, KilahDentist, Wilf Lin, Rad, Yuza, Supporter, nooob, esseonline, Naresh, darquill, BrnPrs, Pani, BYK, Amaury, nythix, Mika, Patriarch, Gambit, GoatCedric, Adam, MirasM, bl4ckb1rd, Loon, KevOlek, AsciiWolf, Brian Barrow, Anon, Kilian, Cristian M., abhinavmishra094, Dejv78, LinoDB, Trofim, Konstantin, JoaquinCamposPlaza(Ximo), Gabo, Phil, dev2and0m, Neil Brown, zarilion, JavierArias(Javi), Thank you, Mystrasun, Skrazzo, MeguminLoli, revitalist, barcellos-pedro, Juh, Goldie, benabrig, mynus, Daniel Zudel, Grant, Jacob Felknor, Noah, e033x, Nick, Niklas, mkami, Slippy, joenu, Oleksandr, t.i.m., Joss001, M4CETO, Nighty, Donater, David N, Cameron, Ekoban, Kieran, brotiii, Doug, Hypruser#0224975, Shadesofastar, sonicbhoc, GKL, Damien, João Seixas, mothmashine, James Freiwirth, Mek, Krizzkrozz, Panzer, mika.dev, Franky Valley, Sycho sMILEz, Roy, Amundis, willibenmula ❤️, Justin, marvelousIT, pablo, Alex, Ryan, cito, Juergen, Eric Koslow, valerius21, jfk, Andrejs, tyforupdate, skwrl, DaintyFox

Full Changelog: v0.55.1...v0.55.2

v0.55.1

Choose a tag to compare

@vaxerski vaxerski released this 13 May 22:56

This is a standard patch release backporting some fixes from main onto 0.55.0.

Fixes backported

  • groups: sync window monitor/workspace when added to a group (#14478)
  • compositor: fix invalid capture in vectorToWindowUnified
  • config/legacy: fix bad format log in handleSource
  • config: fix plugin variables with dashes (#14379)
  • monitor: fix top-layer bar visibility on workspace change with scrolling-layout fullscreen (#14425)
  • pointer: fix cursor bounds not updating on monitor layout changes (#14393)
  • render/cm: fix premult in shaders (#14403)
  • render/gl/framebuffer: fix swizzle comparisons (#14481)
  • algo/floating: do not alter pinned windows' state on ws move (#14513)
  • config/lua: allow re-enabling monitors (#14447)
  • config/lua: restrict package module loading to lua-only modules (#14526)
  • config/propRefresher: avoid crash if event loop manager isn't loaded (#14423)
  • gestures/scroll_move: guard col to avoid crash (#14394)
  • helpers: include numbers header (#14406)
  • input: properly make input-blocked windows inaccessible (#14517)
  • meta/lua-stubs: overwrite scale to accept float and int (#14461)
  • meta: update lua stubs for permissions (#14400)
  • monitor: don't modeset on reserved changes (#14397)
  • monitor: don't set back to 8 bit when applying rules (#14404)
  • renderer: set proper image description in snapshots (#14398)

Special Thanks

As always, special thanks to these people / companies for supporting Hyprland's continued development:

Sponsors

Diamond

37Signals

Gold

Framework, Butterfly

Donators

Top Supporters:

Tonao Paneguini, Semtex, soy_3l.beantser, Seishin, Nox Æterna, Illyan, Snorezor, Bonsai, Joshua Weaver, ExBhal, DHH, Mikko_Nyman, Kay, iain, TyrHeimdal, miget.com, alexmanman5, Hunter Wesson, --, RaymondLC92, Theory_Lukas, Brandon Wang, Insprill, lzieniew, 3RM, johndoe42, Jas Singh, RayJameson, MadCatX, Xoores, d, Ammar Hossain, Ki☆, inittux111, Arkevius, John Shelburne, DeWattaUnk, ari-cake, gfunnymoney, alukortti, taigrr

New Monthly Supporters:

tubid2wenty, Uros Cotman, yafantik, Guy, goblin_engineer, Julius John Puno, Peter Buijs, mb, StellaBuckley, haikuolin, Antibaddy, sludge10123, C Money, Lipski, KampotKaca, Kazuhide Takahashi, Skeptomai, bombadurelli, Rebellen, Álan, StreamCyper, taras, Yury, Sherab, Filinto Delgado, Taddelladius

One-time Donators:

Quuton, Selvan, Tyler Adams, tonis, Sam, Dimitrios Liappis, Chivtar, Eric, aponsasan888, bkode, LonestarF1, Chris, Dogmatic Polack, Larry, maxx, MonolithImmortal, edrix, I like GameNative, take my money., nyxloom, Frederic Toemboel, Schmendiey, himes, brandonia, Xphelus, New user, Miguel Flores-Acton, R3dGh0st, Glen, Vitor Moura GUEDES, Anersyum, le_04, Dan, AT, chorr, Awesome, IdeaSpring, Jacobrale, anonymous, Elias Griffin, w00z4, Marcus Edvardsson, Gerhard, Bashmaks, Benjaneb, R4dicalEdward, Matýsek ^^, Michael, Gene Raymond, naivesheep, Neginja, anarchuser, Uta, Francois KERISIT, ay4, Lorenzo santacreu, Gitznik, Jure S, Oliver, Pipes, Mein, ironick, Nlight, Pfoid, DasCleverle, Jaf Endee, DIEBUSTER, senorBeard, alex, Mike, luxxa, JasonPettys, One, Daniel, Sven Eppler, L3rdy, Ilunn, Thorff, XurxoMF, Wonkhester, Brian, Doc O, Mortja, Spook, Miguel Cordero Collar, bennyzen, deah, Sean, Higor, nanea808, Torsten Schieber, I3lack5hield, Kevin Steffer, Zarenno, vfosterm, Nikola, EGB, Dietmar, KilahDentist, Wilf Lin, Rad, Yuza, Supporter, nooob, esseonline, Naresh, darquill, BrnPrs, Pani, BYK, Amaury, nythix, Mika, Patriarch, Gambit, GoatCedric, Adam, MirasM, bl4ckb1rd, Loon, KevOlek, AsciiWolf, Brian Barrow, Anon, Kilian, Cristian M., abhinavmishra094, Dejv78, LinoDB, Trofim, Konstantin, JoaquinCamposPlaza(Ximo), Gabo, Phil, dev2and0m, Neil Brown, zarilion, JavierArias(Javi), Thank you, Mystrasun, Skrazzo, MeguminLoli, revitalist, barcellos-pedro, Juh, Goldie, benabrig, mynus, Daniel Zudel, Grant, Jacob Felknor, Noah, e033x, Nick, Niklas, mkami, Slippy, joenu, Oleksandr, t.i.m., Joss001, M4CETO, Nighty, Donater, David N, Cameron, Ekoban, Kieran, brotiii, Doug, Hypruser#0224975, Shadesofastar, sonicbhoc, GKL, Damien, João Seixas, mothmashine, James Freiwirth, Mek, Krizzkrozz, Panzer, mika.dev, Franky Valley, Sycho sMILEz, Roy, Amundis, willibenmula ❤️, Justin, marvelousIT, pablo, Alex, Ryan, cito, Juergen, Eric Koslow, valerius21, jfk, Andrejs, tyforupdate, skwrl, DaintyFox

Full Changelog: v0.55.0...v0.55.1

v0.55.0

Choose a tag to compare

@vaxerski vaxerski released this 09 May 13:41
af923e3

A massive update brought to you by the All Hyprland Corp!

Breaking changes

  • dwindle:pseudotile has been removed as it wasn't doing anything
  • decoration:shadow:ignore_window has been removed (defaults to enabled)
  • render:cm_fs_passthrough has been removed, should be automatic with render:cm_auto_hdr
  • misc:vfr moved to debug: as it's a debug variable that should not be changed in prod environments

New features:

  • algo/scroll: add center for centering the current col (#14059)
  • algo/scrolling: add config options for focus and swapcol wrapping (#13518)
  • algo/scrolling: add expel, consume, and consume_or_expel (#13869)
  • animations: add springs (#14171)
  • binds: add an auto_consuming flag (#13919)
  • config/lua: add ExpressionVec2, allow using a table for vec2 rules (#14197)
  • config/lua: add clear tag api (#14273)
  • config/lua: add noop
  • config/lua: add simple layout API (#14258)
  • config/workspacerule: add animation style (#13380)
  • config: add device tags (#13728)
  • debug-tools: add flame
  • desktop/window: add alpha container for alpha calculations
  • desktop/windowRule: add confine_pointer window rule (#13379)
  • desktop/windowRule: add parser switch for confine pointer (#14263)
  • dispatchers: add moveintoorcreategroup (#13325)
  • dwindle: add rotatesplit layoutmsg and tests (#13235)
  • gestures: add live pinch cursor zoom (#14049)
  • gestures: add scroll_move (#14063)
  • groups: add groupbar middle_click_close option (#14242)
  • hl.mata.lua: add string to NotificationOptions's icon param. (#14334)
  • hyprctl: add hw cursor flag
  • hyprland.pc.in: add src include flag
  • i18n: add Greek translations (#13865)
  • i18n: add Punjabi translations (#13807)
  • input: add device specific binds (#13073)
  • layerrules: add dynamically registered rules for plugins (#13331)
  • layout/windowTarget: add visualBox (#13626)
  • render/cm: add ICC profile pipeline (#12711)
  • renderer/deco: add glow decoration (#13862)
  • renderer: add a cm settings cache
  • window/rules: add scrolling_width (#13754)
  • windows/focus: add fallbacks when focussing workspaces (#14270)

Fixes:

  • config/descriptions: add missing desc entry
  • cmake: add -fno-omit-frame-pointer to debug
  • InputManager: add guards to confineToRegion to avoid issues (#14269)
  • algo/dwindle: add back splitratio (#13498)
  • algo/dwindle: fix precise mouse setting (#13678)
  • algo/master: fix crash after dpms (#13522)
  • algo/master: fix crash on null target in getNextTarget
  • algo/scroll: fix std::clamp assertion crash on resume from suspend (#13737)
  • algo/scroll: fix unsigned wrap (#13634)
  • algo/scrolling: fix offset on removeTarget (#13515)
  • algo/scrolling: fix rare crash
  • algo/scrolling: various scrolling view related bugfixes (#13974)
  • build: add glaze dependency with FetchContent fallback (#13666)
  • build: add format-check and format-fix Makefile targets (#13936)
  • build: fix build on gcc 16.x after #6b2c08d (#13429)
  • clang-tidy: fix duplicate entry in .clang-tidy (#14045)
  • cmake: fix permissions for directories by default
  • cmakelists: fixup errors failing build on arch ci (#14259)
  • compositor: fix floating input/visual z-order desync after fullscreen (#14015)
  • compositor: fix focus edge detection (#13425)
  • compositor: fix missing recheckWorkArea to prevent CReservedArea assert failure (#13590)
  • config/actions: fix misuse of ActionResult's error type (#14221)
  • config/legacy: fix crash on getConfigValue of plugin fns
  • config/legacy: fix missing fallbacks crashing device getters
  • config/lua: fix device bool int reads (#14313)
  • config/lua: fix dispatcher shapes to not be callable (#14268)
  • config/lua: fix unbind behavior (#14199)
  • config/lua: fix window object to selector logic
  • config/refresher: fix refreshing of cursor zooms (#14283)
  • config: fix crash in safe mode due to null Config::mgr() (#13855)
  • config: fix propRefresher to not run on first launch
  • config: fix safe mode config generation (#14024)
  • config: fix type confusion in getOption with complex types
  • core: fix i586 build (#13550)
  • deco/border: fix damage region
  • deco/border: fix damageEntire
  • desktop/group: fix movegroupwindow not following focus (#13426)
  • desktop/rule: fix matching for content type by str
  • desktop/rules: fix empty workspace handling (#13544)
  • desktop/rules: fix static rules and content type. (#13725)
  • desktop/view: fix SIGABRT in CWindow::onUnmap when monitor is expired (#14148)
  • desktop/window: fix floating windows being auto-grouped (#13475)
  • desktop/window: fix idealBB reserved (#13421)
  • desktop/windowRule: fix matching CONTENT (#13636)
  • desktop/workspace: fix visibility criteria matching (#14349)
  • example/hyprland.lua: fix wiki links for new stuff (#14172)
  • examples: fix missing permissions entry in lua example config (#14177)
  • groups: fix movewindoworgroup when moving from group to group (#14086)
  • hyprctl: fix bools in getoption
  • hyprctl: fix buffer overflowing writes to the socket
  • hyprctl: fix getoption with custom types (#14243)
  • hyprctl: fix invalid type cast
  • hyprctl: fix json output for the submap command (#13726)
  • hyprctl: fix lib64 pkgconfig for version-checking (#14051)
  • hyprctl: fix workspace dynamic effect reloading (#13537)
  • hyprpm: fix url sanitization in add
  • input: fix device configs for pointer devices
  • input: fix focus_on_close=2 (MRU) routing to cursor path instead of getNextCandidate (#13969)
  • input: fix the multimon touch fix (#13819)
  • input: fix touch monitor focus ordering (#14310)
  • input: fix touch screen focus on multi monitor (#13764)
  • internal: fix relative path header locations (#13650)
  • keybinds: fix keycode matching on lua (#14254)
  • keybinds: fix missing z-order update on floating toggle (#14100)
  • keybinds: fix wrong space assignment in pin (#14061)
  • keybinds: fixup changegroupactive
  • layershell: fix popup crash with nullptr mon (#13763)
  • layout/algo: fix swar on removing a target (#13427)
  • layout/groupTarget: fix crash on null space assignment (#13614)
  • layout/master: fix rollprev/rollnext focusing the wrong window (#14209)
  • layout/scroll: fix configuredWidths not setting properly on new workspaces (#13476)
  • layout/scrolling: fix edge detection in recalculate() (#14359)
  • layout/scrolling: fix size_t underflow in idxForHeight (#13465)
  • layout/windowTarget: fix size_limits_tiled (#13445)
  • layout: fix crash on monitor reconnect due to stale workspace state
  • layout: fix drag_threshold window snap regression (rebased for #12890) (#13140)
  • layout: fix null deref in focalPointForDir and moveInDirection (#13652)
  • layouts: fix crash on missed relayout updates (#13444)
  • meta/stubs: fix notification icon type (#14320)
  • misc: fix missing noreturn attribute for throwError (#13746)
  • monitor: fix centered floating windows off-screen in special workspace (#14203)
  • opengl/shadow: fix shadow offset rendering (#14156)
  • overridableVar: fix reassignment
  • pointer: fix hardware cursor rendering on rotated/flipped monitors (#13574)
  • propRefresher: fix misnamed value
  • protocols/compositor: fix presentFeedback being blocked
  • protocols/sessionLock: fix crash when monitor is gone during lock surface creation
  • protocols: fix image-copy-capture stop handling and remove non protocol errors (#13706)
  • render/pass: fix debug:pass rendering
  • render: fix SIGFPE in addWindowToRenderUnfocused when misc:render_unfocused_fps is 0 (#13973)
  • render: fix layer blur_popups ignoring ignore_alpha when blur is off (#13947)
  • renderer/groupbar: fix a group indicator rounding bug (#13975)
  • renderer/groupbar: fix gradients rendering (#13875)
  • renderer: Various CM fixes, part 8 of refactors (#13860)
  • renderer: fix blockBlurOptimization check (#13685)
  • renderer: fix crash on mirrored outputs needing recalc (#13534)
  • renderer: fix crash on null blur framebuffer during monitor disconnect
  • renderer: fix crash when shader path isn't a file (#13756)
  • renderer: fix crash with nullptr FBs (#13641)
  • renderer: fix decoration colors with linear FP16 (#14361)
  • renderer: fix sdr mod (#13630)
  • renderer: fix shadow CM calculations (#14364)
  • renderer: fix share window projection (#13695)
  • renderer: more FP16 fixes (#14070)
  • renderer: refactor part 7: api fixes (#13631)
  • renderer: small fixes in OpenGL.cpp and OpenGL.hpp (#13842)
  • screencopy: fix crash in screensharing toplevel with invalid handle (#13781)
  • screencopy: fix isOutputBeingSSd (#13586)
  • screencopy: fix minor crash (#13566)
  • screencopy: fix nullptr deref if shm format is weird
  • screenshare: round captureBox after scaling to fix region capture at fractional scales (#14257)
  • seat/compositor: fix minor issues (#13958)
  • seat: fix dropped wl_keyboard.enter after stale keyboardFocusResource (#14143)
  • tests/workspace: fix one test case failing
  • tests: Fix more tests failing on CI (#14159)
  • tests: fix ConfigLuaValueTypes - boolBadType test, 0 and 1 are allowed integer values for bool type (#14240)
  • tests: fix gtests crashing (#14244)
  • workspace: fix missing null access guard (#14119)
  • xwayland: fix compiler warnings (#13920)

Other:

  • CI/Nix/Test: check gtest exit status
  • CI/Nix: use org-wide actions
  • CI/build: remove commented-out clang-format action (#13893)
  • Nix: always test in debug mode
  • NotificationOverlay: take reserved space into account (#14184)
  • algo/dwindle: Respect force_split when moving windows to workspaces (#13038)
  • algo/dwindle: do NOT use smart_split for overridden focal point (#13635)
  • algo/dwindle: don't crash on empty swapsplit (#13533)
  • algo/dwindle: use focal point correctly for x-ws moves (#13514)
  • algo/scroll: improve directional moves (#13423)
  • algo/scroll: reverse horiz...
Read more

v0.54.3

Choose a tag to compare

@vaxerski vaxerski released this 27 Mar 18:19
521ece4

A standard patch release with more fixes on top of 0.54.2

Fixes backported

  • algo/dwindle: fix precise mouse setting (#13678)
  • algo/master: fix crash on null target in getNextTarget
  • algo/scroll: fix std::clamp assertion crash on resume from suspend (#13737)
  • desktop/rules: fix static rules and content type. (#13725)
  • hyprctl: fix json output for the submap command (#13726)
  • layershell: fix popup crash with nullptr mon (#13763)
  • overridableVar: fix reassignment
  • protocols: fix image-copy-capture stop handling and remove non protocol errors (#13706)
  • compositor: When processing fullscreen states, only use effective mode where necessary (#13607)
  • compositor: be more selective about how we expand the window box in getting coord (#13720)
  • layersurface: simulate mouse movement on layer change (#13747)
  • layout: guard null workspace in CWindowTarget::updatePos() (#13861)
  • protocols/workspace: schedule done after output update (#13743)
  • view: consolidate group flags and apply window rules (#13694)
  • xwayland: prevent potential buffer overflow in socket path handling (#13797)

Special thanks

As always, massive thanks to our wonderful donators and sponsors:

Sponsors

Diamond

37Signals

Gold

Framework

Donators

Top Supporters:

Seishin, Kay, johndoe42, d, vmfunc, Theory_Lukas, --, MasterHowToLearn, iain, ari-cake, TyrHeimdal, alexmanman5, MadCatX, Xoores, inittux111, RaymondLC92, Insprill, John Shelburne, Illyan, Jas Singh, Joshua Weaver, miget.com, Tonao Paneguini, Brandon Wang, Arkevius, Semtex, Snorezor, ExBhal, alukortti, lzieniew, taigrr, 3RM, DHH, Hunter Wesson, Sierra Layla Vithica, soy_3l.beantser, Anon2033, Tom94

New Monthly Supporters:

monkeypost, lorenzhawkes, Adam Saudagar, Donovan Young, SpoderMouse, prafesa, b3st1m0s, CaptainShwah, Mozart409, bernd, dingo, Marc Galbraith, Mongoss, .tweep, x-wilk, Yngviwarr, moonshiner113, Dani Moreira, Nathan LeSueur, Chimal, edgarsilva, NachoAz, mo, McRealz, wrkshpstudio, crutonjohn

One-time Donators:

macsek, kxwm, Bex Jonathan, Alex, Tomas Kirkegaard, Viacheslav Demushkin, Clive, phil, luxxa, peterjs, tetamusha, pallavk, michaelsx, LichHunter, fratervital, Marpin, SxK, mglvsky, Pembo, Priyav Shah, ChazBeaver, Kim, JonGoogle, matt p, tim, ybaroj, Mr. Monet Baches, NoX, knurreleif, bosnaufal, Alex Vera, fathulk, nh3, Peter, Charles Silva, Tyvren, BI0L0G0S, fonte-della-bonitate, Alex Paterson, Ar, sK0pe, criss, Dnehring, Justin, hylk, 邱國玉KoryChiu, KSzykula, Loutci, jgarzadi, vladzapp, TonyDuan, Brian Starke, Jacobrale, Arvet, Jim C, frank2108, Bat-fox, M.Bergsprekken, sh-r0, Emmerich, davzucky, 3speed, 7KiLL, nu11p7r, Douglas Thomas, Ross, Dave Dashefsky, gignom, Androlax, Dakota, soup, Mac, Quiaro, bittersweet, earthian, Benedict Sonntag, Plockn, Palmen, SD, CyanideData, Spencer Flagg, davide, ashirsc, ddubs, dahol, C. Willard A.K.A Skubaaa, ddollar, Kelvin, Gwynspring, Richard, Zoltán, FirstKix, Zeux, CodeTex, shoedler, brk, Ben Damman, Nils Melchert, Ekoban, D., istoleyurballs , gaKz, ComputerPone, Cell the Führer, defaltastra, Vex, Bulletcharm, cosmincartas, Eccomi, vsa, YvesCB, mmsaf, JonathanHart, Sean Hogge, leat bear, Arizon, JohannesChristel, Darmock, Olivier, Mehran, Anon, Trevvvvvvvvvvvvvvvvvvvv, C8H10N4O2, BeNe, Ko-fi Supporter :3, brad, rzsombor, Faustian, Jemmer, Antonio Sanguigni, woozee, Bluudek, chonaldo, LP, Spanching, Armin, BarbaPeru, Rockey, soba, FalconOne, eizengan, むらびと, zanneth, 0xk1f0, Luccz, Shailesh Kanojia, ForgeWork , Richard Nunez, keith groupdigital.com, pinklizzy, win_cat_define, Bill, johhnry, Matysek, anonymus, github.com/wh1le, Iiro Ullin, Filinto Delgado, badoken, Simon Brundin, Ethan, Theo Puranen Åhfeldt, PoorProgrammer, lukas0008, Paweł S, Vandroiy, Mathias Brännström, Happyelkk, zerocool823, Bryan, ralph_wiggums, DNA, skatos24, Darogirn , Hidde, phlay, lindolo25, Siege, Gus, Max, John Chukwuma, Loopy, Ben, PJ, mick, herakles, mikeU-1F45F, Ammanas, SeanGriffin, Artsiom, Erick, Marko, Ricky, Vincent mouline

Full Changelog: v0.54.2...v0.54.3

v0.54.2

Choose a tag to compare

@vaxerski vaxerski released this 10 Mar 13:29
59f9f26

Another patch release backporting some fixes from main onto 0.54.1.

Fixes backported

  • config/descriptions: add missing desc entry
  • layout/windowTarget: add visualBox (#13626)
  • algo/scroll: fix unsigned wrap (#13634)
  • compositor: fix missing recheckWorkArea to prevent CReservedArea assert failure (#13590)
  • core: fix i586 build (#13550)
  • deco/border: fix damage region
  • desktop/rules: fix empty workspace handling (#13544)
  • desktop/windowRule: fix matching CONTENT (#13636)
  • layout/groupTarget: fix crash on null space assignment (#13614)
  • layout: fix crash on monitor reconnect due to stale workspace state
  • layout: fix drag_threshold window snap regression (rebased for #12890) (#13140)
  • layout: fix null deref in focalPointForDir and moveInDirection (#13652)
  • pointer: fix hardware cursor rendering on rotated/flipped monitors (#13574)
  • protocols/sessionLock: fix crash when monitor is gone during lock surface creation
  • screencopy: fix minor crash (#13566)
  • algo/dwindle: Respect force_split when moving windows to workspaces (#13038)
  • algo/dwindle: do NOT use smart_split for overridden focal point (#13635)
  • screenshare: improve destroy logic of objects (#13554)

Special thanks

As always, massive thanks to our wonderful donators and sponsors:

Sponsors

Diamond

37Signals

Gold

Framework

Donators

Top Supporters:

Seishin, Kay, johndoe42, d, vmfunc, Theory_Lukas, --, MasterHowToLearn, iain, ari-cake, TyrHeimdal, alexmanman5, MadCatX, Xoores, inittux111, RaymondLC92, Insprill, John Shelburne, Illyan, Jas Singh, Joshua Weaver, miget.com, Tonao Paneguini, Brandon Wang, Arkevius, Semtex, Snorezor, ExBhal, alukortti, lzieniew, taigrr, 3RM, DHH, Hunter Wesson, Sierra Layla Vithica, soy_3l.beantser, Anon2033, Tom94

New Monthly Supporters:

monkeypost, lorenzhawkes, Adam Saudagar, Donovan Young, SpoderMouse, prafesa, b3st1m0s, CaptainShwah, Mozart409, bernd, dingo, Marc Galbraith, Mongoss, .tweep, x-wilk, Yngviwarr, moonshiner113, Dani Moreira, Nathan LeSueur, Chimal, edgarsilva, NachoAz, mo, McRealz, wrkshpstudio, crutonjohn

One-time Donators:

macsek, kxwm, Bex Jonathan, Alex, Tomas Kirkegaard, Viacheslav Demushkin, Clive, phil, luxxa, peterjs, tetamusha, pallavk, michaelsx, LichHunter, fratervital, Marpin, SxK, mglvsky, Pembo, Priyav Shah, ChazBeaver, Kim, JonGoogle, matt p, tim, ybaroj, Mr. Monet Baches, NoX, knurreleif, bosnaufal, Alex Vera, fathulk, nh3, Peter, Charles Silva, Tyvren, BI0L0G0S, fonte-della-bonitate, Alex Paterson, Ar, sK0pe, criss, Dnehring, Justin, hylk, 邱國玉KoryChiu, KSzykula, Loutci, jgarzadi, vladzapp, TonyDuan, Brian Starke, Jacobrale, Arvet, Jim C, frank2108, Bat-fox, M.Bergsprekken, sh-r0, Emmerich, davzucky, 3speed, 7KiLL, nu11p7r, Douglas Thomas, Ross, Dave Dashefsky, gignom, Androlax, Dakota, soup, Mac, Quiaro, bittersweet, earthian, Benedict Sonntag, Plockn, Palmen, SD, CyanideData, Spencer Flagg, davide, ashirsc, ddubs, dahol, C. Willard A.K.A Skubaaa, ddollar, Kelvin, Gwynspring, Richard, Zoltán, FirstKix, Zeux, CodeTex, shoedler, brk, Ben Damman, Nils Melchert, Ekoban, D., istoleyurballs , gaKz, ComputerPone, Cell the Führer, defaltastra, Vex, Bulletcharm, cosmincartas, Eccomi, vsa, YvesCB, mmsaf, JonathanHart, Sean Hogge, leat bear, Arizon, JohannesChristel, Darmock, Olivier, Mehran, Anon, Trevvvvvvvvvvvvvvvvvvvv, C8H10N4O2, BeNe, Ko-fi Supporter :3, brad, rzsombor, Faustian, Jemmer, Antonio Sanguigni, woozee, Bluudek, chonaldo, LP, Spanching, Armin, BarbaPeru, Rockey, soba, FalconOne, eizengan, むらびと, zanneth, 0xk1f0, Luccz, Shailesh Kanojia, ForgeWork , Richard Nunez, keith groupdigital.com, pinklizzy, win_cat_define, Bill, johhnry, Matysek, anonymus, github.com/wh1le, Iiro Ullin, Filinto Delgado, badoken, Simon Brundin, Ethan, Theo Puranen Åhfeldt, PoorProgrammer, lukas0008, Paweł S, Vandroiy, Mathias Brännström, Happyelkk, zerocool823, Bryan, ralph_wiggums, DNA, skatos24, Darogirn , Hidde, phlay, lindolo25, Siege, Gus, Max, John Chukwuma, Loopy, Ben, PJ, mick, herakles, mikeU-1F45F, Ammanas, SeanGriffin, Artsiom, Erick, Marko, Ricky, Vincent mouline

Full Changelog: v0.54.1...v0.54.2

v0.54.1

Choose a tag to compare

@vaxerski vaxerski released this 03 Mar 21:07

This is a standard patch release backporting some fixes from main onto 0.54.0

Fixes backported

  • algo/dwindle: add back splitratio (#13498)
  • hyprpm: fix url sanitization in add
  • algo/master: fix crash after dpms (#13522)
  • algo/scrolling: fix offset on removeTarget (#13515)
  • algo/scrolling: fix rare crash
  • build: fix build on gcc 16.x after #6b2c08d (#13429)
  • compositor: fix focus edge detection (#13425)
  • deco/border: fix damageEntire
  • desktop/group: fix movegroupwindow not following focus (#13426)
  • desktop/rule: fix matching for content type by str
  • desktop/window: fix floating windows being auto-grouped (#13475)
  • desktop/window: fix idealBB reserved (#13421)
  • hyprctl: fix buffer overflowing writes to the socket
  • hyprctl: fix workspace dynamic effect reloading (#13537)
  • hyprpm: fix url sanitization in add
  • keybinds: fixup changegroupactive
  • layout/algo: fix swar on removing a target (#13427)
  • layout/scroll: fix configuredWidths not setting properly on new workspaces (#13476)
  • layout/scrolling: fix size_t underflow in idxForHeight (#13465)
  • layout/windowTarget: fix size_limits_tiled (#13445)
  • layouts: fix crash on missed relayout updates (#13444)
  • renderer: fix crash on mirrored outputs needing recalc (#13534)
  • screencopy: fix nullptr deref if shm format is weird
  • tests/workspace: fix one test case failing
  • algo/dwindle: don't crash on empty swapsplit (#13533)
  • algo/dwindle: use focal point correctly for x-ws moves (#13514)
  • algo/scroll: improve directional moves (#13423)
  • build: remove auto-generated hyprctl/hw-protocols/ files during make clear (#13399)
  • compositor: damage monitors on workspace attachment updates
  • desktop/group: respect direction when moving window out of group (#13490)
  • desktop/window: don't group modals
  • format: safeguard drmGetFormat functions (#13416)
  • layout/algos: use binds:window_direction_monitor_fallback for moves (#13508)
  • layout/windowTarget: damage before and after moves (#13496)
  • layout/windowTarget: don't use swar on maximized (#13501)
  • layout/windowTarget: override maximized box status in updateGeom (#13535)
  • layout: store and preserve size and pos after fullscreen (#13500)
  • monitor: damage old special monitor on change
  • monitor: keep workspace monitor bindings on full reconnect (#13384)
  • monitor: update pinned window states properly on changeWorkspace (#13441)
  • pointer: damage entire buffer in begin of rendering hw
  • screencopy: scale window region for toplevel export (#13442)
  • scroll: clamp column widths properly

Special thanks

As always, massive thanks to our wonderful donators and sponsors:

Sponsors

Diamond

37Signals

Gold

Framework

Donators

Top Supporters:

Seishin, Kay, johndoe42, d, vmfunc, Theory_Lukas, --, MasterHowToLearn, iain, ari-cake, TyrHeimdal, alexmanman5, MadCatX, Xoores, inittux111, RaymondLC92, Insprill, John Shelburne, Illyan, Jas Singh, Joshua Weaver, miget.com, Tonao Paneguini, Brandon Wang, Arkevius, Semtex, Snorezor, ExBhal, alukortti, lzieniew, taigrr, 3RM, DHH, Hunter Wesson, Sierra Layla Vithica, soy_3l.beantser, Anon2033, Tom94

New Monthly Supporters:

monkeypost, lorenzhawkes, Adam Saudagar, Donovan Young, SpoderMouse, prafesa, b3st1m0s, CaptainShwah, Mozart409, bernd, dingo, Marc Galbraith, Mongoss, .tweep, x-wilk, Yngviwarr, moonshiner113, Dani Moreira, Nathan LeSueur, Chimal, edgarsilva, NachoAz, mo, McRealz, wrkshpstudio, crutonjohn

One-time Donators:

macsek, kxwm, Bex Jonathan, Alex, Tomas Kirkegaard, Viacheslav Demushkin, Clive, phil, luxxa, peterjs, tetamusha, pallavk, michaelsx, LichHunter, fratervital, Marpin, SxK, mglvsky, Pembo, Priyav Shah, ChazBeaver, Kim, JonGoogle, matt p, tim, ybaroj, Mr. Monet Baches, NoX, knurreleif, bosnaufal, Alex Vera, fathulk, nh3, Peter, Charles Silva, Tyvren, BI0L0G0S, fonte-della-bonitate, Alex Paterson, Ar, sK0pe, criss, Dnehring, Justin, hylk, 邱國玉KoryChiu, KSzykula, Loutci, jgarzadi, vladzapp, TonyDuan, Brian Starke, Jacobrale, Arvet, Jim C, frank2108, Bat-fox, M.Bergsprekken, sh-r0, Emmerich, davzucky, 3speed, 7KiLL, nu11p7r, Douglas Thomas, Ross, Dave Dashefsky, gignom, Androlax, Dakota, soup, Mac, Quiaro, bittersweet, earthian, Benedict Sonntag, Plockn, Palmen, SD, CyanideData, Spencer Flagg, davide, ashirsc, ddubs, dahol, C. Willard A.K.A Skubaaa, ddollar, Kelvin, Gwynspring, Richard, Zoltán, FirstKix, Zeux, CodeTex, shoedler, brk, Ben Damman, Nils Melchert, Ekoban, D., istoleyurballs , gaKz, ComputerPone, Cell the Führer, defaltastra, Vex, Bulletcharm, cosmincartas, Eccomi, vsa, YvesCB, mmsaf, JonathanHart, Sean Hogge, leat bear, Arizon, JohannesChristel, Darmock, Olivier, Mehran, Anon, Trevvvvvvvvvvvvvvvvvvvv, C8H10N4O2, BeNe, Ko-fi Supporter :3, brad, rzsombor, Faustian, Jemmer, Antonio Sanguigni, woozee, Bluudek, chonaldo, LP, Spanching, Armin, BarbaPeru, Rockey, soba, FalconOne, eizengan, むらびと, zanneth, 0xk1f0, Luccz, Shailesh Kanojia, ForgeWork , Richard Nunez, keith groupdigital.com, pinklizzy, win_cat_define, Bill, johhnry, Matysek, anonymus, github.com/wh1le, Iiro Ullin, Filinto Delgado, badoken, Simon Brundin, Ethan, Theo Puranen Åhfeldt, PoorProgrammer, lukas0008, Paweł S, Vandroiy, Mathias Brännström, Happyelkk, zerocool823, Bryan, ralph_wiggums, DNA, skatos24, Darogirn , Hidde, phlay, lindolo25, Siege, Gus, Max, John Chukwuma, Loopy, Ben, PJ, mick, herakles, mikeU-1F45F, Ammanas, SeanGriffin, Artsiom, Erick, Marko, Ricky, Vincent mouline

Full Changelog: v0.54.0...v0.54.1

v0.54.0

Choose a tag to compare

@vaxerski vaxerski released this 27 Feb 18:23
0002f14

A big (large), actually huge update for y'all!!

Special thanks to our HIs (Human Intelligences) for powering Hyprland development.

Breaking changes

  • togglesplit and swapsplit have been removed after being long deprecated. Use layoutmsg with the same params instead.
  • single_window_aspect_ratio and single_window_aspect_ratio_tolerance have been migrated from dwindle to layout, and are layout-agnostic

New features:

  • cmakelists: add fno-omit-frame-pointer for tracy builds
  • desktop/window: add stable id and use it for foreign
  • gestures: add cursor zoom (#13033)
  • groupbar: added group:groupbar:text_padding (#12818)
  • hyprctl: add error messages to hyprctl hyprpaper wallpaper (#13234)
  • hyprctl: add overFullscreen field in hyprctl window debug (#13066)
  • hyprpm: add full nix integration (#13189)
  • keybinds: add inhibiting gestures under shortcut inhibitors (#12692)
  • main: add watchdog-fd and safe-mode options to help message (#12922)
  • opengl: add debug:gl_debugging (#13183)
  • start: add --force-nixgl and check /run/opengl-driver (#13385)
  • start: add parent-death handling for BSDs (#12863)

Fixes:

  • algo/dwindle: fix focal point not being properly used in movedTarget (#13373)
  • algo/master: fix master:orientation being a noop
  • algo/master: fix orientation cycling (#13372)
  • algo/scrolling: fix crashes on destroying ws
  • core/compositor: immediately do readable if adding waiter fails for scheduling state
  • compositor: fix calculating x11 work area (#13347)
  • config/descriptions: fix use_cpu_buffer (#13285)
  • core/xwaylandmgr: fix min/max clamp potentially crashing
  • decorations/border: fix damage scheduling after #12665
  • desktop/layerRuleApplicator: fix an epic c+p fail
  • desktop/ls: fix invalid clamp
  • desktop/popup: fix use after free in Popup (#13335)
  • desktop/reserved: fix a possible reserved crash (#13207)
  • desktop/ruleApplicator: fix typo in border color rule parsing (#12995)
  • desktop/rules: fix border colors not resetting. (#13382)
  • desktop/workspaceHistory: fix tracking for multiple monitors (#12979)
  • desktopAnimationMgr: fix slide direction
  • dynamicPermManager: fix c+p fail
  • eventLoop: various eventloopmgr fixes (#13091)
  • example: fixup config for togglesplit
  • fifo: miscellaneous fifo fixes (#13136)
  • fix: handle fullscreen windows on special workspaces (#12851)
  • hyprctl: fix layerrules not being applied dynamically with hyprctl (#13080)
  • hyprerror: add padding & adjust for scale when reserving area (#13158)
  • hyprerror: fix horizontal overflow and damage box (#12719)
  • hyprpm: fix build step execution
  • hyprpm: fix clang-format
  • input: fix edge grab resize logic for gaps_out > 0 (#13144)
  • input: fix kinetic scroll (#13233)
  • keybinds: fix unguarded member access in moveWindowOrGroup (#13337)
  • mainLoopExecutor: fix incorrect pipe check
  • monitor: fix DS deactivation (#13188)
  • multigpu: fix multi gpu checking (#13277)
  • nix: add hyprland-uwsm to passthru.providedSessions
  • nix: fix evaluation warnings, the xorg package set has been deprecated (#13231)
  • pluginsystem: fix crash when unloading plugin hyprctl commands (#12821)
  • protocols/cm: Fix image description info events (#12781)
  • protocols/contentType: fix missing destroy
  • protocols/contentType: fix typo in already constructed check
  • protocols/dmabuf: fix DMA-BUF checks and events (#12965)
  • protocols/syncobj: fix DRM sync obj support logging (#12946)
  • renderer/pass: fix surface opaque region bounds used in occluding (#13124)
  • renderer: add surface shader variants with less branching and uniforms (#13030)
  • renderer: optimise shader usage further, split shaders and add more caching (#12992)
  • renderer: fix dgpu directscanout explicit sync (#13229)
  • renderer: fix frame sync (#13061)
  • renderer: fix mouse motion in VRR (#12665)
  • renderer: fix non shader cm reset (#13027)
  • renderer: fix screen export back to srgb (#13148)
  • systemd/sdDaemon: fix incorrect strnlen
  • target: fix geometry for x11 floats
  • tester: fix sleeps waiting for too long (#12774)
  • xwayland/xwm: fix _NET_WM_STATE_MAXIMIZED_VERT type (#13151)
  • xwayland/xwm: fix window closing when props race
  • xwayland: fix size mismatch for no scaling (#13263)

Other:

  • Nix: apply glaze patch
  • Nix: re-enable hyprpm
  • Reapply "hyprpm: bump glaze version"
  • Revert "hyprpm: bump glaze version"
  • algo/scrolling: adjust focus callbacks to be more intuitive
  • animation: reset tick state on session activation (#13024)
  • animationMgr: avoid uaf in ::tick() if handleUpdate destroys AV
  • anr: open anr dialog on parent's workspace (#12509)
  • anr: remove window on closewindow (#13007)
  • buffer: add move constructor and operator to CHLBufferReference (#13157)
  • cm: block DS for scRGB in HDR mode (#13262)
  • cmake: bump wayland-server version to 1.22.91 (#13242)
  • cmake: use OpenGL::GLES3 when OpenGL::GL does not exist (#13260)
  • cmakelists: don't require debug for tracy
  • compositor: guard null view() in getWindowFromSurface (#13255)
  • config: don't crash on permission with a config check
  • config: return windowrulev2 layerrulev2 error messages (#12847)
  • config: support no_vrr rule on vrr 1 (#13250)
  • core: optimize some common branches
  • decoration: take desiredExtents on all sides into account (#12935)
  • dekstop/window: read static rules before guessing initial size if possible (#12783)
  • desktop/LS: avoid creating an invalid LS if no monitor could be found (#12787)
  • desktop/ls: clamp layer from protocol
  • desktop/popup: avoid crash on null popup child in rechecking
  • desktop/popup: only remove reserved for window popups
  • desktop/reservedArea: clamp dynamic types to 0
  • desktop/reservedArea: clamp to 0
  • desktop/rules: use pid for exec rules (#13374)
  • desktop/window: avoid uaf on instant removal of a window
  • desktop/window: catch bad any cast tokens
  • desktop/window: go back to the previously focused window in a group (#12763)
  • desktop/window: remove old fn defs
  • desktop/window: track explicit workspace assignments to prevent X11 configure overwrites (#12850)
  • desktop/window: use workArea for idealBB (#12802)
  • desktop/windowRule: allow expression in min_size/max_size (#12977)
  • desktop/windowRule: use content rule as enum directly (#13275)
  • desktop: restore invisible floating window alpha/opacity when focused over fullscreen (#12994)
  • event: refactor HookSystem into a typed event bus (#13333)
  • eventLoop: remove failed readable waiters
  • framebuffer: revert viewport (#12842)
  • gestures/fs: remove unneeded floating state switch (#13127)
  • hyprctl: adjust json case
  • hyprctl: bump hyprpaper protocol to rev 2 (#12838)
  • hyprctl: remove trailing comma from json object (#13042)
  • hyprerror: clear reserved area on destroy (#13046)
  • hyprpm,Makefile: drop cmake ninja build
  • hyprpm: bump glaze version
  • hyprpm: drop meson dep
  • hyprpm: exclude glaze from all targets during fetch
  • hyprpm: use provided pkgconf env if available
  • i18n: add Romanian translations (#13075)
  • i18n: add Traditional Chinese (zh_TW) translations (#13210)
  • i18n: add Vietnamese translation (#13163)
  • i18n: add bengali translations (#13185)
  • i18n: update russian translation (#13247)
  • input/TI: avoid UAF in destroy
  • input/ti: avoid sending events to inactive TIs
  • input: guard null view() when processing mouse down (#12772)
  • input: use fresh cursor pos when sending motion events (#13366)
  • internal: removed Herobrine
  • layershell: restore focus to layer shell surface after popup is destroyed (#13225)
  • layout: rethonk layouts from the ground up (#12890)
  • monitor: revert "remove disconnected monitor before unsafe state #12544" (#13154)
  • nix: remove glaze patch
  • opengl/fb: use GL_DEPTH24_STENCIL8 instead of GL_STENCIL_INDEX8 (#13067)
  • opengl: allow texture filter to be changed (#13078)
  • opengl: set EGL_CONTEXT_RELEASE_BEHAVIOR_KHR if supported (#13114)
  • pointermgr: damage only the surface size (#13284)
  • pointermgr: remove onRenderBufferDestroy (#13008)
  • pointermgr: revert "damage only the surface size (#13284)"
  • popup: check for expired weak ptr (#13352)
  • popup: reposition with reserved taken into account
  • proto/shm: update wl_shm to v2 (#13187)
  • protocolMgr: remove IME / virtual input protocols from sandbox whitelist
  • protocols/toplevelExport: Support transparency in toplevel export (#12824)
  • protocols: implement image-capture-source-v1 and image-copy-capture-v1 (#11709)
  • renderer/fb: dont forget to set m_drmFormat (#12833)
  • renderer/gl: add internal gl formats and reduce internal driver format conversions (#12879)
  • renderer/opengl: invalidate intermediate FBs post render, avoid stencil if possible (#12848)
  • renderer: allow tearing with DS with invisible cursors (#13155)
  • renderer: better sdr eotf settings (#12812)
  • renderer: minor framebuffer and renderbuffer changes (#12831)
  • renderer: shader code refactor (#12926)
  • shm: ensure we use right gl unpack alignment (#12975)
  • start: use nixGL if Hyprland is nix but not NixOS (#12845)
  • systemd/sdDaemon: initialize sockaddr_un
  • testers: add missing #include <unistd.h> (#12862)
  • tests: Test the no_focus_on_activate window rule (#13015)
  • time: ensure type correctness and calculate nsec correctly (#13167)
  • versionKeeper: ignore minor rev version
  • view: send wl_surface.enter to subsurfaces of popups (#13353)
  • wayland/output: return all bound wl_output instances in outputResourceFrom (#13315)
  • welcome: skip in safe mode
  • xwayland/xwm: get supported props on constructing surface (#13156)
  • xwayland/xwm: handle INCR clipboard transfer chunks correctly (#13125)
  • xwayland/xwm: prevent onWrite infinite loop and clean orphan transfers (#13122)
  • xwayland: ensure NO_XWAYLAND...
Read more