summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLee Bousfield <ljbousfield@gmail.com>2025-03-17 09:51:18 -0500
committerGitHub <noreply@github.com>2025-03-17 15:51:18 +0100
commitefc51eb7d1ec8377425bb7b623b54831f2c18afc (patch)
tree89497964046123a52d2db583f60e3200b6126446
parentc2835b6b0f963d491e975a191fb454a522c94b2c (diff)
managers: Use primary backend for cursor swapchain (#9645)
-rw-r--r--CMakeLists.txt2
-rw-r--r--meson.build2
-rw-r--r--src/managers/PointerManager.cpp4
3 files changed, 5 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 40258bbe..c4ad4ca0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -102,7 +102,7 @@ else()
endif()
find_package(OpenGL REQUIRED COMPONENTS ${GLES_VERSION})
-pkg_check_modules(aquamarine_dep REQUIRED IMPORTED_TARGET aquamarine>=0.4.5)
+pkg_check_modules(aquamarine_dep REQUIRED IMPORTED_TARGET aquamarine>=0.8.0)
pkg_check_modules(hyprlang_dep REQUIRED IMPORTED_TARGET hyprlang>=0.3.2)
pkg_check_modules(hyprcursor_dep REQUIRED IMPORTED_TARGET hyprcursor>=0.1.7)
pkg_check_modules(hyprutils_dep REQUIRED IMPORTED_TARGET hyprutils>=0.5.1)
diff --git a/meson.build b/meson.build
index da9e78cf..d9635a27 100644
--- a/meson.build
+++ b/meson.build
@@ -31,7 +31,7 @@ if cpp_compiler.check_header('execinfo.h')
add_project_arguments('-DHAS_EXECINFO', language: 'cpp')
endif
-aquamarine = dependency('aquamarine', version: '>=0.4.5')
+aquamarine = dependency('aquamarine', version: '>=0.8.0')
hyprcursor = dependency('hyprcursor', version: '>=0.1.7')
hyprgraphics = dependency('hyprgraphics', version: '>= 0.1.1')
hyprlang = dependency('hyprlang', version: '>= 0.3.2')
diff --git a/src/managers/PointerManager.cpp b/src/managers/PointerManager.cpp
index 048719b8..4f909714 100644
--- a/src/managers/PointerManager.cpp
+++ b/src/managers/PointerManager.cpp
@@ -419,7 +419,9 @@ SP<Aquamarine::IBuffer> CPointerManager::renderHWCursorBuffer(SP<CPointerManager
}
}
- state->monitor->cursorSwapchain = Aquamarine::CSwapchain::create(allocator, state->monitor->output->getBackend());
+ auto backend = state->monitor->output->getBackend();
+ auto primary = backend->getPrimary();
+ state->monitor->cursorSwapchain = Aquamarine::CSwapchain::create(allocator, primary ? primary.lock() : backend);
}
auto options = state->monitor->cursorSwapchain->currentOptions();