From 0653a95250b6abfecb55822c85cd0ce71930f6b2 Mon Sep 17 00:00:00 2001 From: dijunkun Date: Tue, 25 Aug 2026 22:52:41 +0800 Subject: [PATCH 1/2] [fix] update minirtc NVDEC reconfigure handling --- submodules/minirtc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/minirtc b/submodules/minirtc index d0a78e8..3aa5fa5 160000 --- a/submodules/minirtc +++ b/submodules/minirtc @@ -1 +1 @@ -Subproject commit d0a78e8bf9ce3509947a3f0e65972d96c586fd6a +Subproject commit 3aa5fa5ed0de9893cf957f4c09150f9341ce9a19 From d2b1329ecae056750e5b6f01cb9fd3317818cb5b Mon Sep 17 00:00:00 2001 From: dijunkun Date: Tue, 25 Aug 2026 22:59:45 +0800 Subject: [PATCH 2/2] [fix] restore Linux cursor state build compatibility --- src/gui/runtime/cursor_state_provider.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/gui/runtime/cursor_state_provider.cpp b/src/gui/runtime/cursor_state_provider.cpp index c55b322..aaeb2bd 100644 --- a/src/gui/runtime/cursor_state_provider.cpp +++ b/src/gui/runtime/cursor_state_provider.cpp @@ -56,6 +56,12 @@ bool CursorStateProvider::Sample(CursorState* state) { #include #include +// X11/X.h defines CursorShape as a protocol request opcode, which conflicts +// with CrossDesk's CursorShape enum. +#ifdef CursorShape +#undef CursorShape +#endif + #include #include #include @@ -158,17 +164,10 @@ CursorStateProvider::~CursorStateProvider() = default; bool CursorStateProvider::Sample(CursorState* state) { if (!state || !impl_ || !impl_->display) return false; - XFixesCursorImage* image = XFixesGetCursorImageAndName(impl_->display); + XFixesCursorImage* image = XFixesGetCursorImage(impl_->display); if (!image) return false; - std::string name; - if (image->atom != None) { - char* atom_name = XGetAtomName(impl_->display, image->atom); - if (atom_name) { - name = atom_name; - XFree(atom_name); - } - } + const std::string name = image->name ? image->name : ""; state->seq = 0; state->visible = CursorHasVisiblePixel(*image);