Commit graph

7064 commits

Author SHA1 Message Date
fvla
2fde538e0f
algo/scrolling: improve behavior with focus_fit_method = center (#13795) 2026-03-26 21:38:56 +00:00
Mr-Stoneman
b0f6ac23b2
desktop/workspaceHistory: small refactor to work better with multi monitor setups (#13632) 2026-03-26 21:38:39 +00:00
Sargun Singh
4c29b9de4e
i18n: add Punjabi translations (#13807) 2026-03-26 20:46:42 +00:00
Barrett Ruth
1cdb9d5b85
config: fix crash in safe mode due to null Config::mgr() (#13855)
Problem: `getMainConfigPath()` dereferences `Config::mgr()` before it is constructed.

Solution: return the recovery config path and let `initConfigManager()` handle generation.
2026-03-26 20:46:32 +00:00
Barrett Ruth
2de1d3ca96
layout: guard null workspace in CWindowTarget::updatePos() (#13861) 2026-03-26 20:46:20 +00:00
1b661d06da
clang-format: run formatter 2026-03-26 20:21:26 +00:00
ee7f68820b
render/pass: fix debug:pass rendering 2026-03-26 16:39:52 +00:00
eb141a6cd0
overridableVar: fix reassignment
we don't want to remove already set props with our reassignmemnt
2026-03-26 01:06:23 +00:00
Pppp1116
855b1cba40
renderer: small fixes in OpenGL.cpp and OpenGL.hpp (#13842)
* render: add EGL error details to dmabuf query failures

* linux-dmabuf: tighten plane modifier checks and feedback safety
2026-03-26 00:08:49 +00:00
UjinT34
2e5e800e4b
renderer/cm: Support wp-cm-v1 version 2 (#12817) 2026-03-25 23:48:06 +00:00
UjinT34
8196711aaa
screencopy: check share session state (#13839) 2026-03-25 13:37:53 +00:00
bbf6718c4f
hyprctl: fix invalid type cast
gfd
2026-03-24 12:18:05 +00:00
Chris Naporlee
63c56bad6f
protocols: reimplement unstable/xdg-foreign-v2 (#13716) 2026-03-23 23:08:58 +00:00
Dregu
64a2e4e263
input: fix the multimon touch fix (#13819) 2026-03-23 12:55:22 +00:00
vaxerski
488c8f4902 [gha] Nix: update inputs 2026-03-23 12:54:15 +00:00
Visal Vijay
dc24eb1cf0
renderer: guard against null monitor in renderMonitor (#13823) 2026-03-23 12:52:24 +00:00
John Berg
c8b283f5ac
hyprctl: fix json output for the submap command (#13726)
The output of ``hyprctl submap -j`` returns a string contained within
curly braces e.g. ``{"default"}``. But this is not valid JSON as-per
RFC-7159, as an object must be a set of name/value pairs. As a result,
tools such as jq do not accept the current output. This patch is a
simple fix is to drop the braces and return the string describing the
current submap. The new JSON formatting is accepted by jq.

This would be a breaking change for anything which consumes the current
output of the submap command, but since parsers reject this (and since
the output is pretty simple to parse without using the -j flag) impact
might be more limited.

Signed-off-by: John Berg <john.berg.96bits@gmail.com>
2026-03-22 23:24:15 +00:00
Sniffy Gumbles
c54d7bf647
compositor: be more selective about how we expand the window box in getting coord (#13720)
* Be more selective about how we expand the window box here so that we're not overlapping with any neighbouring windows.

* Don't use getWindowInDirection to see if we're clear to expand the hit box. Instead, just see if our edge is close to the edge of the workspace.

* Clang-format changes
2026-03-22 23:24:03 +00:00
Mr. Myxa
bf31f642b0
internal: rewrite deviceNameToInternalString using a single range pipeline (#13806) 2026-03-21 23:40:52 +00:00
Visal Vijay
635abdd1c2
xwayland: prevent potential buffer overflow in socket path handling (#13797) 2026-03-21 23:39:58 +00:00
Blue
a595d0e3c3
layersurface: simulate mouse movement on layer change (#13747) 2026-03-21 23:39:42 +00:00
Vaxry
8726a7363e
config: cleanup the entire config infrastructure (#13785)
Massively refactors the config infrastructure, sorely
needed and will be req'd for the lua stuff
2026-03-20 17:52:37 +00:00
ssareta
b940b0d2c1
screencopy: fix crash in screensharing toplevel with invalid handle (#13781) 2026-03-19 21:04:52 +00:00
Dregu
3b902a47fe
input: fix touch screen focus on multi monitor (#13764)
* input: fix touch screen focus on multi monitor

* skip some more strictly pointer related things for touch
2026-03-19 19:18:29 +00:00
nikitax44
ad46ff635b
renderer: fix crash when shader path isn't a file (#13756) 2026-03-19 13:17:56 +00:00
Khalid
d635b499e1
input: focus monitor on touch down events (#13773) 2026-03-18 20:19:29 +00:00
Mr. Myxa
775951783c
misc: fix missing noreturn attribute for throwError (#13746) 2026-03-17 15:14:30 -04:00
UjinT34
aef76309d8
layershell: fix popup crash with nullptr mon (#13763) 2026-03-17 14:59:44 -04:00
3a72064510
algo/master: fix crash on null target in getNextTarget 2026-03-17 14:47:20 -04:00
ItsOhen
9f599e3165
window/rules: add scrolling_width (#13754) 2026-03-17 12:43:53 -04:00
35ef8dc1f7
protocols/workspace: schedule done after output update (#13743) 2026-03-17 12:06:22 -04:00
Kon
be96e06a96
view: consolidate group flags and apply window rules (#13694)
* 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.
2026-03-17 09:10:53 -05:00
davc0n
30c498acf4
build: add glaze dependency with FetchContent fallback (#13666) 2026-03-16 00:53:28 +02:00
902e8de7f0
source: c-f for new clang version 2026-03-15 15:23:21 -05:00
ItsOhen
94bd4123c6
desktop/rules: fix static rules and content type. (#13725)
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.
2026-03-15 14:32:05 -05:00
vaxerski
3fd2a95475 [gha] Nix: update inputs 2026-03-15 15:07:57 +00:00
Nathan Ollerenshaw
df55752241
algo/scroll: fix std::clamp assertion crash on resume from suspend (#13737) 2026-03-15 10:06:10 -05:00
staz
9bf8fe7a52
renderer: fix blockBlurOptimization check (#13685) 2026-03-13 16:59:28 -05:00
ItsOhen
de3471b335
config/workspacerule: add animation style (#13380) 2026-03-13 16:50:34 -05:00
Sola
2877ca2933
algo/scroll: reverse horizontal dir mapping of vertical scroll directions (#13647) 2026-03-13 16:13:06 -05:00
030e892154
hyprland.pc.in: add src include flag 2026-03-13 22:57:49 +02:00
9683e261af
Nix: always test in debug mode 2026-03-13 19:47:17 +02:00
ItsOhen
8aff500351
internal: fix relative path header locations (#13650)
Or plugins can't build.
2026-03-13 08:53:07 -05:00
ArchSav
24a95621e5
input: add device specific binds (#13073)
Adds support for device-specific binds
2026-03-13 08:48:01 -05:00
e868403452
protocols: fix image-copy-capture stop handling and remove non protocol 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
2026-03-12 11:57:06 +00:00
UjinT34
8662ecba03
renderer: fix share window projection (#13695) 2026-03-11 20:48:48 +00:00
Bastien Souchu
0e083e886f
algo/dwindle: fix precise mouse setting (#13678) 2026-03-10 19:36:47 +00:00
Tom Englund
a714c7fe0e
shader: delete shader on success path (#13682)
dont leak glsl shader on success path.
2026-03-10 17:46:54 +00:00
Nikolai Nechaev
bc5bd8970e
compositor: When processing fullscreen states, only use effective mode where 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.
2026-03-10 10:09:47 +00:00
matjam
5389990724 renderer: fix crash on null blur framebuffer during monitor disconnect
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.
2026-03-10 10:06:24 +00:00