Hyprland/src/protocols
Tom Englund b329ea8e96
syncobj: use rendernode for timelines (#11087)
* syncobj: use rendernode for timelines

use rendernode for timelines instead of the drmfd, some devices dont
support to use the drmfd for this.

* opengl: use rendernode if available

use rendernode if available for CHyprOpenglImpl

* MesaDRM: use the m_drmRenderNodeFD if it exist

try use the rendernode we got from AQ if it exist.

* linuxdmabuf: use rendernode if available

use the rendernode if available already from AQ

* syncobj: prefer rendernode over displaynode

prefer the rendernode over the displaynode, and log a error if
attempting to use the protocol without explicit sync support on any of
the nodes.

* syncobj: check support on both nodes always

check support on both nodes always so it can be used later for
preferring rendernode if possible in syncobj protocol.

* syncobj: remove old var in non linux if else case

remove old m_bDrmSyncobjTimelineSupported from non linux if else case
that will fail to compile on non linux. the nodes sets support by
default to false, and if non linux it wont check for support and set it
to true.

* build: bump aq requirement

bump to 0.9.3 where rendernode support got added.

* flake.lock: update

* renderer: glfinish on software renderer

software renderers apparently bug out on implicit sync, use glfinish as
with nvidia case on implicit paths.

* flake.lock: update

---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-08-24 22:32:13 +02:00
..
core disable buffer readability checks on intel (#11515) 2025-08-24 08:57:37 +01:00
types disable buffer readability checks on intel (#11515) 2025-08-24 08:57:37 +01:00
AlphaModifier.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
AlphaModifier.hpp alphamodifier: move to unique ptrs 2025-07-10 14:09:00 +02:00
ColorManagement.cpp hdr: scRGB, HLG and SDR -> HDR fixes (#11499) 2025-08-22 11:13:55 +01:00
ColorManagement.hpp hdr: scRGB, HLG and SDR -> HDR fixes (#11499) 2025-08-22 11:13:55 +01:00
ContentType.cpp presentation: move to unique ptrs 2025-07-10 14:09:00 +02:00
ContentType.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
CTMControl.cpp CTM: check for finite value aswell (#11185) 2025-07-23 12:09:19 +02:00
CTMControl.hpp ctmcontrol: move to unique ptrs 2025-07-10 14:09:00 +02:00
CursorShape.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
CursorShape.hpp cursorshape: use unique ptrs 2025-07-10 14:09:00 +02:00
DataDeviceWlr.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
DataDeviceWlr.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
DRMLease.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
DRMLease.hpp drm-lease: Add Multi-GPU Support (#10099) 2025-06-13 15:17:32 +02:00
DRMSyncobj.cpp syncobj: use rendernode for timelines (#11087) 2025-08-24 22:32:13 +02:00
DRMSyncobj.hpp disable buffer readability checks on intel (#11515) 2025-08-24 08:57:37 +01:00
ExtDataDevice.cpp protocols: implement ext-data-control (#11323) 2025-08-15 15:38:28 +01:00
ExtDataDevice.hpp protocols: implement ext-data-control (#11323) 2025-08-15 15:38:28 +01:00
ExtWorkspace.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
ExtWorkspace.hpp protocols: add ext-workspace implementation (#10818) 2025-06-26 18:32:44 +02:00
FocusGrab.cpp ci: correct tar command for xz compression & fix typos (#11213) 2025-07-25 17:19:23 +02:00
FocusGrab.hpp ci: correct tar command for xz compression & fix typos (#11213) 2025-07-25 17:19:23 +02:00
ForeignToplevel.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
ForeignToplevel.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
ForeignToplevelWlr.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
ForeignToplevelWlr.hpp foreign-toplevel: update monitor properly on changed 2025-07-29 21:59:35 +02:00
FractionalScale.cpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
FractionalScale.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
FrogColorManagement.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
FrogColorManagement.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
GammaControl.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
GammaControl.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
GlobalShortcuts.cpp ci: correct tar command for xz compression & fix typos (#11213) 2025-07-25 17:19:23 +02:00
GlobalShortcuts.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
HyprlandSurface.cpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
HyprlandSurface.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
IdleInhibit.cpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
IdleInhibit.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
IdleNotify.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
IdleNotify.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
InputMethodV2.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
InputMethodV2.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
LayerShell.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
LayerShell.hpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
LinuxDMABUF.cpp syncobj: use rendernode for timelines (#11087) 2025-08-24 22:32:13 +02:00
LinuxDMABUF.hpp ci: correct tar command for xz compression & fix typos (#11213) 2025-07-25 17:19:23 +02:00
LockNotify.cpp core: move all shared_ptrs from the STL to hyprutils (#9143) 2025-01-23 21:55:41 +01:00
LockNotify.hpp protocols: add hyprland_lock_notify_v1 implementation (#9092) 2025-01-19 18:21:36 +00:00
MesaDRM.cpp syncobj: use rendernode for timelines (#11087) 2025-08-24 22:32:13 +02:00
MesaDRM.hpp protocols: refactor class member vars (a-m) (#10265) 2025-05-04 00:13:29 +02:00
OutputManagement.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
OutputManagement.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
OutputPower.cpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
OutputPower.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
PointerConstraints.cpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
PointerConstraints.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
PointerGestures.cpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
PointerGestures.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
PresentationTime.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
PresentationTime.hpp presentation: move to unique ptrs 2025-07-10 14:09:00 +02:00
PrimarySelection.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
PrimarySelection.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
RelativePointer.cpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
RelativePointer.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
Screencopy.cpp protocols: Fix fading out windows with noscreenshare being visible (#11457) 2025-08-17 20:17:22 +01:00
Screencopy.hpp screencopy: un-hdr screencopy buffers for cm-unaware clients (#11294) 2025-07-31 18:07:59 +02:00
SecurityContext.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
SecurityContext.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
ServerDecorationKDE.cpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
ServerDecorationKDE.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
SessionLock.cpp ci: correct tar command for xz compression & fix typos (#11213) 2025-07-25 17:19:23 +02:00
SessionLock.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
ShortcutsInhibit.cpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
ShortcutsInhibit.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
SinglePixel.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
SinglePixel.hpp singlepixel: move to unique ptrs 2025-07-10 14:09:00 +02:00
Tablet.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
Tablet.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
TearingControl.cpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
TearingControl.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
TextInputV1.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
TextInputV1.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
TextInputV3.cpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
TextInputV3.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
ToplevelExport.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
ToplevelExport.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
ToplevelMapping.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
ToplevelMapping.hpp protocols: refactor class member vars (n-t) (#10273) 2025-05-04 19:21:36 +02:00
Viewporter.cpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
Viewporter.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
VirtualKeyboard.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
VirtualKeyboard.hpp virtualkeyboard: Add options to skip releasing pressed keys on close and to skip sharing key states (#11214) 2025-08-04 21:29:39 +02:00
VirtualPointer.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
VirtualPointer.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
WaylandProtocol.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
WaylandProtocol.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGActivation.cpp protocols/activation: send an invalid token when serial isn't valid (#11505) 2025-08-23 11:45:00 +01:00
XDGActivation.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGBell.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
XDGBell.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGDecoration.cpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGDecoration.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGDialog.cpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGDialog.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGOutput.cpp xwayland: refactor class member vars (#10312) 2025-05-07 15:21:44 +02:00
XDGOutput.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGShell.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
XDGShell.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
XDGTag.cpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XDGTag.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00
XWaylandShell.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
XWaylandShell.hpp core: use new typed signals from hu (#10853) 2025-07-08 18:56:40 +02:00
XXColorManagement.cpp refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
XXColorManagement.hpp protocols: refactor class member vars (u-z) (#10282) 2025-05-04 23:39:00 +02:00