aboutsummaryrefslogtreecommitdiff
path: root/src/Overlay.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Overlay.cpp')
-rw-r--r--src/Overlay.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/Overlay.cpp b/src/Overlay.cpp
index c8e8b8f..23ff1c9 100644
--- a/src/Overlay.cpp
+++ b/src/Overlay.cpp
@@ -772,9 +772,19 @@ namespace gsr {
if(cursor_size <= 1)
cursor_size = 24;
- XcursorImage *cursor_image = XcursorShapeLoadImage(XC_left_ptr, cursor_theme, cursor_size);
+ XcursorImage *cursor_image = nullptr;
+ for(const char *cursor_theme_test : {cursor_theme, "default"}) {
+ for(unsigned int shape : {XC_left_ptr, XC_right_ptr}) {
+ cursor_image = XcursorShapeLoadImage(shape, cursor_theme_test, cursor_size);
+ if(cursor_image)
+ break;
+ }
+ }
+
if(!cursor_image) {
fprintf(stderr, "Error: failed to get cursor\n");
+ XFixesShowCursor(xi_display, DefaultRootWindow(xi_display));
+ XFlush(xi_display);
return;
}