Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
source-v0.50.0.tar.gz | 2025-07-16 | 54.2 MB | |
README.md | 2025-07-16 | 13.1 kB | |
v0.50.0 source code.tar.gz | 2025-07-16 | 48.1 MB | |
v0.50.0 source code.zip | 2025-07-16 | 48.4 MB | |
Totals: 4 Items | 150.7 MB | 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
withusing
(#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, 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