版本发布 8
This is a standard patch release backporting a few fixes from main on top of 0.53.2. It's mostly to fix hyprpm (oops) ## Fixes backported - hyprctl: remove trailing comma from json object - hyprpm: fix build step execution ## Special thanks Special thanks as always for these people / companies for supporting Hyprland: ### Sponsors #### Diamond 37Signals #### Gold Framework ### Donators #### Top Supporters: miget.com, Hunter Wesson, --, ari-cake, TyrHeimdal, Joshua Weaver, alukortti, mukaro, Arkevius, 3RM, johndoe42, Insprill, Tonao Paneguini, Seishin, Anon2033, RaymondLC92, vmfunc, DHH, MadCatX, Jas Singh, John Shelburne, Xoores, lzieniew, Kay, Brandon Wang, MasterHowToLearn, taigrr, Semtex, alexmanman5, Theory_Lukas, ExBhal, Sierra Layla Vithica, Tom94, d, Illyan, soy_3l.beantser, Freya Elizabeth Goins, inittux111 #### New Monthly Supporters: Tomek, Brian Donovan, Flanksy, Oversiate, Matt, Lungefisk, Leszek Kalwa, Chronoyevsky, metaru, AV, Daniel Segan, Fernando Sanchez, dharmapee, Will K, Jói, Adam Cogdell, Anthony McKeever, Crashdummy, dovahi, AndrewF, adsf, grhobe, Mr Maestro, lepokle, Dainatello, floer, Ben Kimble, hyprdick, Imp, popich, Mansoor Faqiri, dukeofcool199, ReallyNoteless, coldwater, Adrian, Anarcho, Zerby, Pracyan, evict, lexeko, Hauke, Jackrin, Tom Richards, searchsr555 #### One-time Donators: Kaizza, cherny, tega90, Greg Chen, TF, Kenneth Breugelmans, Daniel Stuessy, taxiservice, Rockvald, yoboyfromtaiwan, Tekn, Martin, Jonathan Knapp, maribust, JWHall, raccoon, Zarquon, Wouter Bos, Malte, Areg, R. Pope, ko-fi-enjoyer-ubie, Sander, saphira_a, HackHQ, Simen Hagelid, Matthew Flower, SOSdude, Cristian, mike, b1ackswordsman_, gvdb, Nick, gwek, Haru, Tuomo Tr., diam0ndable, seagull, PyrosaurusRex, abat, Sebastian Przybyło, unknown, Joonas, Rasibobs, Dgolub, qtwork, revitalist, Al Johri, snakebones, eman, Flavius, Foibles, Tom, dabit, Jesus Humble Coder, goodroot, BeardlessPirate, jamerrq, Pedroelfire, pingu667, Kaiseki, Leon, tadz, Mine13zoom, JamesBond, MRP, Jon, Fernando Okuma, Nathan Drayson, Le_Kos, limenode, Samuel Tissot, IcsBoyX, Pol Ros Domènech, Cyber Spectrum / DJ Forge, Jan, Bastian Blokland, RobG, Itagane, checor, giorki, Richard, jgarzadi, Dunadan, Torwalt, hyperv01, Kirill Solodukhin, dentych, Steffen, Sort, Don Quixote, DirkPorsche, Eltharion, der_jean_marc, Apoorva, j, Otavio Augusto Gomes, clumsy, Jonas, Gersnifagus, dasd, Emil Erikmats, Jakov, Horst, Pastor Cmentarny, albrat, Borissimo, Jimbo, George, McMooMoo, rafazaya, CoolMcGrrr, HyperbolicParabaloid, Osamu Makiguchi, Gun155, noxc, demonic_chicken, Djoerzilla, Okazagi, moferrin, CareAgain, Mathias Karstädt, Holger Caribe, Stefan Schrage, maardal, yagaaa, Geenath, Steven, Roberto, DenverLacey, Foggerty, wtsmith, Alex, fraxineus, Simone, luccaugusto, endersdad, nomixer, Komor, Junkie, Hemendex7, nnutter, fujibearly, nachtschatten, hectorsq, ., EG, tsah, AhmedAlYousif, Karaviro, raydiatian, gnudoc, RussianMoroccan, Henrik, Cleptomania, Jason Kuan, beavis, jhoj, lmcanavals, Máté, boxplayer, ekholme, LeBew, mehiel, viscount-monty, sander, Ricebal, Vineeth Reddy Kanupuru, уσsίЬгσsί, Magnus, EmilioPeJu, Anersyum, Quambo, Outsiders17711, e, Anders Keis, Vladimir, Lyri, Zack L, Doug, Lolenz, valentine filatov, fakeclear_mei, Henry, Happyelkk, Jordi, Ben, lotaviods, BruhhnoV, Chad, neweziz, Huub, senorBeard, The Universality, Lyrael, Nioner, Wes, Nice job!, Damacon, Dvd-Znf, Jaeden T, Josh, Jojo, joeknit, zacoons, blychs, Eduardo Spanó, Anton Kesy, Tobias, Frisbee, Jaime Ledesma, Snepsts, pfrank, nimo , Bim Phomthong, Tim, eric280, Boothe, T.C., LeoFly, Jerkcircling, lucas, Gixbert, Nathan BARDAVID, mbald1, Diogo Ferreira, vitaliiorlov, Rai T., geko, JD, George S, reatret, Ar, joshuahardwick, GK, Lukaol, Senshyn, bobbackwardsbob, Crinfarr, jrgd, Shaun, UnMaykr, Christian DeCarle, EverybodySurf, mook, MandoArtstudios, yorishori, Holerra, Sean, derui, andybitz, StyxUT, Saulius, Awoo, Sshanky, Speedz, zssork, Mathias Vesterlund, Nicholas, Ricardo Dias, mo, Fulgoran, Joao Goncalves, Zer0's Void, Rasmus Lumholdt, Dave, eltharion, Terminal Dot Shop, Ger O'M, Robert, bokac, Szwagi, Plonky, xtiang7c0, luprzybyl, Seraphim of Boise, Kike, rafael araujo, Exanime, MRJN, Riley, dillius, ApproachingApathy, magballs, NeoDev, S, celestialSlice, jimdavid, imAsparky, highafdoge, Gene Brewskin, Jim, Toby, Darth, Gunnar, larsjr, Neocrius, Khue, Jerry, damndxyo, falsparsi, spintops, John, Liz, Chibi, Gizu, tricked, flaxfrax, Chrezzly, Pb, vzkz, Asaf, Pablo, dusmartijngames, geekologist, schmendiey, chucknorris, Jo, Nathan Lepori, unclefrank7, Limrun, Vadym, CoolJBad01, Mirko R, jahol, Frank Ploegman, Ryan Gorman, Pedro Pinto, Seyloria, Franky, Lukas, Michael, Keith Veleba, frebib, Leon K., kados, benben, Z, Anas Bashir, Jacob, Heuge, dev2and0m, kuroma, MightiD, Mike Kuenzi, aliiscripts, Claymaker, duane, rbgtk, Jonathan Montgomery, DanielPürner, Rowan-Paul, *CareFully*, FLX, Jeff Nunn, timugen_st, Mikol, Matsuji, sikor666, Evan, Ximizu, Timur Bogdanov, Luc, Purple Sorcerer, drook207, AkhiAC, misunderstood, Frank Besson, Xiuyuan Bi, ironick, fxhm, Lubix, Farex, Nerox, Cole, JavierRios, bombusbee, philipl, 0Tick, urssur, JasonWitty, ziga, Zev, Jymm6, TrashyFur, iamLIMPaf, Dafitt, Aidan, Joe Mama, rankomat, phga, l, Jea, None, wiesel78, shazbot, coglinks, drulex, DocE / DocEys, Klaus Strele, Waterbottle45, coquin, phiwan, MadByte, Galg, ChuckLorris, Victor, lejouson, quack, NEXNC, Justus, thousandlegs, Sigitas, RFS, oskhen, Noel, Kristof Bajan, pelda, talys, invalidusrname, fragile, guusw, av8avenger, R, Martin Fournier, Jack, Spr3eZ, revilo196, Toft, JerwuQu, Aymir, blocho, Allan, Nick M, Andrew, Monssaf, Denis S. ### And all hyprperks members! **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.53.2...v0.53.3
This is a standard patch release backporting a few fixes from main on top of 0.53.1. ## Fixes backported - pluginsystem: fix crash when unloading plugin hyprctl commands - testers: add missing #include <unistd.h> - config: return windowrulev2 and layerrulev2 error messages - start: add parent-desth handling for BSDs - start: use nixGL if Hyprland is nix but not NixOS - config: don't crash on permission with a config check - desktop/reservedArea: clamp to 0 - animationMgr: avoid uaf in ::tick() if handleUpdate destroys AV - fix: handle fullscreen windows on special workspaces - desktop/window: track explicit workspace assignments to prevent X11 configure overwrites - desktop/workspaceHistory: fix tracking for multiple monitors - desktop/window: avoid uaf on instant removal of a window - desktop/ruleApplicator: fix typo in border color rule parsing - anr: remove window on closewindow - hyprpm,Makefile: drop cmake ninja build - hyprpm: drop meson dep - Nix: re-enable hyprpm - hyprerror: clear reserved area on destroy - animation: reset tick state on session activation - desktop: restore invisible floating window alpha/opacity when focused over fullscreen - hyprpm: use provided pkgconf env if available ## Special thanks Special thanks as always for these people / companies for supporting Hyprland: ### Sponsors #### Diamond 37Signals #### Gold Framework ### Donators #### Top Supporters: miget.com, Hunter Wesson, --, ari-cake, TyrHeimdal, Joshua Weaver, alukortti, mukaro, Arkevius, 3RM, johndoe42, Insprill, Tonao Paneguini, Seishin, Anon2033, RaymondLC92, vmfunc, DHH, MadCatX, Jas Singh, John Shelburne, Xoores, lzieniew, Kay, Brandon Wang, MasterHowToLearn, taigrr, Semtex, alexmanman5, Theory_Lukas, ExBhal, Sierra Layla Vithica, Tom94, d, Illyan, soy_3l.beantser, Freya Elizabeth Goins, inittux111 #### New Monthly Supporters: Tomek, Brian Donovan, Flanksy, Oversiate, Matt, Lungefisk, Leszek Kalwa, Chronoyevsky, metaru, AV, Daniel Segan, Fernando Sanchez, dharmapee, Will K, Jói, Adam Cogdell, Anthony McKeever, Crashdummy, dovahi, AndrewF, adsf, grhobe, Mr Maestro, lepokle, Dainatello, floer, Ben Kimble, hyprdick, Imp, popich, Mansoor Faqiri, dukeofcool199, ReallyNoteless, coldwater, Adrian, Anarcho, Zerby, Pracyan, evict, lexeko, Hauke, Jackrin, Tom Richards, searchsr555 #### One-time Donators: Kaizza, cherny, tega90, Greg Chen, TF, Kenneth Breugelmans, Daniel Stuessy, taxiservice, Rockvald, yoboyfromtaiwan, Tekn, Martin, Jonathan Knapp, maribust, JWHall, raccoon, Zarquon, Wouter Bos, Malte, Areg, R. Pope, ko-fi-enjoyer-ubie, Sander, saphira_a, HackHQ, Simen Hagelid, Matthew Flower, SOSdude, Cristian, mike, b1ackswordsman_, gvdb, Nick, gwek, Haru, Tuomo Tr., diam0ndable, seagull, PyrosaurusRex, abat, Sebastian Przybyło, unknown, Joonas, Rasibobs, Dgolub, qtwork, revitalist, Al Johri, snakebones, eman, Flavius, Foibles, Tom, dabit, Jesus Humble Coder, goodroot, BeardlessPirate, jamerrq, Pedroelfire, pingu667, Kaiseki, Leon, tadz, Mine13zoom, JamesBond, MRP, Jon, Fernando Okuma, Nathan Drayson, Le_Kos, limenode, Samuel Tissot, IcsBoyX, Pol Ros Domènech, Cyber Spectrum / DJ Forge, Jan, Bastian Blokland, RobG, Itagane, checor, giorki, Richard, jgarzadi, Dunadan, Torwalt, hyperv01, Kirill Solodukhin, dentych, Steffen, Sort, Don Quixote, DirkPorsche, Eltharion, der_jean_marc, Apoorva, j, Otavio Augusto Gomes, clumsy, Jonas, Gersnifagus, dasd, Emil Erikmats, Jakov, Horst, Pastor Cmentarny, albrat, Borissimo, Jimbo, George, McMooMoo, rafazaya, CoolMcGrrr, HyperbolicParabaloid, Osamu Makiguchi, Gun155, noxc, demonic_chicken, Djoerzilla, Okazagi, moferrin, CareAgain, Mathias Karstädt, Holger Caribe, Stefan Schrage, maardal, yagaaa, Geenath, Steven, Roberto, DenverLacey, Foggerty, wtsmith, Alex, fraxineus, Simone, luccaugusto, endersdad, nomixer, Komor, Junkie, Hemendex7, nnutter, fujibearly, nachtschatten, hectorsq, ., EG, tsah, AhmedAlYousif, Karaviro, raydiatian, gnudoc, RussianMoroccan, Henrik, Cleptomania, Jason Kuan, beavis, jhoj, lmcanavals, Máté, boxplayer, ekholme, LeBew, mehiel, viscount-monty, sander, Ricebal, Vineeth Reddy Kanupuru, уσsίЬгσsί, Magnus, EmilioPeJu, Anersyum, Quambo, Outsiders17711, e, Anders Keis, Vladimir, Lyri, Zack L, Doug, Lolenz, valentine filatov, fakeclear_mei, Henry, Happyelkk, Jordi, Ben, lotaviods, BruhhnoV, Chad, neweziz, Huub, senorBeard, The Universality, Lyrael, Nioner, Wes, Nice job!, Damacon, Dvd-Znf, Jaeden T, Josh, Jojo, joeknit, zacoons, blychs, Eduardo Spanó, Anton Kesy, Tobias, Frisbee, Jaime Ledesma, Snepsts, pfrank, nimo , Bim Phomthong, Tim, eric280, Boothe, T.C., LeoFly, Jerkcircling, lucas, Gixbert, Nathan BARDAVID, mbald1, Diogo Ferreira, vitaliiorlov, Rai T., geko, JD, George S, reatret, Ar, joshuahardwick, GK, Lukaol, Senshyn, bobbackwardsbob, Crinfarr, jrgd, Shaun, UnMaykr, Christian DeCarle, EverybodySurf, mook, MandoArtstudios, yorishori, Holerra, Sean, derui, andybitz, StyxUT, Saulius, Awoo, Sshanky, Speedz, zssork, Mathias Vesterlund, Nicholas, Ricardo Dias, mo, Fulgoran, Joao Goncalves, Zer0's Void, Rasmus Lumholdt, Dave, eltharion, Terminal Dot Shop, Ger O'M, Robert, bokac, Szwagi, Plonky, xtiang7c0, luprzybyl, Seraphim of Boise, Kike, rafael araujo, Exanime, MRJN, Riley, dillius, ApproachingApathy, magballs, NeoDev, S, celestialSlice, jimdavid, imAsparky, highafdoge, Gene Brewskin, Jim, Toby, Darth, Gunnar, larsjr, Neocrius, Khue, Jerry, damndxyo, falsparsi, spintops, John, Liz, Chibi, Gizu, tricked, flaxfrax, Chrezzly, Pb, vzkz, Asaf, Pablo, dusmartijngames, geekologist, schmendiey, chucknorris, Jo, Nathan Lepori, unclefrank7, Limrun, Vadym, CoolJBad01, Mirko R, jahol, Frank Ploegman, Ryan Gorman, Pedro Pinto, Seyloria, Franky, Lukas, Michael, Keith Veleba, frebib, Leon K., kados, benben, Z, Anas Bashir, Jacob, Heuge, dev2and0m, kuroma, MightiD, Mike Kuenzi, aliiscripts, Claymaker, duane, rbgtk, Jonathan Montgomery, DanielPürner, Rowan-Paul, *CareFully*, FLX, Jeff Nunn, timugen_st, Mikol, Matsuji, sikor666, Evan, Ximizu, Timur Bogdanov, Luc, Purple Sorcerer, drook207, AkhiAC, misunderstood, Frank Besson, Xiuyuan Bi, ironick, fxhm, Lubix, Farex, Nerox, Cole, JavierRios, bombusbee, philipl, 0Tick, urssur, JasonWitty, ziga, Zev, Jymm6, TrashyFur, iamLIMPaf, Dafitt, Aidan, Joe Mama, rankomat, phga, l, Jea, None, wiesel78, shazbot, coglinks, drulex, DocE / DocEys, Klaus Strele, Waterbottle45, coquin, phiwan, MadByte, Galg, ChuckLorris, Victor, lejouson, quack, NEXNC, Justus, thousandlegs, Sigitas, RFS, oskhen, Noel, Kristof Bajan, pelda, talys, invalidusrname, fragile, guusw, av8avenger, R, Martin Fournier, Jack, Spr3eZ, revilo196, Toft, JerwuQu, Aymir, blocho, Allan, Nick M, Andrew, Monssaf, Denis S. ### And all hyprperks members! **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.53.1...v0.53.2
This is a standard patch release backporting a few fixes from main. ## Fixes backported - desktopAnimationMgr: fix slide direction - desktop/window: go back to the previously focused window in a group - input: guard null view() when processing mouse down - desktop/LS: avoid creating an invalid LS if no monitor could be found - input/ti: avoid sending events to inactive TIs - desktop/window: use workArea for idealBB - desktop/window: read static rules before guessing initial size if possible - core/xwaylandmgr: fix min/max clamp potentially crashing - desktop/layerRuleApplicator: fix an epic c+p fail ## Special thanks Special thanks as always for these people / companies for supporting Hyprland: ### Sponsors #### Diamond 37Signals #### Gold Framework ### Donators #### Top Supporters: miget.com, Hunter Wesson, --, ari-cake, TyrHeimdal, Joshua Weaver, alukortti, mukaro, Arkevius, 3RM, johndoe42, Insprill, Tonao Paneguini, Seishin, Anon2033, RaymondLC92, vmfunc, DHH, MadCatX, Jas Singh, John Shelburne, Xoores, lzieniew, Kay, Brandon Wang, MasterHowToLearn, taigrr, Semtex, alexmanman5, Theory_Lukas, ExBhal, Sierra Layla Vithica, Tom94, d, Illyan, soy_3l.beantser, Freya Elizabeth Goins, inittux111 #### New Monthly Supporters: Tomek, Brian Donovan, Flanksy, Oversiate, Matt, Lungefisk, Leszek Kalwa, Chronoyevsky, metaru, AV, Daniel Segan, Fernando Sanchez, dharmapee, Will K, Jói, Adam Cogdell, Anthony McKeever, Crashdummy, dovahi, AndrewF, adsf, grhobe, Mr Maestro, lepokle, Dainatello, floer, Ben Kimble, hyprdick, Imp, popich, Mansoor Faqiri, dukeofcool199, ReallyNoteless, coldwater, Adrian, Anarcho, Zerby, Pracyan, evict, lexeko, Hauke, Jackrin, Tom Richards, searchsr555 #### One-time Donators: Kaizza, cherny, tega90, Greg Chen, TF, Kenneth Breugelmans, Daniel Stuessy, taxiservice, Rockvald, yoboyfromtaiwan, Tekn, Martin, Jonathan Knapp, maribust, JWHall, raccoon, Zarquon, Wouter Bos, Malte, Areg, R. Pope, ko-fi-enjoyer-ubie, Sander, saphira_a, HackHQ, Simen Hagelid, Matthew Flower, SOSdude, Cristian, mike, b1ackswordsman_, gvdb, Nick, gwek, Haru, Tuomo Tr., diam0ndable, seagull, PyrosaurusRex, abat, Sebastian Przybyło, unknown, Joonas, Rasibobs, Dgolub, qtwork, revitalist, Al Johri, snakebones, eman, Flavius, Foibles, Tom, dabit, Jesus Humble Coder, goodroot, BeardlessPirate, jamerrq, Pedroelfire, pingu667, Kaiseki, Leon, tadz, Mine13zoom, JamesBond, MRP, Jon, Fernando Okuma, Nathan Drayson, Le_Kos, limenode, Samuel Tissot, IcsBoyX, Pol Ros Domènech, Cyber Spectrum / DJ Forge, Jan, Bastian Blokland, RobG, Itagane, checor, giorki, Richard, jgarzadi, Dunadan, Torwalt, hyperv01, Kirill Solodukhin, dentych, Steffen, Sort, Don Quixote, DirkPorsche, Eltharion, der_jean_marc, Apoorva, j, Otavio Augusto Gomes, clumsy, Jonas, Gersnifagus, dasd, Emil Erikmats, Jakov, Horst, Pastor Cmentarny, albrat, Borissimo, Jimbo, George, McMooMoo, rafazaya, CoolMcGrrr, HyperbolicParabaloid, Osamu Makiguchi, Gun155, noxc, demonic_chicken, Djoerzilla, Okazagi, moferrin, CareAgain, Mathias Karstädt, Holger Caribe, Stefan Schrage, maardal, yagaaa, Geenath, Steven, Roberto, DenverLacey, Foggerty, wtsmith, Alex, fraxineus, Simone, luccaugusto, endersdad, nomixer, Komor, Junkie, Hemendex7, nnutter, fujibearly, nachtschatten, hectorsq, ., EG, tsah, AhmedAlYousif, Karaviro, raydiatian, gnudoc, RussianMoroccan, Henrik, Cleptomania, Jason Kuan, beavis, jhoj, lmcanavals, Máté, boxplayer, ekholme, LeBew, mehiel, viscount-monty, sander, Ricebal, Vineeth Reddy Kanupuru, уσsίЬгσsί, Magnus, EmilioPeJu, Anersyum, Quambo, Outsiders17711, e, Anders Keis, Vladimir, Lyri, Zack L, Doug, Lolenz, valentine filatov, fakeclear_mei, Henry, Happyelkk, Jordi, Ben, lotaviods, BruhhnoV, Chad, neweziz, Huub, senorBeard, The Universality, Lyrael, Nioner, Wes, Nice job!, Damacon, Dvd-Znf, Jaeden T, Josh, Jojo, joeknit, zacoons, blychs, Eduardo Spanó, Anton Kesy, Tobias, Frisbee, Jaime Ledesma, Snepsts, pfrank, nimo , Bim Phomthong, Tim, eric280, Boothe, T.C., LeoFly, Jerkcircling, lucas, Gixbert, Nathan BARDAVID, mbald1, Diogo Ferreira, vitaliiorlov, Rai T., geko, JD, George S, reatret, Ar, joshuahardwick, GK, Lukaol, Senshyn, bobbackwardsbob, Crinfarr, jrgd, Shaun, UnMaykr, Christian DeCarle, EverybodySurf, mook, MandoArtstudios, yorishori, Holerra, Sean, derui, andybitz, StyxUT, Saulius, Awoo, Sshanky, Speedz, zssork, Mathias Vesterlund, Nicholas, Ricardo Dias, mo, Fulgoran, Joao Goncalves, Zer0's Void, Rasmus Lumholdt, Dave, eltharion, Terminal Dot Shop, Ger O'M, Robert, bokac, Szwagi, Plonky, xtiang7c0, luprzybyl, Seraphim of Boise, Kike, rafael araujo, Exanime, MRJN, Riley, dillius, ApproachingApathy, magballs, NeoDev, S, celestialSlice, jimdavid, imAsparky, highafdoge, Gene Brewskin, Jim, Toby, Darth, Gunnar, larsjr, Neocrius, Khue, Jerry, damndxyo, falsparsi, spintops, John, Liz, Chibi, Gizu, tricked, flaxfrax, Chrezzly, Pb, vzkz, Asaf, Pablo, dusmartijngames, geekologist, schmendiey, chucknorris, Jo, Nathan Lepori, unclefrank7, Limrun, Vadym, CoolJBad01, Mirko R, jahol, Frank Ploegman, Ryan Gorman, Pedro Pinto, Seyloria, Franky, Lukas, Michael, Keith Veleba, frebib, Leon K., kados, benben, Z, Anas Bashir, Jacob, Heuge, dev2and0m, kuroma, MightiD, Mike Kuenzi, aliiscripts, Claymaker, duane, rbgtk, Jonathan Montgomery, DanielPürner, Rowan-Paul, *CareFully*, FLX, Jeff Nunn, timugen_st, Mikol, Matsuji, sikor666, Evan, Ximizu, Timur Bogdanov, Luc, Purple Sorcerer, drook207, AkhiAC, misunderstood, Frank Besson, Xiuyuan Bi, ironick, fxhm, Lubix, Farex, Nerox, Cole, JavierRios, bombusbee, philipl, 0Tick, urssur, JasonWitty, ziga, Zev, Jymm6, TrashyFur, iamLIMPaf, Dafitt, Aidan, Joe Mama, rankomat, phga, l, Jea, None, wiesel78, shazbot, coglinks, drulex, DocE / DocEys, Klaus Strele, Waterbottle45, coquin, phiwan, MadByte, Galg, ChuckLorris, Victor, lejouson, quack, NEXNC, Justus, thousandlegs, Sigitas, RFS, oskhen, Noel, Kristof Bajan, pelda, talys, invalidusrname, fragile, guusw, av8avenger, R, Martin Fournier, Jack, Spr3eZ, revilo196, Toft, JerwuQu, Aymir, blocho, Allan, Nick M, Andrew, Monssaf, Denis S. ### And all hyprperks members! **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.53.0...v0.53.1
Another patch release with a few fixes backported on top of 0.52.1. ## Fixes Backported - presentation: only send sync output on presented (#12255) - renderer: fix noscreenshare layerrule popups (#12260) - renderer/ime: fix fcitx5 popup artifacts (#12263) - screencopy: fix possible crash in renderMon - internal: put Linux-only header behind ifdef (#12300) - internal: fix crash at startup on freebsd (#12298) - cmake,meson: fix inclusion of gpg info in git commit info (#12302) - cursor: ensure cursor reset on changed window states (#12301) - plugin/hook: disallow multiple hooks per function (#12320) - protocols/workspace: fix crash in initial group sending - renderer: stop looping over null texture surfaces (#12446) - protocols/workspace: avoid crash on inert outputs - buffers: revert state merging (#12461) - protocols/lock: fix missing output enter on surface (#12448) - dmabuf: sys/ioctl is required for ioctl (#12483) ## Special thanks Special thanks as always to: ### Our sponsors #### Diamond 37Signals #### Gold Framework ### Donators #### Top Supporters: --, mukaro, Semtex, Tom94, soy_3l.beantser, SaltyIcetea, Freya Elizabeth Goins, lzieniew, Kay, ExBhal, MasterHowToLearn, 3RM, Tonao Paneguini, Sierra Layla Vithica, Anon2033, Brandon Wang, DHH, alexmanman5, Theory_Lukas, Blake-sama, Seishin, Hunter Wesson, Illyan, TyrHeimdal, elafarge, Arkevius, d, RaymondLC92, MadCatX, johndoe42, alukortti, Jas Singh, taigrr, Xoores, ari-cake, EncryptedEnigma #### New Monthly Supporters: KongrooParadox, Jason Zimdars, grateful anon, Rafael Martins, Lu, Jan, Yves, Luiz Aquino, navik, EvgenyRachlenko, GENARO LOYA DOUR, trustable0370, Jorge Y. C. Rodriguez, Bobby Rivera, steven_s, Pavel Dušek, Toshitaka Agata, mandrav #### One-time Donators: ryorichie, shikaji, tskulbru, szczot3k, Vincent F, myname0101, MirasM, Daniel Doherty, giri, rasa, potato, Jams Mendez, collin, koss054, LouisW, Mattisba, visooo, Razorflak, ProPatte, sgt, Bouni, EarthsonLu, W, Faab, Kenan Sharifli, ArchXceed, benvonh, J.P. Wing, 0xVoodoo, ayhan, Miray Gohan, quiron, August Lilleaas, ~hommel, Ethan Webb, fraccy, Kevin, Carlos Solórzano Cerdas, kastr, jmota, pch, darksun, JoseConseco, Maxime Gagne, joegas, Guido V, RedShed, Shane, philweber, romulus, nuelle, Nick M, Mustapha Mond, bfester, Alvin Lin, 4everN00b, riad33m, astraccato, spirossi, drxm1, anon, conig, Jonas Thern, Keli, Martin, gianu, Kevin K, @TealRaya, Benji, Borissimo, Ebbo, John, zoth, pampampampampamponponponponponponpampampampa, Himayat, Alican, curu, stelman, Q, frigidplatypus, Dan Page, Buzzard, mknpcz, bbutkovic, neonvoid, Pim Polderman, Marsimplodation, cloudscripting, StevenWalter, i_am_terence, mester, Jacob Delarosa, hl, alex, zusemat, LRVR, MichelDucartier, Jon Fredeen, Chris, maxx, Selim, Victor Rosenthal, Luis Gonzalez, say10, mcmoodoo, Grmume, Nilpointer, Lad, Pathief, Larguma, benniheiss, cannikin, NoeL, hyprcroc, Sven Krause, Matej Drobnič, vjg73_Gandhi2, SotoEstevez, jeroenvlek, SymphonySimper, simplectic, tricked, Kacper, nehalandrew, Jan Ihnen, Blub, Jonwin, tucker87, outi, chrisxmtls, pseudo, NotAriaN, ckoblue, xff, hellofriendo, Arto Olli, Jett Thedell, Momo On Code, MrFry, stjernstrom, nastymatt, iDie, IgorJ, andresfdz7, Joshua, Koko, joenu, HakierGrzonzo, codestothestars, Jrballesteros05, hanjoe, Quantumplation, mentalAdventurer, Sebastian Grant, Reptak, kiocone, dfsdfs, cdevroe, nemalex, Somebody, Nates, Luan Pinheiro, drm, Misha Andreev, Cedric ### And all hyprperks members! **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.52.1...v0.52.2
A patch release backporting some fixes from main onto 0.50.0. ## Fixes backported - socket2: fixup invalid ws passed to openwindow - config: default drag_lock to 0 - framescheduler: dont if check deleted weakpointer (#11063) - compositor: properly set infinite region on null input - framescheduler: check monitor validity in doLater - snap: use window extents instead of border size (#11079) - opengl: detect android fence support and disable explicit if it's missing (#11077) - eventloop: avoid duplicate timers - eventloop: improve timer handling to avoid crashes - sessionlock: fix timer logic on unsafe state ## Special thanks Special thanks as always to the people who help fund this entire project: #### Top Supporters: Tonao Paneguini, MasterHowToLearn, Seishin, Amaan Q., --, SomeMediocreGamer, ExBhal, Xoores, Affax, Brandon Wang, mukaro, arc-d3v, ari-cake, Kay, RaymondLC92, travmonkey, alukortti, alexmanman5, taigrr, DHH, inittux111, Jas Singh, johndoe42, 3RM, Arkevius, Hunter Wesson, SA1G0N, Theory_Lukas, AuHunter #### New Monthly Supporters: Simen Graaten, Josh Ichiyo Lovejoy, idonthaveaname, edrodgers731, Narrador, blazebis, Nytem, kenya888, exebob, Gavilaan, JanCoe, Lasovar, Marcus Yanello, Freerunner, fossjunkie, ReaprXRam, ionut cristian cucu, yturijea, Phush, JoeKatar, Gábor Turu, Mircevski, Ronja, Anthony, N, alepez, CaptnJayce, dangatang, ismd, calumhalpin, Mike Zakes, Hyperactive Racoon #### One-time Donators: AsciiWolf, smolley, Porkinz, inlovewithhyprland, afrianjunior, Lungaro, JonesMcJon, syndicatedshannon, Tomfried, Alex M, mtj, Dustin Mason, Ashtefere, Jayge Ekenstam, Oofyeet, hmed69, Billy (bootlegbilly), pachicobue, dentych, yoorse, dorebase2006, vooshy, IamNanjo, aravinth, mbalasz, Fandermir, Munsio, Bracket, An appreciator, Luca Antonelli, Nik Reid, huckb, NathBeLive, Mateusz Wosik, Giri, NerdyByNature, Sam K, Brookesy, emeric, flashgnash, Pollo809, garypippi, Tor, Alosnah, SnUwU, DeaDvey, xxx, Nutel, kes, Franchise2099, Unboxed kitten, Oz Diamond, ddubs, Purian23, kurwa, mangust, Roman, Sumiinix, Afif Miguel Castañon, Kyurim, wyrd, Skallen, Doc, Otard95, R2D2_1234, revolverxd, sonicv6#7621, eracz **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.50.0...v0.50.1
Hello there, can you hear me? I've got some Hyprland news for ya. ## New features: - Core: Add a test suite (#9297) - config/monitor: Add monitor v2 HDR rules (#10623) - config: add a new monitor v2 config syntax (#9761) - config: add group: selector (#10588) - config: add maxwidth monitor resolution mode (#10528) - core: add auto-center arrangements (#10527) - drm-lease: Add Multi-GPU Support (#10099) - dwindle: add better automatic window drag and drop direction detection (#9704) - dwindle: add the ability to specify an aspect ratio for a singular window (#10650) - grpupbar: Add config options to color inactive and locked groupbar titles (#10667) - input: add sticky option for drag_lock (#10702) - internal: added error log when getEdgeDefinedPoint is impossible (#10462) - keybinds: add an option to respect gaps out for floating to movewindow (#9360) - permissions: add permission management for keyboards (#10367) - protocols: add ext-workspace implementation (#10818) - renderer/cm: Add automatic hdr (#9785) - renderer: Added a pointer position uniform to the screen shader. (#10821) - renderer: add mouse zoom animations (#10882) - renderer: add wrapping options to renderTexture method (#10497) - renderer: add wrapping options to renderTextureWithBlur method (#10807) - snap: add option to respect gaps (#10524) - unbind: add unbind all - windowrules: Add noscreenshare (#10482) ## Fixes: - compositor: fix race to finish on null buffer (#10970) - config: fix crash on misnamed variable (#10549) - config: fix inconsistant hint of default value (#10556) - config: add missing description for enforce_permissions - cursor: fix screencopy cursor pos and duplicate shape with sw cursors (#10519) - debugOverlay: fix tick measurement - eventLoop: fixup event source callbacks - hookSystem: avoid using manual mem management, fix leak - hyprpm: fix crash with enable without an arg - hyprpm: fix execute permission bit on installed dirs (#10435) - hyprpm: fix typo in help message (#10687) - hyprland-uwsm.desktop: Add TryExec - hyprpm: add missing include for libc++ after 1c530cbc66db (#10344) - hyprpm: check version and update automatically on add (#10706) - hyprpm: ignore pins when adding a package with a git rev (#10502) - hyprpm: refuse adding a new repo without update - input: Fix incorrect localcoords with a surface above an XWayland window (#10773) - input: fix mouseDown triggering hl ops on locked (#10809) - internal: Fix HyprError not displaying at startup (#10606) - opengl: add missing skipcm if case (#10888) - opengl: add missing vao for screenshader (#10397) - protocols/cm: Fix preferred image description (#11026) - protocols/cm: fix wp invalid luminance check (#10752) - protocols/subcompositor: fixup place_above and _below - protocols: Remove incorrect CM proto debug check and fix preferred image description (#11023) - renderer: fix incorrect cursor position when screencopy region with monitor scaling (#10675) - renderer: fixup some missing fadeout cases with special - renderer: minor damage fixes - screencopy: fix applying `noscreenshare` to invisible special workspaces (#10628) - screencopy: fix improper box calculations for transforms (#10870) - screencopy: fix incorrect noscreenshare positions with monitor scaling (#10674) - snap: fix `border_overlap` option for monitor snapping (#10987) - xwayland: Fix crash when copying from wayland to xwayland (#10786) - xwayland: fix minor errors in previous refactor (#10763) - xwayland: fix xwayland -> wayland clipboard (#10646) ## Other: - CMake: disable tests by default (#10899) - Nix: filter src using fileset - README: Update image cdn (#10722) - README: update previews - Renderer: Implement new render scheduling (#10936) - alphamodifier: move to unique ptrs - anr: make dialog disappear if the app dies - assets: update header - asyncDialogBox: lock box in fdWrite to prevent a uaf (#10759) - buffer: check if buffer fd already readable (#10894) - buffer: don't use crazy listener::emit() - build: require hyprgraphics>=0.1.3 (#10350) - cmake: disable gprof by default - compositor: dont send around int max values - config: Restore auto-center-* for monitors (#10660) - config: disable hw on mgpu nvidia by default (#11018) - config: disable new_render_scheduling by default - config: nuke explicit_sync settings - config: remove render_ahead* config options - config: use parseScale for monitorv2 (#10852) - core: Include cstring whenever strncpy is used (#10404) - core: drop the legacy renderer (#10408) - core: never use hw cursors when tearing - core: use new typed signals from hu (#10853) - ctmcontrol: move to unique ptrs - cursor: reset hc data after theme change - cursorshape: use unique ptrs - debug/pass: show live/precompile blur in debug - desktop: prevent layers from dismissing their own seat grabs on map (#10417) - dmabuf: move to unique ptrs - eventloop: RAII the even source on readable fd - groupbar: force recalc on visibility changes - hyprctl: Remove exceptions, use modern error handling (#10664) - hyprctl: don't detect a negative value as a parameter (#10671) - hyprctl: print no open windows instead of invalid request on empty clients - hyprctl: replace read-only strings with std::string_view (#10851) - hyprpm: print all dependencies that are missing (#10907) - hyprpm: reject remove without a param - hyprpm: switch to numeric owner/group after f8bbe5124c00 (#10345) - input: always allow focus to permission popups - input: disallow virtual keyboards from changing LED state (#10402) - input: do not send mouse events when outside of a surface (#10416) - input: ensure seat grabs from exclusive layers can be dismissed (#10418) - input: grab the correct active workspace on mouseMove - input: revert #10416 and #10418 - input: support configuring drag_3fg from libinput (#10631) - input: unhide cursor on tablet events after touch events (#10484) - internal: Catch filesystem exceptions while iterating RunTimeDir (#10648) - internal: Center window on parent if available (#10582) - internal: Prevent double-free in attemptDirectScanout (#10974) - internal: Use `using` instead of `#define` to alias smart pointers (#10673) - internal: clean up dead snapshot code - internal: embed example config (#10608) - internal: handle setGroupCurrent properly on fs groups (#10920) - internal: iso C++ prohibits anonymous structs (#10955) - internal: refactor to use empty() (#10599) - internal: removed Herobrine - monintor: remove rathandler - monitor: ensure autoDir is applied when changed (#10672) - monitor: mark 0, 0 presentation timestamps as invalid - opengl: avoid reallocations in EGLImage (#10960) - opengl: optimize shaders and reduce unneeded drawcalls (#10364) - opengl: publicize shader creation/usage functions (#10378) - opengl: use a stack for storing monitor transform enabled - pass/surface: make sure popup blurs are marked for require live blur - pass: overload TexPass constructor - permissions: properly print config requests for plugins - plugins: don't update config plugins on state unchanged - plugins: made currentWindow available in RENDER_PRE_WINDOW (#10957) - presentation: move to unique ptrs - protocols/hyprland-surface: account for scaled monitor positions (#10415) - protocols: simulate mouse movement after activating a toplevel (#10429) - protocols: support xdg-shell v7 - protocols: whitelist wp_color_manager_v1 for security_context (#10723) - refactor: replace all `typedef` with `using` (#10594) - refactor: use std::ranges whenever possible (#10584) - renderer: always render snapshots as 8bit - renderer: clamp rounding_power (#10816) - renderer: make lock fail textures dynamically loaded - renderer: move render calculation behind if case - renderer: reduce a lot of glcalls and cache various states (#10757) - renderer: refuse rendering invalid resolutions - renderer: render blur on fade out (#10356) - renderer: use alpha for the lockttytext texture - renderer: use makeUnique for session-lock render passes (#11019) - renderpass: use unique ptr instead of shared ptr - screencopy: ignore hidden windows in noscreenshare - screencopy: store a fb before permission popup if the permission is pending (#10455) - session-lock: don't render workspaces when locked (#10865) - sessionlock: restore cursor if hidden on unlock (#10889) - shader: replace texture2d with texture (#10893) - singlepixel: move to unique ptrs - snap: move `gapOffset` logic outside of for loop (#10861) - splashes: add zacoons' splash - texture: zero out the cached states in destroy (#10954) - versionkeeper: don't pop up on initial launch - windowrules/move: clamp max pos in onscreen to avoid assert crash - xwayland: Don't leave shell process (#10802) - xwayland: Use RAII instead or freeing memory manually (#10677) - xwayland: do not include xcb.h when xwayland is disabled (#10407) - xwayland: pad pid with leading zeroes in lockfile - xwl: dont mark the even source as readable - xwm: Refactored functions in XWM.cpp (#10569) ## Special thanks As always, special thanks to these people for donating to keep the project running: #### Top Supporters: Tonao Paneguini, MasterHowToLearn, Seishin, Amaan Q., --, SomeMediocreGamer, ExBhal, Xoores, Affax, Brandon Wang, mukaro, arc-d3v, ari-cake, Kay, RaymondLC92, travmonkey, alukortti, alexmanman5, taigrr, DHH, inittux111, Jas Singh, johndoe42, 3RM, Arkevius, Hunter Wesson, SA1G0N, Theory_Lukas, AuHunter #### New Monthly Supporters: Simen Graaten, Josh Ichiyo Lovejoy, idonthaveaname, edrodgers731, Narrador, blazebis, Nytem, kenya888, exebob, Gavilaan, JanCoe, Lasovar, Marcus Yanello, Freerunner, fossjunkie, ReaprXRam, ionut cristian cucu, yturijea, Phush, JoeKatar, Gábor Turu, Mircevski, Ronja, Anthony, N, alepez, CaptnJayce, dangatang, ismd, calumhalpin, Mike Zakes, Hyperactive Racoon #### One-time Donators: AsciiWolf, smolley, Porkinz, inlovewithhyprland, afrianjunior, Lungaro, JonesMcJon, syndicatedshannon@gmail.com, Tomfried, Alex M, mtj, Dustin Mason, Ashtefere, Jayge Ekenstam, Oofyeet, hmed69, Billy (bootlegbilly), pachicobue, dentych, yoorse, dorebase2006, vooshy, IamNanjo, aravinth, mbalasz, Fandermir, Munsio, Bracket, An appreciator, Luca Antonelli, Nik Reid, huckb, NathBeLive, Mateusz Wosik, Giri, NerdyByNature, Sam K, Brookesy, emeric, flashgnash, Pollo809, garypippi, Tor, Alosnah, SnUwU, DeaDvey, xxx, Nutel, kes, Franchise2099, Unboxed kitten, Oz Diamond, ddubs, Purian23, kurwa, mangust, Roman, Sumiinix, Afif Miguel Castañon, Kyurim, wyrd, Skallen, Doc, Otard95, R2D2_1234, revolverxd, sonicv6#7621, eracz ## New Contributors * @YukariChiba made their first contribution in https://github.com/hyprwm/Hyprland/pull/10407 * @zacoons made their first contribution in https://github.com/hyprwm/Hyprland/pull/10462 * @dumbasPL made their first contribution in https://github.com/hyprwm/Hyprland/pull/10502 * @karaolidis made their first contribution in https://github.com/hyprwm/Hyprland/pull/10528 * @mitsuruu made their first contribution in https://github.com/hyprwm/Hyprland/pull/10595 * @kevichi7 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10582 * @gbslr made their first contribution in https://github.com/hyprwm/Hyprland/pull/10588 * @XPhyro made their first contribution in https://github.com/hyprwm/Hyprland/pull/10628 * @FridayFaerie made their first contribution in https://github.com/hyprwm/Hyprland/pull/10661 * @UfukUstali made their first contribution in https://github.com/hyprwm/Hyprland/pull/10631 * @LuukBlankenstijn made their first contribution in https://github.com/hyprwm/Hyprland/pull/10671 * @ilusha420 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10687 * @vlofgren made their first contribution in https://github.com/hyprwm/Hyprland/pull/10650 * @otommod made their first contribution in https://github.com/hyprwm/Hyprland/pull/10723 * @Joel-Valenciano made their first contribution in https://github.com/hyprwm/Hyprland/pull/10099 * @jirassimok made their first contribution in https://github.com/hyprwm/Hyprland/pull/10667 * @seven-mile made their first contribution in https://github.com/hyprwm/Hyprland/pull/10773 * @rrvsh made their first contribution in https://github.com/hyprwm/Hyprland/pull/10816 * @aphelei made their first contribution in https://github.com/hyprwm/Hyprland/pull/10882 * @coffeeispower made their first contribution in https://github.com/hyprwm/Hyprland/pull/10919 * @bruhman325 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10907 * @jmanc3 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10957 * @FrancisTheCat made their first contribution in https://github.com/hyprwm/Hyprland/pull/10821 **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.49.0...v0.50.0
Hello there, can you hear me? I've got some Hyprland news for ya. ## New features: - Core: Add a test suite (#9297) - config/monitor: Add monitor v2 HDR rules (#10623) - config: add a new monitor v2 config syntax (#9761) - config: add group: selector (#10588) - config: add maxwidth monitor resolution mode (#10528) - core: add auto-center arrangements (#10527) - drm-lease: Add Multi-GPU Support (#10099) - dwindle: add better automatic window drag and drop direction detection (#9704) - dwindle: add the ability to specify an aspect ratio for a singular window (#10650) - grpupbar: Add config options to color inactive and locked groupbar titles (#10667) - input: add sticky option for drag_lock (#10702) - internal: added error log when getEdgeDefinedPoint is impossible (#10462) - keybinds: add an option to respect gaps out for floating to movewindow (#9360) - permissions: add permission management for keyboards (#10367) - protocols: add ext-workspace implementation (#10818) - renderer/cm: Add automatic hdr (#9785) - renderer: Added a pointer position uniform to the screen shader. (#10821) - renderer: add mouse zoom animations (#10882) - renderer: add wrapping options to renderTexture method (#10497) - renderer: add wrapping options to renderTextureWithBlur method (#10807) - snap: add option to respect gaps (#10524) - unbind: add unbind all - windowrules: Add noscreenshare (#10482) ## Fixes: - compositor: fix race to finish on null buffer (#10970) - config: fix crash on misnamed variable (#10549) - config: fix inconsistant hint of default value (#10556) - config: add missing description for enforce_permissions - cursor: fix screencopy cursor pos and duplicate shape with sw cursors (#10519) - debugOverlay: fix tick measurement - eventLoop: fixup event source callbacks - hookSystem: avoid using manual mem management, fix leak - hyprpm: fix crash with enable without an arg - hyprpm: fix execute permission bit on installed dirs (#10435) - hyprpm: fix typo in help message (#10687) - hyprland-uwsm.desktop: Add TryExec - hyprpm: add missing include for libc++ after 1c530cbc66db (#10344) - hyprpm: check version and update automatically on add (#10706) - hyprpm: ignore pins when adding a package with a git rev (#10502) - hyprpm: refuse adding a new repo without update - input: Fix incorrect localcoords with a surface above an XWayland window (#10773) - input: fix mouseDown triggering hl ops on locked (#10809) - internal: Fix HyprError not displaying at startup (#10606) - opengl: add missing skipcm if case (#10888) - opengl: add missing vao for screenshader (#10397) - protocols/cm: Fix preferred image description (#11026) - protocols/cm: fix wp invalid luminance check (#10752) - protocols/subcompositor: fixup place_above and _below - protocols: Remove incorrect CM proto debug check and fix preferred image description (#11023) - renderer: fix incorrect cursor position when screencopy region with monitor scaling (#10675) - renderer: fixup some missing fadeout cases with special - renderer: minor damage fixes - screencopy: fix applying `noscreenshare` to invisible special workspaces (#10628) - screencopy: fix improper box calculations for transforms (#10870) - screencopy: fix incorrect noscreenshare positions with monitor scaling (#10674) - snap: fix `border_overlap` option for monitor snapping (#10987) - xwayland: Fix crash when copying from wayland to xwayland (#10786) - xwayland: fix minor errors in previous refactor (#10763) - xwayland: fix xwayland -> wayland clipboard (#10646) ## Other: - CMake: disable tests by default (#10899) - Nix: filter src using fileset - README: Update image cdn (#10722) - README: update previews - Renderer: Implement new render scheduling (#10936) - alphamodifier: move to unique ptrs - anr: make dialog disappear if the app dies - assets: update header - asyncDialogBox: lock box in fdWrite to prevent a uaf (#10759) - buffer: check if buffer fd already readable (#10894) - buffer: don't use crazy listener::emit() - build: require hyprgraphics>=0.1.3 (#10350) - cmake: disable gprof by default - compositor: dont send around int max values - config: Restore auto-center-* for monitors (#10660) - config: disable hw on mgpu nvidia by default (#11018) - config: disable new_render_scheduling by default - config: nuke explicit_sync settings - config: remove render_ahead* config options - config: use parseScale for monitorv2 (#10852) - core: Include cstring whenever strncpy is used (#10404) - core: drop the legacy renderer (#10408) - core: never use hw cursors when tearing - core: use new typed signals from hu (#10853) - ctmcontrol: move to unique ptrs - cursor: reset hc data after theme change - cursorshape: use unique ptrs - debug/pass: show live/precompile blur in debug - desktop: prevent layers from dismissing their own seat grabs on map (#10417) - dmabuf: move to unique ptrs - eventloop: RAII the even source on readable fd - groupbar: force recalc on visibility changes - hyprctl: Remove exceptions, use modern error handling (#10664) - hyprctl: don't detect a negative value as a parameter (#10671) - hyprctl: print no open windows instead of invalid request on empty clients - hyprctl: replace read-only strings with std::string_view (#10851) - hyprpm: print all dependencies that are missing (#10907) - hyprpm: reject remove without a param - hyprpm: switch to numeric owner/group after f8bbe5124c00 (#10345) - input: always allow focus to permission popups - input: disallow virtual keyboards from changing LED state (#10402) - input: do not send mouse events when outside of a surface (#10416) - input: ensure seat grabs from exclusive layers can be dismissed (#10418) - input: grab the correct active workspace on mouseMove - input: revert #10416 and #10418 - input: support configuring drag_3fg from libinput (#10631) - input: unhide cursor on tablet events after touch events (#10484) - internal: Catch filesystem exceptions while iterating RunTimeDir (#10648) - internal: Center window on parent if available (#10582) - internal: Prevent double-free in attemptDirectScanout (#10974) - internal: Use `using` instead of `#define` to alias smart pointers (#10673) - internal: clean up dead snapshot code - internal: embed example config (#10608) - internal: handle setGroupCurrent properly on fs groups (#10920) - internal: iso C++ prohibits anonymous structs (#10955) - internal: refactor to use empty() (#10599) - internal: removed Herobrine - monintor: remove rathandler - monitor: ensure autoDir is applied when changed (#10672) - monitor: mark 0, 0 presentation timestamps as invalid - opengl: avoid reallocations in EGLImage (#10960) - opengl: optimize shaders and reduce unneeded drawcalls (#10364) - opengl: publicize shader creation/usage functions (#10378) - opengl: use a stack for storing monitor transform enabled - pass/surface: make sure popup blurs are marked for require live blur - pass: overload TexPass constructor - permissions: properly print config requests for plugins - plugins: don't update config plugins on state unchanged - plugins: made currentWindow available in RENDER_PRE_WINDOW (#10957) - presentation: move to unique ptrs - protocols/hyprland-surface: account for scaled monitor positions (#10415) - protocols: simulate mouse movement after activating a toplevel (#10429) - protocols: support xdg-shell v7 - protocols: whitelist wp_color_manager_v1 for security_context (#10723) - refactor: replace all `typedef` with `using` (#10594) - refactor: use std::ranges whenever possible (#10584) - renderer: always render snapshots as 8bit - renderer: clamp rounding_power (#10816) - renderer: make lock fail textures dynamically loaded - renderer: move render calculation behind if case - renderer: reduce a lot of glcalls and cache various states (#10757) - renderer: refuse rendering invalid resolutions - renderer: render blur on fade out (#10356) - renderer: use alpha for the lockttytext texture - renderer: use makeUnique for session-lock render passes (#11019) - renderpass: use unique ptr instead of shared ptr - screencopy: ignore hidden windows in noscreenshare - screencopy: store a fb before permission popup if the permission is pending (#10455) - session-lock: don't render workspaces when locked (#10865) - sessionlock: restore cursor if hidden on unlock (#10889) - shader: replace texture2d with texture (#10893) - singlepixel: move to unique ptrs - snap: move `gapOffset` logic outside of for loop (#10861) - splashes: add zacoons' splash - texture: zero out the cached states in destroy (#10954) - versionkeeper: don't pop up on initial launch - windowrules/move: clamp max pos in onscreen to avoid assert crash - xwayland: Don't leave shell process (#10802) - xwayland: Use RAII instead or freeing memory manually (#10677) - xwayland: do not include xcb.h when xwayland is disabled (#10407) - xwayland: pad pid with leading zeroes in lockfile - xwl: dont mark the even source as readable - xwm: Refactored functions in XWM.cpp (#10569) ## Special thanks As always, special thanks to these people for donating to keep the project running: #### Top Supporters: Tonao Paneguini, MasterHowToLearn, Seishin, Amaan Q., --, SomeMediocreGamer, ExBhal, Xoores, Affax, Brandon Wang, mukaro, arc-d3v, ari-cake, Kay, RaymondLC92, travmonkey, alukortti, alexmanman5, taigrr, DHH, inittux111, Jas Singh, johndoe42, 3RM, Arkevius, Hunter Wesson, SA1G0N, Theory_Lukas, AuHunter #### New Monthly Supporters: Simen Graaten, Josh Ichiyo Lovejoy, idonthaveaname, edrodgers731, Narrador, blazebis, Nytem, kenya888, exebob, Gavilaan, JanCoe, Lasovar, Marcus Yanello, Freerunner, fossjunkie, ReaprXRam, ionut cristian cucu, yturijea, Phush, JoeKatar, Gábor Turu, Mircevski, Ronja, Anthony, N, alepez, CaptnJayce, dangatang, ismd, calumhalpin, Mike Zakes, Hyperactive Racoon #### One-time Donators: AsciiWolf, smolley, Porkinz, inlovewithhyprland, afrianjunior, Lungaro, JonesMcJon, syndicatedshannon@gmail.com, Tomfried, Alex M, mtj, Dustin Mason, Ashtefere, Jayge Ekenstam, Oofyeet, hmed69, Billy (bootlegbilly), pachicobue, dentych, yoorse, dorebase2006, vooshy, IamNanjo, aravinth, mbalasz, Fandermir, Munsio, Bracket, An appreciator, Luca Antonelli, Nik Reid, huckb, NathBeLive, Mateusz Wosik, Giri, NerdyByNature, Sam K, Brookesy, emeric, flashgnash, Pollo809, garypippi, Tor, Alosnah, SnUwU, DeaDvey, xxx, Nutel, kes, Franchise2099, Unboxed kitten, Oz Diamond, ddubs, Purian23, kurwa, mangust, Roman, Sumiinix, Afif Miguel Castañon, Kyurim, wyrd, Skallen, Doc, Otard95, R2D2_1234, revolverxd, sonicv6#7621, eracz ## New Contributors * @YukariChiba made their first contribution in https://github.com/hyprwm/Hyprland/pull/10407 * @zacoons made their first contribution in https://github.com/hyprwm/Hyprland/pull/10462 * @dumbasPL made their first contribution in https://github.com/hyprwm/Hyprland/pull/10502 * @karaolidis made their first contribution in https://github.com/hyprwm/Hyprland/pull/10528 * @mitsuruu made their first contribution in https://github.com/hyprwm/Hyprland/pull/10595 * @kevichi7 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10582 * @gbslr made their first contribution in https://github.com/hyprwm/Hyprland/pull/10588 * @XPhyro made their first contribution in https://github.com/hyprwm/Hyprland/pull/10628 * @FridayFaerie made their first contribution in https://github.com/hyprwm/Hyprland/pull/10661 * @UfukUstali made their first contribution in https://github.com/hyprwm/Hyprland/pull/10631 * @LuukBlankenstijn made their first contribution in https://github.com/hyprwm/Hyprland/pull/10671 * @ilusha420 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10687 * @vlofgren made their first contribution in https://github.com/hyprwm/Hyprland/pull/10650 * @otommod made their first contribution in https://github.com/hyprwm/Hyprland/pull/10723 * @Joel-Valenciano made their first contribution in https://github.com/hyprwm/Hyprland/pull/10099 * @jirassimok made their first contribution in https://github.com/hyprwm/Hyprland/pull/10667 * @seven-mile made their first contribution in https://github.com/hyprwm/Hyprland/pull/10773 * @rrvsh made their first contribution in https://github.com/hyprwm/Hyprland/pull/10816 * @aphelei made their first contribution in https://github.com/hyprwm/Hyprland/pull/10882 * @coffeeispower made their first contribution in https://github.com/hyprwm/Hyprland/pull/10919 * @bruhman325 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10907 * @jmanc3 made their first contribution in https://github.com/hyprwm/Hyprland/pull/10957 * @FrancisTheCat made their first contribution in https://github.com/hyprwm/Hyprland/pull/10821 **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.49.0...v0.50.0
This is a bugfix release with some patches cherry-picked from main on top of 0.48.0. ## Fixes backported - renderer: Simplify and fix hdr metadata setting - seat: avoid sending null surfaces in leave/enter events - xwl: don't close the fd too early - groupbar: apply scaling factor to text - pass: remove unused timeline in texpass - groupbar: round boxes - groupbar: include clipBox in opaque calculations - opengl: don't attempt to compile cm on gles3.0 - surfacestate: track and apply updated state - internal: fix minor ubsan errors - workspaces: minor fixes to persistence - surfacestate: reset buffer bit before applying to current - core: don't damage the entire surface every frame - xwayland: cleanup server startup and fds ## Special thanks Special thanks to these gigachads for donating $$$ to help the project run: #### Top Supporters: Azelphur, arc-nix, ExBhal, SomeMediocreGamer, Robin B., yyyyyyyan, taigrr, Amaan Q., Xoores, Jas Singh, Theory_Lukas, JanRi3D, ari-cake, alukortti, RaymondLC92, MasterHowToLearn, johndoe42, Abdulaziz Al-Khater, AuHunter #### New Monthly Supporters: Brad S, tidal608, Wateir, Firstpick(FirstPick), xyrd, realivlis, DeepBlue416, omniprezenze, azunades, aljoshare, Felix, danksa, Litheos, theailer #### One-time Donators: SymphonySimper, FlorentL, Birbirl, MeaTLoTioN, elia, mearkat7, Darmock, KD, Yehoward, nyatta, Urbinholt, InTerFace, Marcos92, Rei (os.rei), 6thScythe, sayykii, HowlVenger, Massis, Somebody, 46620, skk9, Jeffrey, Hari, IgorJ, neriss, Sleroq, Insomnes, Stefano, AJ, Troy, JNC, Gery, Dafitt, Stefan Ernst, quake, lharlanx, pscschn, Bex Jonathan, AliAhmad02, KomariSpaghetti, wjyzxcv, Daniel, Zoltar358, Airor 987, CBeerta, lcassa, Guy incognito , nobody, m3hransh, Lunics, GeoffC, Tamas Tancos, mikelpint, Nathan Lepori, fxj9a, Volodymyr Shkvarok, Haltesh, omnicroissant, grmontpetit, jw, CheeseHunter117, Hunter Wesson, eternal, ddubs, noname, bones, pixel <3, eltwig, Jose, NN, Mikol, Pekka, Andi, Treeniks, derethil, dfseifert, munsman, Cespen, jlevesy, Bill Fucking Nye, Kumungus, crappy, Alin742, Nicholas Roth, sijink, alba4k, Barry, MK, Yasen **Full Changelog**: https://github.com/hyprwm/Hyprland/compare/v0.48.0...v0.48.1