be used with labwc the preferred mode of the monitor is used instead.
Default is no.
+*<core><xwaylandPersistence>* [yes|no]
+ Keep XWayland alive even when no clients are connected, rather than
+ using a "lazy" policy that allows the server to launch on demand and die
+ when it is no longer needed. Default is no.
+
+ Note: changing this setting requires a restart of labwc.
+
## PLACEMENT
*<placement><policy>* [center|automatic|cursor]
<adaptiveSync>no</adaptiveSync>
<allowTearing>no</allowTearing>
<reuseOutputMode>no</reuseOutputMode>
+ <xwaylandPersistence>no</xwaylandPersistence>
</core>
<placement>
bool allow_tearing;
bool reuse_output_mode;
enum view_placement_policy placement_policy;
+ bool xwayland_persistence;
/* focus */
bool focus_follow_mouse;
if (rc.placement_policy == LAB_PLACE_INVALID) {
rc.placement_policy = LAB_PLACE_CENTER;
}
+ } else if (!strcasecmp(nodename, "xwaylandPersistence.core")) {
+ set_bool(content, &rc.xwayland_persistence);
} else if (!strcmp(nodename, "name.theme")) {
rc.theme_name = xstrdup(content);
} else if (!strcmp(nodename, "cornerradius.theme")) {
#include "common/array.h"
#include "common/macros.h"
#include "common/mem.h"
+#include "config/rcxml.h"
#include "labwc.h"
#include "node.h"
#include "ssd.h"
xwayland_server_init(struct server *server, struct wlr_compositor *compositor)
{
server->xwayland =
- wlr_xwayland_create(server->wl_display, compositor, true);
+ wlr_xwayland_create(server->wl_display,
+ compositor, /* lazy */ !rc.xwayland_persistence);
if (!server->xwayland) {
wlr_log(WLR_ERROR, "cannot create xwayland server");
exit(EXIT_FAILURE);