Skip to content

Releases: hyprwm/Hyprland

v0.24.0

08 Apr 12:20
Compare
Choose a tag to compare

A minor update with some small changes as usual. Brought to you by Yours Truly.

New features:

  • Feat: add initial class/title to hyprctl clients
  • LS: add blur and ignorezero rules
  • LS: support address: in layerrules
  • Meson: add rdynamic ld flag
  • Nix: add pango dep
  • config: add misc:suppress_portal_warnings
  • crashReporter: add hl ver
  • debug: added manual_crash
  • feat: add debug:enable_stdout_logs
  • feat: add forcergbx rule
  • feat: add pretty notifications
  • hyprctl: add notify
  • meson: add pango deps
  • notifs: add ICON_OK to icons
  • plugin api: add addNotificationV2
  • plugins: Add an API entry for finding functions by name
  • plugins: mark getFunctionAddressFromSignature deprecated

Fixes:

  • Fix crash in CConfigManager::parseKeyword (#1983)
  • Fix nix build options
  • Fix some typos (#1907)
  • Fix swiping onto a new workspace with multiple monitors. (#1971)
  • Input: fix always_follow_on_dnd
  • LS: fix support for legacy blurls
  • Misc FreeBSD fixes (#1926)
  • Nix: fix meson patch
  • Nix: fix meson patch again
  • Renderer: fix dim easing
  • config: fix long variables being substrd
  • dpms: fix key_press_enables_dpms
  • dpms: fix keyboard dpms
  • fix: a fullscreen bug. (#1821) (#1831)
  • groups: fix moving between displays
  • input: fix click-to-refocus not working on loose
  • input: fix minor issue with holding focus
  • keybinds: allow code: prefix
  • monitors: fix segfault on non-unsafe remove
  • monitors: fixes to unsafe mode
  • popups: fix heap-use-after-free
  • screencopy: fix crash
  • screencopy: fix incorrect resource error post
  • screencopy: fix read on incorrect monitor render
  • screencopy: minor fixes for damage_ring
  • shaders: fix missing discardAlphaZero

Other:

  • Better and more secure argument parsing, and code reformatting (#1976)
  • Feat: Introduce render_ahead_of_time (#1863)
  • Focus: warp cursor on movewindow
  • Hyprland Screencopy impl (#1800)
  • LS: don't try to get rules on non-existent ls
  • Nix: disable HiDPI for default package
  • Nix: rebase wlroots-hidpi patch
  • compositor: adjust xdp error cases
  • config: default manual animations to false
  • config: default no direct scanout to true
  • config: improve ux on workspace and transform
  • config: make default config use hyphenated dev names
  • core: remove old redundant shutdown stuff
  • crashReporter: try $XDG_CACHE_HOME before $HOME (#1920)
  • dbus: don't update vars in nests
  • debug: allow manual crash from hyprctl
  • debug: minor improvements to manual crash
  • debug: unbreak debug builds
  • docs: update crash report dirs
  • docs: update issue guidelines for asan env
  • events: guard output in change
  • examples: pull correct wlr dirs in example plugin
  • hyprctl: ignore null output monitors
  • input: don't overset resize icons on drag
  • input: don't set icon on held buttons without a drag
  • input: hold focus on mouse buttons
  • input: ignore constraints on touch
  • internal: comply to nofocus on vectorToWindow
  • internal: don't remove x11 children on parent remove
  • internal: listen to output.damage events
  • internal: make togglefloat better visible on small size deltas
  • internal: migrate to damage_ring
  • internal: release buttons on unmap
  • internal: rename ensureDPMS to ensureMonitorStatus
  • internal: wrap wlr surfaces (#1822)
  • keybinds: allow MOD1 as an alias of ALT
  • keybinds: improve movefocus on fullscreen
  • keybinds: remember last workspace on focusmonitor
  • layer: allow focus on top/overlay surfaces without a window
  • log: Move stdout log disabling to the end of init
  • log: log wlr logs to stdout
  • logs: disable stdout after init
  • monitors: don't refocus on apply rule
  • monitors: guard output in damageSurface
  • monitors: guard output when read
  • monitors: guard scale in onConnect
  • monitors: more guards for safety
  • monitors: remove from monitors on unsafe
  • monitors: update surface outputs on recover from unsafe
  • nix/xwayland-hidpi: update patch
  • notifs: use empty color for auto
  • output: handle needs_frame
  • plugins: use new lookups in example
  • render: plug missing software cursor unlocks
  • renderer: don't use simple rect on alphazero stencil
  • renderer: go back to rendering layers without reverse
  • screencopy: allow on legacy renderer
  • secret: removed Herobrine
  • subsurfaces: avoid reading destroyed surfaces
  • subsurfaces: guard node's surface
  • surface: set to nullptr after destroy()
  • swallow: move swallowed on workspace change
  • swipe: block on locked session
  • switches: do not fire on no change in toggle
  • toplevelExport: honor overlay_cursor
  • window: unassign surface on unmap
  • windowrules: allow monitor by str
  • windows: only connect unmap when mapped
  • workspaces: preserve pin on moves

New Contributors

Special Thanks

Special thanks to these hyprchads for donating me some moolah to keep this project goin':

  • speedboat
  • Murderburger_
  • pulsar256
  • HauntedCoffeePot
  • Lipt0nas
  • notoh
  • David N
  • Mathis
  • Zephan
  • HeadTriXz
  • Bill Nye
  • nehrbash
  • basstitan
  • jsw
  • Taylor Coffelt
  • System64
  • Sepi
  • Kulayb
  • TlasT

Full Changelog: v0.23.0beta...v0.24.0

v0.23.0beta

14 Mar 22:12
8531d1d
Compare
Choose a tag to compare

A minor update after a short wait as usual, brought to you by the one and only.

Notable changes

  • Your wrappers have been deprecated by the new env keyword. See the wiki
  • A powerful plugin system has landed. See the wiki
  • zwp_text_input_v1 support has landed for supporting IME under electron wayland.

New features:

  • Add env to example cfgs
  • Add option to disable/enable mouse window dragging animations (#1658)
  • Added center orientation to master layout (#1642)
  • Added decoration reserved area
  • Added mouseButton event
  • Added mouseMove event
  • Added moveintogroup dispatcher
  • Added moveoutofgroup dispatcher
  • Dwindle: Added default_split_ratio
  • add desc: to getMonitorFromString
  • add env dbus opt
  • add env keyword to cfg
  • add log tail to crash reports
  • add mfact setting for master layout (#1666)
  • add mouse_left _right
  • add toggle group lock
  • added a lockgroups dispatcher
  • allow blurls by address
  • blurls: fix address substr length
  • config: add key_press_enables_dpms
  • fix mfact not applying to addmaster (#1715)
  • groups: add deco on moveIntoGroup
  • Plugin System (#1590)

Fixes:

  • Bezier: Fix incorrect binary search in bezier approx
  • Buffer overflow fix (#1707)
  • Compositor: fix crash on exit
  • Fix clang compilation (#1697)
  • Fix fatal aborts with X11 OR windows
  • Fix plugin argument-less hyprctl calls (#1723)
  • Fix plugin config breakage (#1687)
  • Mirrors: minor fixes
  • Nix: fix build on aarch64
  • Nix: fix hidpi patch
  • Nix: fix hyprland-no-hidpi
  • Opengl: Fix forcefully setting missing time prop to final shader
  • Plugin Hooks: fix calls to %rip offsets
  • Plugin Hooks: fix original bytes on %rip accesses
  • blurls: fix address substr length
  • fix bezier step approx
  • fix changegroupactive back
  • fix credentials of invalid surfaces
  • fix cursor image on drag not resize
  • fix cyclenext on empty focus
  • fix mfact not applying to addmaster (#1715)
  • fixup constraint snapping on no hint
  • groups: fix fullscreen behavior with groups
  • ime: fix panels overflowing on corners
  • input: minor fixes for tiv1
  • minor fixes to X11 configure/or handling
  • minor fixes to touch handling
  • tiv1: minor fixes for crashes

Other:

  • Allow decos to request interactivity
  • Allow environment in config
  • CI/nix: update nix-install-action
  • CI/nix: update nix-install-action
  • Conform to X11 OR surfaces wanting focus
  • Convert reverse iterators to ranges
  • Don't set surface cursors for overriden
  • Draw HyprError on the last monitor
  • Enable manual anims by default
  • Events: Avoid sending std::nullptr_t in keyboardFocus
  • Include unmapped and hidden windows in hyprctl clients
  • Initialize priority managers before server init
  • Mirrors: remove accidentally leftover logs
  • Move AnimationManager::tick() to an event loop
  • Nix: move dependency overrides inside wlroots-hyprland call
  • Optionally expose time to screen shaders (#1700)
  • Readme: update to mention plugins
  • Refactor CMake and Make file (#1766)
  • Remove useless rax preserve across callq
  • Renderer: Nuke onWindowResize{start/end}
  • Reset cursor to pointer on focus on interactable deco
  • Resize on border icon bug (#1608)
  • Revert small incorrect change to dragging
  • Simplfy framebuffer erasing in cleanupFadingOut
  • Unload plugins on compositor cleanup (#1662)
  • Up the bezier bake count
  • Update the debug overlay
  • Use ${PREFIX} rather than /usr directly in Makefile, and force the build to attempt compilation even if the user does not have ${PREFIX}/lib write permissions (#1688)
  • allow focus to grouped windows
  • bugifx: updated urls poiting to old wiki pages (#1738)
  • config: explicitly use environ(7) after b03c897 (#1708)
  • crashReporter: remove inconsistent log from crash reports
  • deny configure requests on drag
  • dispatchers: disallow togglesplit on fullscreen
  • dispatchers: remember named workspaces in prev
  • don't snap on empty hint
  • generate coredumps on sigabrt too
  • ime: account for text height in popup calcs
  • input: text-input-v1 support (#1778)
  • layoutmgr: don't reenable layout on unchanged layout
  • make window reserved area less stupid
  • master: better cycle
  • movefocus: Set new workspace as active when focusing new monitor (#1640)
  • nuke cursorSI due to crashes
  • nuke unmanagedx11 vector
  • opengl: use a passthru shader for final wlr copy
  • remove old unused animation cfgs
  • reset signal handlers in unrecoverable
  • systemd: expand sysd import env script
  • unblock pure wayland compiles
  • update dbus env on exec-once dispatches
  • update decos on anim values update
  • update license on main branch (#1604)
  • use .txt for crash reports
  • use XCURSOR_SIZE for internal cursor size
  • use corner cursors on resize (#1638)
  • use sans for fonts instead of noto sans
  • xwl: don't try to get unmanaged titles

What's Changed

Special Thanks

Special thanks as usual to those gigachads for donating their pennies to me:

  • Dashie
  • Murderburger_
  • HauntedCoffeePot
  • Lipt0nas
  • speedboat
  • Jose Montilla
  • Pebor
  • Monty
  • Carlos Echenique
  • aestheticjack
  • mechgyver
  • Vibrose
  • pulsar256
  • pingu
  • Goggi

New Contributors

Full Changelog: v0.22.0beta...v0.23.0beta

v0.22.0beta

20 Feb 23:25
Compare
Choose a tag to compare

A minor update after a short wait, brought to you by Yours Truly.

Breaking changes

dwindle:col.group... -> general:col.group...
misc:no_vfr -> misc:vfr. bool, heavily recommended to leave at default on. Saves on CPU usage.
misc:vrr -> Adaptive sync of your monitor. 0 (off), 1 (on), 2 (fullscreen only). Default 0 to avoid white flashes on select hardware.

New features:

  • Add vrr to hyprctl monitor (#1560)
  • Added a crash reporter
  • Added an Event Hook System (#1578)
  • Added execr
  • Added support for layoutmsg params and added the param 'newfocus' for 'swapwithmaster' and 'focusmaster' (#1522)
  • add a minimize ipc event
  • add misc:mouse_move_focuses_monitor
  • add missing xwayland stub
  • add prev to getWorkspaceIDFromString
  • added activewindowv2
  • libinput: add tap_button_map (#1495)
  • move no_vfr to vfr and add vrr

Fixes:

  • Fix VRR JSON output in hyprctl monitors (#1562)
  • Fix some issues with a lost focus of the maximized window after using swapwithmaster in fullscreen mode (#1524)
  • fix compile for single_pixel_buffer_v1
  • fix crash with libc++ in appid
  • fix group data in hyprctl
  • fix json output in hyprctl animations
  • fix legacy system call to create hypr dir
  • fix quick start link
  • fix urgent hint order in code
  • fix warn
  • fix(hyprctl): allow dispatcher to have no args (#1464)
  • fixup LS scaling impl
  • fixup backtrace curpath
  • fixup stutter in rendering with toplevel_export

Other:

  • Allow to disable X11 backend separately from Xwayland after 5a750b4 (#1445)
  • Generate symbol info in release for crash reports
  • Get active VT via ioctl instead of sysfs after e90c5c6 (#1448)
  • Group/Tab Rework (#1580)
  • Implement ext-session-lock-v1
  • Only use true/false in default config to reduce confusion (#1517)
  • Resize on border (#1347)
  • Simulate mouse movement on unmap of popups and subsurfaces
  • Unbreak CrashReporter on FreeBSD (#1589)
  • Unbreak build with libc++ (#1457)
  • Update CMakeLists.txt (#1514)
  • Update blurriness of layersurfaces after hyprctl keyword blurls (#1493)
  • abort instead of exiting on sigsegv
  • adjust crash report paths
  • bring back dynamic ls geom updates
  • clear focus on failed unlock attempt
  • clear focus on lockscreen refocus
  • conform to unmanaged X11 activate requests
  • don't alter LS geom on unmap
  • don't loop border anim on disabled
  • enable UV calcs for all surfaces
  • enable single_pixel_buffer_v1
  • err on invalid transform in monitor cfg
  • explicit config path for autoreload config #1423 (#1494)
  • ext_workspace_unstable: send done after output_enter when wl_output is bound late (#1481)
  • ext_workspace_unstable: send output_enter when wl_output is bound late (#1480)
  • feat: border angle animations (#1469)
  • focusCurrentOrLast dispatcher (#1545)
  • force monitor focus on refocus
  • ignore VR headsets (#1555)
  • ignore damage on hidden windows in animationmanager
  • ignore hidden in allfloat
  • improve VRR state checking with updates to mosthz
  • make a null surface focus reset lastfocus
  • meson: build in release by default
  • minor adjustments to xwayland positioning
  • notify of fractional scale for LS-es
  • place sessionlock surfaces at correct coordinates
  • properly clamp size in dragging floating corners
  • properly meld groups together
  • properly rid of whitespace chars from cfg lines
  • refocus on monitor attach
  • remove constraint recheck log
  • render lockscreen in fullscreenworkspace
  • reset focus on lock surface destroy
  • reset layout-set render vars on floating
  • rethink visible flag in animmgr
  • scale the opaque region in blurring
  • simplify nullcheck in minimize
  • unset hidden at grouped remove
  • update issue guidelines for crash reports

Special Thanks

Special thanks as usual to these massive giga-ultra-hyper-chads for donating to me to keep this thing going:

  • HauntedCoffeePot
  • Lipt0nas
  • speedboat
  • Dashie
  • Murderburger_
  • Yves
  • jas
  • elias4352
  • kuripa
  • Carlos Echenique
  • LegitCamper
  • Mr.Ben
  • Goggi
  • pingu

New Contributors

Full Changelog: v0.21.0beta...v0.22.0beta

v0.21.0beta

28 Jan 18:38
Compare
Choose a tag to compare

Minor update after a short while. Re-released: backport crash fixes.

New features:

  • Add "on" and "off" for the bind of switch (#1342)
  • Add hyprctl animations
  • Add tablets calibration matrix for dynamic rotation with 2-in1/tablet PC usage (#1319)
  • Nix: update waybar-hyprland, add hyprland-nvidia (#1409)
  • add an urgent event
  • add fakefullscreen prop to windows in hyprctl
  • add hyprctl setprop
  • added binds:focus_preferred_method
  • added hyprctl seterror
  • added layer rules
  • added make model and serial to hyprctl monitors
  • added misc:hide_cursor_on_touch
  • feat: add focus to urgent or last window (#1402)
  • feat: dispatcher, add workspace renaming (#1336)
  • fix destroying addon in fractional scale impl
  • nix: add hyprland-protocols through pkgconfig (#1275)

Fixes:

  • fix clamp in monitor relative
  • fix cmake systemd header detection
  • fix color typo in hyprerror
  • fix cutting geometry on surfaces spilling out
  • fix deprecated-copy warn
  • fix destroying addon in fractional scale impl
  • fix dimaround with transformed displays
  • fix focus history on workspace jumps
  • fix font color in hyprerror
  • fix rounding exceeding max in single-line errors
  • fix up log types
  • fix: cursor changing on window move and resize (#1371)
  • fix: hyprland crashing wenn moving window -1 from first monitor (#1419)

Other:

  • better log wl socket adding and use auto if failed
  • Don't ignore previous maximise on defullscreen req (#1393)
  • Implement urgency hint for workspaces (#1379)
  • Nix CI: build xdg-desktop-portal-hyprland
  • Pin dispatcher for a specific window (#1340)
  • allow preblur for opaque surfaces if alpha not 1
  • better error handling around getMonitorFromString
  • change placement of isSwitchingToPrevious (#1388)
  • damage monitor on moveactive
  • damage monitor on stack rotations
  • damage on border change
  • describe layers in hyprctl layers
  • don't set cursor when timeout reached
  • dump monitor data after setting rules
  • escape json strings in hyprctl binds
  • expand region twice in blur damage
  • handle fullscreen requests on maximized windows
  • ignore null ls-es in cleanup
  • make hyprerror follow fadein anim
  • master layout: remember size & pos of floating windows on fullscreen 1 (#1374)
  • move window to top if floating activate
  • nix: react to another stdenv change (#1399)
  • recalculate layout on deco or border change
  • release mouse buttons on map from LS
  • remove restrictions from setprop for ints
  • repaint on dynamic decoration keywords
  • replace java envvar
  • reset dragged window on failed begin
  • scale hyprerror
  • send cursor updates on touch move
  • send enter for IME popups
  • small hyprerror revamp
  • update animated deco values after setprop
  • update wlroots dep
  • warp cursor on login to center
  • wp-fractional-scaling-v1 impl (#1373)

New Contributors

Special thanks

Special thanks to these gigachads for their financial support:

  • HauntedCoffeePot
  • Lipt0nas
  • speedboat
  • Dashie
  • Murderburger_
  • jacekpoz
  • Jose
  • Nesslo
  • Xeco
  • ShabirK
  • taka0
  • rig0r
  • Sam
  • Insert 5Star Name

Full Changelog: v0.20.1beta...v0.21.0beta

v0.20.1beta

07 Jan 12:55
Compare
Choose a tag to compare

Minor patch mostly to fix some crashes with overshot animations.

New features:

  • CI: add jq to Arch Meson build
  • Nix: add jq
  • added hyprctl binds

Fixes:

  • fix crashes and bug wiki link (#1333)
  • fix crashes on monitor ls remove
  • minor fixes for fakefullscreen
  • remove color rassert to fix overshot beziers

Other:

  • Build: use props file for versioning
  • clamp a instead of asserting
  • removed Herobrine

Special thanks

Special thanks to these gigachads for donating, as usual:

  • Karagra
  • HauntedCoffeePot
  • Lipt0nas
  • speedboat

New Contributors

Full Changelog: v0.20.0beta...v0.20.1beta

v0.20.0beta

05 Jan 22:36
Compare
Choose a tag to compare

A small update after a short wait brought to you by Yours Truly™ et al

Fun stuff, as usual.

New features:

  • Add 'exact' option for 'splitratio' (#1245)
  • Add sane permissions for /tmp/hypr
  • Added clang format (#1239)
  • Added make configdebug
  • add auto scale
  • add disabling keyboards
  • add touchdevice to devicevalue
  • added dim_special
  • added dimaround
  • added fakefullscreen
  • added maximize windowrule
  • added workspace_swipe_numbered
  • nix/hm-module: add disableAutoreload option
  • nix/hm-module: add nvidiaPatches option
  • nix/module: add nvidiaPatches option
  • nix/wlroots: add nvidia patch

Fixes:

  • Fix cycleprev bug introduced in 46891b1 (#1213) (#1242)
  • Fix focus not changing on (empty) workspace change (#1243)
  • fix blur damage spam on no blurred windows
  • fix damage issues with dimaround unmap
  • fix double remove in destroyKeyboard
  • fix dynamic monitor disables corrupting pmosthz
  • fix for gap in master layout orientation right #1171 (#1260)
  • fix group bar color calc
  • fix mouse resize on master orientations
  • fix restack in xwayland stubs
  • fix stupid typo
  • fix workspace special rules
  • minor xcursor and scale fixes
  • nix: update wlroots & fix updater

Other:

  • Allow floats in % rules
  • Drop Pango (unused) (#1251)
  • Drop X11 headers (unused) (#1252)
  • Make libinput tap-and-drag configurable (#1267)
  • Normalize color storage
  • Revert "Send initial focus to X11 type dialog"
  • Send initial focus to X11 type dialog
  • account for dimAround in fullboundingbox
  • adjust medium ppi values
  • allow binding tablets to outputs
  • clarify layout enum
  • clean draggedwindow in dragend
  • destroy LS-es on disconnected monitor
  • do not overwrite existing hyprland.desktop (#1228)
  • downgrade wlroots due to issues
  • get window under cursor in kill
  • ignore dim when pass popup
  • ignore focus to empty input region ls-es
  • ignore self in candidate floating
  • ignore silent workspace rules to same workspace
  • log more in group creation
  • mark blur dirty on dynamic blur keywords
  • move setActiveMonitor backup later in onDisconnect
  • nix/flake: remove merged overrides
  • nix/hm-module: make config optional
  • nix: handle reloading of multiple/dead instances on home manager generation switch
  • nix: update xdph
  • normalize gradients and denormalize in groupbar
  • prevent moving to invalid workspaces
  • refocus on special move
  • remember master width on master close
  • remember pos and size across fullscreen moves
  • remember size and pos on fullscreen 1
  • remove damage_entire_on_snapshot
  • remove main_mod
  • remove useless log
  • render overlay layers in reverse
  • render pinned windows above floating separately
  • respect ls protocol by forcing kb focus to kb interactive top and overlay
  • s/pkgs.system/pkgs.hostPlatform.system/g
  • sanity check workspaces after enabling mirror
  • set created over fullscreen in movetotop
  • simplify workspace sanity checks
  • support gradients in dwindle group colors
  • touch up the clang format and format all files
  • update debug coredump instructions
  • update readme images
  • update wlroots dep
  • use auto scale in default cfgs
  • use auto scale in fallback rule
  • use curves for special dim anim
  • verify lastmon status on connect
  • removed Herobrine

Special thanks

as usual, massive <3 to those chads for donating towards further development of this project:

  • Karagra
  • HauntedCoffeePot
  • Lipt0nas
  • speedboat
  • blue_struct
  • Merlin04
  • Aljosha
  • Struan
  • krylov_subspace
  • abs3nt

New Contributors

Full Changelog: v0.19.2beta...v0.20.0beta

v0.19.2beta

12 Dec 15:05
111d209
Compare
Choose a tag to compare

New features:

  • Added toplevel handle sharing
  • Revert "nix: add cachix to nixos module"
  • add changefloatingmode event
  • add missing c_str in debug log
  • ensure mapped state in addViewCoords
  • nix: add xdph to flake and enable it in the nixos module

Fixes:

  • fix drag resizing on special ws-es
  • fix memory safety in getWindowFromSurface
  • fix minor issues with move focus and follow mouse 0
  • fix sharing scaled windows
  • fix string escaping in CMakeLists.txt
  • fix up relative monitors
  • minor focus fixes with LS-es and moving windows

Other:

  • do not reject drags on visible windows over fullscreen
  • find a default workspace smarter
  • handle constraint cursor hints better
  • optimize m+- and e+- workspace opts
  • sort valid ws-es in relative
  • update hyprland-protocols
  • use anim callbacks and don't spam config resets in drag

Special Thanks

as usual, special thanks to these chads for donating to help the project stay alive:

  • speedboat
  • Karagra
  • HauntedCoffeePot
  • Lipt0nas
  • zjeffer
  • Matthias

New Contributors

Full Changelog: v0.19.1beta...v0.19.2beta

v0.19.1beta

07 Dec 19:39
Compare
Choose a tag to compare

Minor changes including bumping the wlroots ver, fixing a memory leak and some issues with
moving fullscreen windows.

New features:

  • add failsafe for dwindle windows
  • added nomaxsize rule
  • nix: add cachix to nixos module

Fixes:

  • fix lost windows clogging up memory
  • fix up moving to special workspace
  • minor fixes to special workspace behavior
  • minor toplevel sharing fixups

Other:

  • remove double semicolons
  • unset fullscreen in onWindowRemoved

Special thanks

Special thanks as always to these chads for donating to keep the project going:

  • Pebor
  • HauntedCoffeePot
  • Lipt0nas
  • speedboat
  • Karagra

Full Changelog: v0.19.0beta...v0.19.1beta

v0.19.0beta

06 Dec 13:22
Compare
Choose a tag to compare

Cool stuff.

Info for packagers:

the source- tarball has changed. Everything is now in a subdir called hyprland-source/

New features:

  • Add nofullscreen to windowrules (#1107)
  • Add option for retrieving first empty workspace (#1085)
  • Added handling more special workspaces
  • Added screen shaders
  • Fix incorrect layout positions in mirror re-add
  • Nix: add libdrm and wayland-protocols overlay
  • add scroll_button libinput opt
  • added blur_xray
  • added border gradients
  • added hyprctl switchxkblayout
  • Implement window sharing with the hl toplevel export proto (#1179)

Fixes:

  • Fix a compiler warning (#1124)
  • Fix cmake error when using clang (#1009)
  • Fix incorrect layout positions in mirror re-add
  • Fix minor issues with mirrors
  • Fix swiping on the first workspace going to the last (#1067)
  • Fix wrong layout recalculate if statement (#1167)
  • fix AA on borders
  • fix border inner offset in shader
  • fix crash in blurls remove
  • fix crash in setActiveMonitor null
  • fix crash with invalid frag dynamic shaders
  • fix decorations missing after no_gaps_when_only toggle floating
  • fix events in changeworkspace with bound ws-es
  • fix fadeout with animated border
  • fix group border oversaturation
  • fix invisible windows on moving fullscreen out
  • fix master resizes all
  • fix minor issues with blur w/o new optim
  • fix minor issues with blur_new_optimize
  • fix shader destroy id unset
  • fix transformed border thickness
  • fix up the border shader
  • fix warning
  • minor fixes for mirrors & log more monitor events
  • minor monitor code fixups
  • monitor rule fixes
  • use highp for pixcoord to fix nvidia border issues

Other:

  • Render focused window at last (#1060)
  • Reset callbacks on remap
  • Setting wayland environment variables at startup (#1045)
  • Unify rounding shaders
  • Update wiki link in manpage (#1144)
  • Use internal device naming for Hyprctl devices (#1174)
  • nix: add cmake and wlroots to devshell (#1155)
  • nix: add xdph to nixos module
  • allow 360 degrees of freedom in gradients
  • avoid duplicate device names
  • avoid header clashes in make all
  • avoid using wayland-0 as a socket name
  • better capability handling
  • block surface feedback on window sharing
  • blur xray for layers (#1158)
  • check for special workspace open in attemptDirectScanout
  • convert bordercolors to GradientValueData correctly (#1122)
  • damage monitor on group switch
  • damage windows after switch
  • default blur new optimizations to 1
  • don't attempt rendering on begin failure
  • don't change alpha on special anims
  • don't focus back after dnd on follow mouse 1
  • don't initial focus on LS keyboard grab
  • don't send motion events to lock constraints
  • don't set AS in onConnect
  • find base surface if no subsurface found in ls
  • find floating windows below closed one
  • ignore alpha when sharing window
  • improve constraint handling
  • make focus/swap master layoutmsgs two-way
  • minor changes to unsafe state handling
  • more memory safety around onDisconnect
  • nix: remove merged hwdata override
  • nix: update nixpkgs (includes merged hwdata update)
  • optimize border shader
  • optimize data feeding to gradient renderer
  • override force opaque rule on keybind
  • recalculate layout only when needed on dynamic keywords
  • reload shader on dynamic shader keyword
  • remove global var
  • remove idiotic guard in processMouseDownNormal
  • remove redundant strval_empty checks
  • remove resize transitions
  • reset m_bEmptyFocusCursorSet on workspace switch
  • respect no_gaps_when_only in fullscreen 1
  • return full monitor box for fullscreen windows in idealBB
  • schedule frames and reloads on session re-activate
  • show groupings and swallowing in hyprctl (#1159)
  • skip covered windows on fullscreen workspaces in getWindowInDirection
  • unify setting of the active monitor
  • use gradients in default configs

Special Thanks

Special thanks as usual to those alpha male gigachads for dropping me some euros:

  • umop3plsdn
  • Karagra
  • Teddy-Kun
  • Martin E
  • Vibrose
  • AmadeusWM
  • Lipt0nas
  • HauntedCoffeePot
  • Leftas
  • Pebor

New Contributors

Full Changelog: v0.18.0beta...v0.19.0beta

v0.18.0beta

16 Nov 17:45
Compare
Choose a tag to compare

New features:

  • Add an idleinhibit windowrule
  • Add bordercolor windowrule (#992)
  • Add focusmaster dispatcher (#942)
  • Add keyboard led update after keys/mod update
  • Added creating / destroying outputs on a multi-backend + headless backend
  • Added decoration:shadow_scale
  • Added direct scanout
  • Added exec rules
  • Added multiple master layoutmsgs
  • Added resize transitions
  • Added resizing individual master windows
  • add more wlroots flags for faster compile
  • add move cursor windowrule
  • added monitor cycling
  • added toggle for drm scanout flags
  • added unset rules
  • added workspace_swipe_forever

Fixes:

  • Fix crashes with DS and mirrors
  • Fix missing focusedmon event on focusmonitor dispatcher
  • Fix resize transitions on multimon + transformed
  • Minor fixes for virtual input devices
  • Multiple animation optimization and xwayland wine fixes
  • Nix HM: Fix invalid escapes
  • fix extents in shadow deco
  • fix fullscreen maximize size
  • fix invalid master slave pos calc on y != 0
  • fix issues with direct scanout's lack of surface frame feedback
  • fix master window finding on closed
  • fix missing stub for xwayland
  • fix ordering in mouse connect
  • fix passing input to constrained windows without relative
  • fix raw exec in configmanager
  • fix relative protocol paths
  • fix safety over ls outputs
  • fix shadow extent & offset calculations
  • fix slide calcs for windows outside the viewport
  • fix swipe on 2 detached workspaces
  • fix the damageBox in damageMonitor
  • fix trailing comma in hyprctl activewindow
  • fix unregistering avars on sethidden
  • minor fixes for follow_mouse 3
  • minor loose focus fixes
  • resize transition fixes + default transitions to false

Other:

  • Allow arguments to hyprctl dispatch exec commands. (#990)
  • Dispatcher to center floating window (#961)
  • Nix HM: prevent race condition between dbus and systemd
  • Revert "Set child stdout and stderr to /dev/null (#1000)"
  • Set child stdout and stderr to /dev/null (#1000)
  • apply some rules dynamically when state of window changes (#1020)
  • automatically update dbus environment on start
  • constraint focus simplifications
  • deprecate general:damage_tracking
  • don't update the env in session-less hl
  • guard empty str in isNumber
  • guard empty str in removeBeginEndSpacesTabs
  • guard header windows in layout messages
  • guard lastwindow in circlenext
  • handle transforming displays in outputMgr
  • helpers: implement getPPIDof on BSDs (#972)
  • ignore constraints on exclusiveClient create
  • include utility in defines
  • meson: explicitly specify path for find(1) (#971)
  • meson: use gl instead of GL
  • move no_direct_scanout to misc
  • notify idle on touch down
  • possible crash when current workspace does not exist (#1023)
  • prevent double-registering of avars
  • remove ensureFDsValid, legacy
  • remove old comments
  • remove redundant check in CShader
  • remove redundant includes
  • remove spammy ime logs
  • remove spammy logs for DS
  • render the debug overlay only on visible monitors
  • set cursor to hand1 when moving a window
  • streamline hypctl output of windows (#983)
  • update window values after map finish
  • use goal values in changeWindowFloatingMode
  • use lld instead of i in hyprctl getopt for accurate int reads

Special Thanks

As tradition, special thanks to those gigachads for donating in support of the project:

  • re-ynd
  • Pebor
  • speedboat
  • HauntedCoffeePot
  • Karagra
  • Lipt0nas

New Contributors

Full Changelog: v0.17.0beta...v0.18.0beta