| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | layershell: fix popup crash with nullptr mon (#13763) | UjinT34 | 2026-03-17 | 1 | -7/+6 |
| | | |||||
| * | algo/master: fix crash on null target in getNextTarget | Vaxry | 2026-03-17 | 1 | -1/+1 |
| | | |||||
| * | window/rules: add scrolling_width (#13754) | ItsOhen | 2026-03-17 | 7 | -12/+22 |
| | | |||||
| * | protocols/workspace: schedule done after output update (#13743) | outfoxxed | 2026-03-17 | 1 | -2/+7 |
| | | |||||
| * | view: consolidate group flags and apply window rules (#13694) | Kon | 2026-03-17 | 2 | -8/+15 |
| | | | | | | | | | | * view: consolidate group flags and apply window rules Replace individual boolean flags with a bitmask for group policies and ensure that window-specific group rules are correctly inherited when windows are initialized or added to a group. * tests: add cases for locked groups and invade rule Add tests to verify window grouping behavior, specifically checking that locked groups prevent merging by default and that the 'invade' group rule correctly overrides this lock policy. | ||||
| * | source: c-f for new clang version | Vaxry | 2026-03-15 | 7 | -36/+36 |
| | | |||||
| * | desktop/rules: fix static rules and content type. (#13725) | ItsOhen | 2026-03-15 | 4 | -28/+45 |
| | | | | | Hopefully for the last time in a while. Also a lot easier to add in new static types with the recheck done in window map instead of the rule. | ||||
| * | algo/scroll: fix std::clamp assertion crash on resume from suspend (#13737) | Nathan Ollerenshaw | 2026-03-15 | 2 | -1/+22 |
| | | |||||
| * | renderer: fix blockBlurOptimization check (#13685) | staz | 2026-03-13 | 1 | -1/+1 |
| | | |||||
| * | config/workspacerule: add animation style (#13380) | ItsOhen | 2026-03-13 | 7 | -10/+23 |
| | | |||||
| * | algo/scroll: reverse horizontal dir mapping of vertical scroll directions ↵ | Sola | 2026-03-13 | 1 | -4/+4 |
| | | | | | (#13647) | ||||
| * | internal: fix relative path header locations (#13650) | ItsOhen | 2026-03-13 | 10 | -43/+43 |
| | | | | Or plugins can't build. | ||||
| * | input: add device specific binds (#13073) | ArchSav | 2026-03-13 | 6 | -59/+82 |
| | | | | Adds support for device-specific binds | ||||
| * | protocols: fix image-copy-capture stop handling and remove non protocol ↵ | outfoxxed | 2026-03-12 | 1 | -12/+3 |
| | | | | | | | | | | | errors (#13706) * protocols: send image-copy-capture stopped instead of destroy Fixes a protocol error where the resource was destroyed instead of sending stopped() to the client. * protocols: don't send protocol errors in image-copy-capture for server errors | ||||
| * | renderer: fix share window projection (#13695) | UjinT34 | 2026-03-11 | 3 | -2/+6 |
| | | |||||
| * | algo/dwindle: fix precise mouse setting (#13678) | Bastien Souchu | 2026-03-10 | 3 | -32/+8 |
| | | |||||
| * | shader: delete shader on success path (#13682) | Tom Englund | 2026-03-10 | 1 | -0/+1 |
| | | | | dont leak glsl shader on success path. | ||||
| * | compositor: When processing fullscreen states, only use effective mode where ↵ | Nikolai Nechaev | 2026-03-10 | 1 | -12/+18 |
| | | | | | | | | | | necessary (#13607) Simplify the compositor fullscreen state processing: use the complete fullscreen mode value except when the effective fullscreen mode value is needed. Fixes #13041. | ||||
| * | renderer: fix crash on null blur framebuffer during monitor disconnect | matjam | 2026-03-10 | 3 | -2/+9 |
| | | | | | Guard all m_blurFB dereferences against null. The blur framebuffer is reset during monitor disconnect but layer surface snapshots use a simple render path that skips framebuffer allocation. | ||||
| * | protocols/sessionLock: fix crash when monitor is gone during lock surface ↵ | matjam | 2026-03-10 | 1 | -4/+13 |
| | | | | | | | creation Move monitor signal listener registration inside the existing null guard, and validate output resource and monitor in onGetLockSurface. | ||||
| * | layout: fix crash on monitor reconnect due to stale workspace state | matjam | 2026-03-10 | 3 | -3/+18 |
| | | | | | Guard against null/expired workspace and monitor pointers during layout recalculation triggered by arrangeMonitors after sleep/wake. | ||||
| * | layout: fix null deref in focalPointForDir and moveInDirection (#13652) | James Bingen | 2026-03-10 | 2 | -2/+18 |
| | | | | | | | Added a guard against expired m_parent weak pointer in IModeAlgorithm::focalPointForDir when the fullscreen monitor path is taken, and also added a null check in CLayoutManager::moveInDirection. This seemed to have fixed a segfault triggered by a 3-finger swipe gesture end on a fullscreen tiled window. | ||||
| * | algo/dwindle: Respect `force_split` when moving windows to workspaces (#13038) | Nikolai Nechaev | 2026-03-10 | 2 | -12/+10 |
| | | | | | | | Respect `dwindle:force_split` not only when mapping new windows, but also when moving windows to workspaces. Fixes #13009. | ||||
| * | algo/dwindle: do NOT use smart_split for overridden focal point (#13635) | Vaxry | 2026-03-09 | 1 | -2/+2 |
| | | | | ref #13594 | ||||
| * | layout: fix drag_threshold window snap regression (rebased for #12890) (#13140) | Mihail Costea | 2026-03-09 | 1 | -2/+2 |
| | | | | | | | Guard position assignments in updateDragWindow() behind m_dragThresholdReached to prevent windows from snapping to cursor before drag_threshold is exceeded. Fixes: https://github.com/hyprwm/Hyprland/pull/13140 | ||||
| * | layout/windowTarget: add visualBox (#13626) | outfoxxed | 2026-03-09 | 6 | -60/+72 |
| | | | | | Allows layouts to explicitly define the visual geometry of a tiled window. | ||||
| * | renderer: fix crash with nullptr FBs (#13641) | UjinT34 | 2026-03-09 | 2 | -9/+17 |
| | | |||||
| * | desktop/windowRule: fix matching CONTENT (#13636) | Vaxry | 2026-03-07 | 2 | -2/+2 |
| | | | | ref #13596 | ||||
| * | algo/scroll: fix unsigned wrap (#13634) | Yujon Pradhananga | 2026-03-07 | 1 | -0/+3 |
| | | |||||
| * | renderer: fix sdr mod (#13630) | UjinT34 | 2026-03-07 | 1 | -1/+1 |
| | | |||||
| * | layout/groupTarget: fix crash on null space assignment (#13614) | Vaxry | 2026-03-07 | 2 | -2/+4 |
| | | | | nullchecks my life | ||||
| * | renderer: refactor gl renderer (#13488) | UjinT34 | 2026-03-07 | 21 | -1387/+1726 |
| | | |||||
| * | renderer: refactor projection setting (#13485) | UjinT34 | 2026-03-07 | 7 | -121/+113 |
| | | |||||
| * | renderer: move m_renderData to renderer (#13474) | UjinT34 | 2026-03-07 | 18 | -474/+554 |
| | | |||||
| * | renderer: refactor resources and flags (#13471) | UjinT34 | 2026-03-07 | 37 | -793/+778 |
| | | |||||
| * | renderer: refactor render elements (#13438) | UjinT34 | 2026-03-07 | 24 | -312/+392 |
| | | | | Part 2 of renderer refactors | ||||
| * | deco/border: fix damage region | Vaxry | 2026-03-07 | 1 | -0/+1 |
| | | |||||
| * | renderer: refactor Texture, Framebuffer and Renderbuffer (#13437) | UjinT34 | 2026-03-06 | 46 | -845/+1156 |
| | | | | Part 1 of the renderer refactors | ||||
| * | renderer: shader variants refactor (#13434) | UjinT34 | 2026-03-06 | 59 | -1438/+1915 |
| | | | | Part 0 of renderer reworks. | ||||
| * | dwindle: add rotatesplit layoutmsg and tests (#13235) | Mikhail | 2026-03-06 | 2 | -0/+51 |
| | | |||||
| * | compositor: fix missing recheckWorkArea to prevent CReservedArea assert ↵ | Logan Collins | 2026-03-06 | 1 | -0/+2 |
| | | | | | failure (#13590) | ||||
| * | layerrules: add dynamically registered rules for plugins (#13331) | Virt | 2026-03-06 | 3 | -1/+45 |
| | | | | | | | | | | * layerrules: add dynamically registered rules for plugins * be gone * layerrules: add layer tests with waybar * fix: use kitty layers instead of waybar | ||||
| * | keybinds: Remove removed keybinds (#13605) | Nikolai Nechaev | 2026-03-06 | 2 | -18/+0 |
| | | | | | | | | | There seems to be no reason for them to remain. But if they are kept, no notification appears to warn a user that a dispatcher used in their config is no longer valid. The config remains valid, but the bindings do not work anymore. | ||||
| * | pointer: fix hardware cursor rendering on rotated/flipped monitors (#13574) | JaSha256 | 2026-03-05 | 1 | -18/+17 |
| | | | | | Replace the broken cairo_matrix_rotate() approach with explicit per-transform pattern matrices for all 8 wl_output_transform values. | ||||
| * | screencopy: fix isOutputBeingSSd (#13586) | Vaxry | 2026-03-05 | 2 | -3/+4 |
| | | | | use sessions instead of pending frames | ||||
| * | desktop/rules: fix empty workspace handling (#13544) | justin4046 | 2026-03-05 | 1 | -2/+3 |
| | | |||||
| * | config/descriptions: add missing desc entry | Vaxry | 2026-03-05 | 1 | -0/+6 |
| | | |||||
| * | algo/scrolling: add config options for focus and swapcol wrapping (#13518) | Thedudeman | 2026-03-05 | 3 | -6/+29 |
| | | |||||
| * | screenshare: improve destroy logic of objects (#13554) | Ikalco | 2026-03-05 | 7 | -46/+24 |
| | | |||||
| * | i18n: update Vietnamese translations (#13489) | Vũ Xuân Trường | 2026-03-04 | 1 | -0/+1 |
| | | |||||
