mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-30 00:15:58 +01:00
rootston: export XCURSOR_SIZE and XCURSOR_THEME
These can be used by toolkits (currently Qt) to choose a default cursor theme and size. Note that this isn't a perfect solution: - Per-seat configuration isn't possible - It's not possible to set the default image - Live config reload isn't possible But it's easy to implement and simple. To fix these remaining issues a separate protocol would be needed.
This commit is contained in:
parent
97049576f7
commit
3a181ab430
1 changed files with 10 additions and 2 deletions
|
@ -1,4 +1,4 @@
|
||||||
#define _POSIX_C_SOURCE 199309L
|
#define _POSIX_C_SOURCE 200112L
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -881,7 +881,6 @@ struct roots_desktop *desktop_create(struct roots_server *server,
|
||||||
|
|
||||||
desktop->tablet_v2 = wlr_tablet_v2_create(server->wl_display);
|
desktop->tablet_v2 = wlr_tablet_v2_create(server->wl_display);
|
||||||
|
|
||||||
#ifdef WLR_HAS_XWAYLAND
|
|
||||||
const char *cursor_theme = NULL;
|
const char *cursor_theme = NULL;
|
||||||
const char *cursor_default = ROOTS_XCURSOR_DEFAULT;
|
const char *cursor_default = ROOTS_XCURSOR_DEFAULT;
|
||||||
struct roots_cursor_config *cc =
|
struct roots_cursor_config *cc =
|
||||||
|
@ -893,6 +892,15 @@ struct roots_desktop *desktop_create(struct roots_server *server,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char cursor_size_fmt[16];
|
||||||
|
snprintf(cursor_size_fmt, sizeof(cursor_size_fmt),
|
||||||
|
"%d", ROOTS_XCURSOR_SIZE);
|
||||||
|
setenv("XCURSOR_SIZE", cursor_size_fmt, 1);
|
||||||
|
if (cursor_theme != NULL) {
|
||||||
|
setenv("XCURSOR_THEME", cursor_theme, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef WLR_HAS_XWAYLAND
|
||||||
desktop->xcursor_manager = wlr_xcursor_manager_create(cursor_theme,
|
desktop->xcursor_manager = wlr_xcursor_manager_create(cursor_theme,
|
||||||
ROOTS_XCURSOR_SIZE);
|
ROOTS_XCURSOR_SIZE);
|
||||||
if (desktop->xcursor_manager == NULL) {
|
if (desktop->xcursor_manager == NULL) {
|
||||||
|
|
Loading…
Reference in a new issue