Tom Englund
36a8b2226f
renderer: use CRegion foreach over getRects ( #10980 )
...
instead of allocating and returning a vector, use forEach to directly
call a function on the rects.
2025-07-30 11:54:09 +02:00
Vaxry
43966cc787
foreign-toplevel: update monitor properly on changed
...
fixes #11197
2025-07-29 21:59:35 +02:00
xqso
5c8d675eed
ci: correct tar command for xz compression & fix typos ( #11213 )
2025-07-25 17:19:23 +02:00
Vaxry
31cc7f3b87
core: move workspace ptrs to weak ( #11194 )
...
Fixes some race conditions that come up in tests. We only clean up workspaces when we render a frame. With this, they are always cleared instantly.
2025-07-24 00:36:29 +02:00
Tom Englund
6ca7c14b58
CTM: check for finite value aswell ( #11185 )
...
checking for < 0.F will not catch NaN or inf values, use std::isfinite
aswell.
2025-07-23 12:09:19 +02:00
Vaxry
462729d865
protocols/subcompositor: fix subsurface sorting ( #11136 )
2025-07-20 19:42:40 +02:00
Thomas Müller
bf1602d9f9
renderer: implement wp-color-management-v1 transfer functions ( #11084 )
2025-07-20 18:20:27 +02:00
MrFantOlas
ae3cc48f22
protocols/gamma: support pipes ( #11076 )
...
Add support for pipes and potentially other valid file descriptors. Add check for more data on the socket than the required amount as per protocol.
---------
Co-authored-by: Alexandre Teixeira <alexandre.teixeira@etu.emse.fr>
2025-07-18 23:20:17 +02:00
Vaxry
a05c797e4a
compositor: properly set infinite region on null input
...
fixes #11065
2025-07-17 22:04:20 +02:00
UjinT34
e15014e031
protocols/cm: Fix preferred image description ( #11026 )
2025-07-15 19:33:14 +02:00
UjinT34
bc764f7065
protocols: Remove incorrect CM proto debug check and fix preferred image description ( #11023 )
2025-07-14 22:54:43 +02:00
Vaxry
d0f58baf29
screencopy: ignore hidden windows in noscreenshare
...
fixes #11002
2025-07-12 18:22:47 +02:00
Tom Englund
b5433bb753
singlepixel: move to unique ptrs
...
less refcounting, move by rvalue.
2025-07-10 14:09:00 +02:00
Tom Englund
bcb96c5532
presentation: move to unique ptrs
...
less refcounting, move by rvalue.
2025-07-10 14:09:00 +02:00
Tom Englund
f22b5971d1
dmabuf: move to unique ptrs
...
less refcounting, move by rvalue.
2025-07-10 14:09:00 +02:00
Tom Englund
87653077f8
cursorshape: use unique ptrs
...
less refcounting.
2025-07-10 14:09:00 +02:00
Tom Englund
a21882be33
ctmcontrol: move to unique ptrs
...
less refcounting, move by rvalue.
2025-07-10 14:09:00 +02:00
Tom Englund
37be9a8959
alphamodifier: move to unique ptrs
...
less refcounting, move by rvalue.
2025-07-10 14:09:00 +02:00
Tom Englund
f5af40afce
renderpass: use unique ptr instead of shared ptr
...
lets use unique ptrs instead of refcounting shared ptr when its not
needed, use rvalue reference to construct in vector directly.
2025-07-10 14:09:00 +02:00
outfoxxed
78e9eddfb6
core: use new typed signals from hu ( #10853 )
2025-07-08 18:56:40 +02:00
Tom Englund
2f34ef141b
compositor: fix race to finish on null buffer ( #10970 )
...
if a null buffer is commited and a pending state is awaiting, drop the
pending state so we dont end up in race to finish brokeness.
2025-07-08 18:55:46 +02:00
Tom Englund
bb958a9e13
pass: overload TexPass constructor
...
overload it with a rvalue to allow us to move the data directly avoiding
an extra copy. because SRenderData is not trivially copyable.
2025-07-07 18:09:34 +02:00
Tom Englund
ceec1943ff
compositor: dont send around int max values
...
we know the buffersize use it instead of int max values that can
potentially cause math issues and slowdowns. minor improvement to
glmark2 aswell.
2025-07-07 18:09:34 +02:00
Tom Englund
54369adffa
internal: iso C++ prohibits anonymous structs ( #10955 )
...
turn on -Wpedantic and name the anonymous struct.
2025-07-07 16:18:06 +02:00
Tom Englund
9adacef70b
buffer: check if buffer fd already readable ( #10894 )
...
check if buffer fd is already readable, to avoid a lot of unnecessery
systemcalls and churn.
2025-07-01 11:32:17 +02:00
Tom Englund
8c37d2ce25
sessionlock: restore cursor if hidden on unlock ( #10889 )
...
if session locks have hidden the cursor its gonna be missing unless a
new cursor shape is set, hovering windows makes us get one, moving the
wallpaper/desktop does not. set it again to left_ptr as is default on
compositor start.
2025-07-01 11:31:10 +02:00
Vaxry
ab900d8752
screencopy: fix improper box calculations for transforms ( #10870 )
2025-06-28 17:01:14 +02:00
outfoxxed
3bbdf9dc5a
protocols: add ext-workspace implementation ( #10818 )
2025-06-26 18:32:44 +02:00
Vaxry
aea8132001
buffer: don't use crazy listener::emit()
2025-06-24 15:23:53 +02:00
Jasson
b49d0ca20e
xwayland: Fix crash when copying from wayland to xwayland ( #10786 )
2025-06-19 19:44:38 +02:00
UjinT34
bd5703d5c6
protocols/cm: fix wp invalid luminance check ( #10752 )
2025-06-15 23:13:57 +02:00
UjinT34
c3894d9288
config/monitor: Add monitor v2 HDR rules ( #10623 )
2025-06-15 12:15:18 +02:00
Vaxry
3db3baa19e
opengl: use a stack for storing monitor transform enabled
...
fixes #10487
2025-06-15 12:11:28 +02:00
Joel-Valenciano
ad85406220
drm-lease: Add Multi-GPU Support ( #10099 )
2025-06-13 15:17:32 +02:00
Vaxry
6910ca76bd
protocols/subcompositor: fixup place_above and _below
...
fixes #10716
2025-06-11 16:54:47 +02:00
Kamikadze
c6f713fefe
screencopy: fix incorrect noscreenshare positions with monitor scaling ( #10674 )
2025-06-08 08:19:23 +01:00
Kamikadze
91967f8ec0
renderer: fix incorrect cursor position when screencopy region with monitor scaling ( #10675 )
2025-06-08 08:18:42 +01:00
XPhyro
fb7548cb41
screencopy: fix applying noscreenshare to invisible special workspaces ( #10628 )
2025-06-05 21:29:01 +01:00
Kamikadze
4078e1d17c
refactor: replace all typedef with using ( #10594 )
2025-05-31 14:02:02 +01:00
Kamikadze
9190443d95
refactor: use std::ranges whenever possible ( #10584 )
2025-05-30 14:25:59 +01:00
Kamikadze
24915a3a9b
windowrules: Add noscreenshare ( #10482 )
2025-05-27 16:10:22 +01:00
Vaxry
bb5cd5b2dd
screencopy: store a fb before permission popup if the permission is pending ( #10455 )
...
stops rendering the permission popup on stuff like grim when it asks
2025-05-17 19:03:35 +02:00
outfoxxed
b0cc49218d
protocols: simulate mouse movement after activating a toplevel ( #10429 )
2025-05-16 23:38:45 +02:00
Tom Englund
5ceb0ec15d
core: drop the legacy renderer ( #10408 )
...
* core: drop the legacy renderer
the legacy renderer is broken and barely used, drop it.
* Nix: drop support for legacyRenderer
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-05-15 10:13:24 +01:00
Tom Englund
0dfcba9825
DMABuffer: reserve vector and avoid UB ( #10317 )
...
actually reserve the vector instead of initializing it with the
m_attrs.fd.size() adding 4 invalid fd entries, and later emplace_back
the valid ones.
sync_merge_data name is defined as char name[32] a fixed size array, and
c++ technically doesnt allow assigning string literals directly to array
fields in aggregate initializers, it may compile but is technically
undefined behaviour or ill formed. zero initalise it and use
std::ranges::copy_n instead.
2025-05-07 18:15:27 +02:00
davc0n
e5df8cdc62
xwayland: refactor class member vars ( #10312 )
...
* xwayland: refactor class member vars
* xwayland: fix pure wayland build
2025-05-07 15:21:44 +02:00
davc0n
997fefbc11
render: refactor class member vars ( #10292 )
...
* render: refactor class member vars
* render: fix clang format
2025-05-05 23:44:49 +02:00
davc0n
9cd5b25745
protocols: refactor class member vars (u-z) ( #10282 )
...
* protocols: refactor class member vars (u-z)
* protocols: fix clang format
2025-05-04 23:39:00 +02:00
davc0n
2626f89ea6
protocols: refactor class member vars (n-t) ( #10273 )
2025-05-04 19:21:36 +02:00
davc0n
adbae0f74d
protocols: refactor class member vars (a-m) ( #10265 )
2025-05-04 00:13:29 +02:00