This commit is contained in:
Simon Lipp 2026-01-11 00:09:59 +03:00 committed by GitHub
commit 6cb985946b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 10 additions and 1 deletions

6
cage.c
View file

@ -248,6 +248,7 @@ usage(FILE *file, const char *cage)
" -m last Use only the last connected output\n"
" -s\t Allow VT switching\n"
" -v\t Show the version number and exit\n"
" -i app-id Set application idendifier for the toplevel window\n"
"\n"
" Use -- when you want to pass arguments to APPLICATION\n",
cage);
@ -257,7 +258,7 @@ static bool
parse_args(struct cg_server *server, int argc, char *argv[])
{
int c;
while ((c = getopt(argc, argv, "dDhm:sv")) != -1) {
while ((c = getopt(argc, argv, "dDhm:svi:")) != -1) {
switch (c) {
case 'd':
server->xdg_decoration = true;
@ -278,6 +279,9 @@ parse_args(struct cg_server *server, int argc, char *argv[])
case 's':
server->allow_vt_switch = true;
break;
case 'i':
server->app_id = optarg;
break;
case 'v':
fprintf(stdout, "Cage version " CAGE_VERSION "\n");
exit(0);

View file

@ -258,6 +258,10 @@ handle_new_output(struct wl_listener *listener, void *data)
return;
}
if (server->app_id != NULL && wlr_output_is_wl(wlr_output)) {
wlr_wl_output_set_app_id(wlr_output, server->app_id);
}
output->wlr_output = wlr_output;
wlr_output->data = output;
output->server = server;

View file

@ -75,6 +75,7 @@ struct cg_server {
bool return_app_code;
bool terminated;
enum wlr_log_importance log_level;
const char *app_id;
};
void server_terminate(struct cg_server *server);