Add optional headless fallback output

This allows configuring a headless fallback output that
is automatically created whenever there is no other output
around. It is destroyed when a new output is discovered.

It can be enabled by setting the environment variable
LABWC_FALLBACK_OUTPUT to the desired output name.

The feature benefits applications like wayvnc the most
as there is always an output available to connect to.

Co-Authored-By: Simon Long <simon@raspberrypi.com>
This commit is contained in:
Consolatis 2024-03-07 02:11:46 +01:00
parent e00f7cd6db
commit 60aab98e8d
5 changed files with 63 additions and 1 deletions

View file

@ -27,6 +27,7 @@
#include "labwc.h"
#include "layers.h"
#include "menu/menu.h"
#include "output-virtual.h"
#include "regions.h"
#include "resize_indicator.h"
#include "theme.h"
@ -69,6 +70,7 @@ handle_sighup(int signal, void *data)
{
session_environment_init();
reload_config_and_theme();
output_virtual_update_fallback(g_server);
return 0;
}
@ -490,6 +492,9 @@ server_start(struct server *server)
exit(EXIT_FAILURE);
}
/* Potentially set up the initial fallback output */
output_virtual_update_fallback(server);
if (setenv("WAYLAND_DISPLAY", socket, true) < 0) {
wlr_log_errno(WLR_ERROR, "unable to set WAYLAND_DISPLAY");
} else {