diff --git a/README.md b/README.md index b1cfb37d..d3a15dce 100644 --- a/README.md +++ b/README.md @@ -499,6 +499,7 @@ with the terminal emulator itself. Foot implements the following OSCs: * `OSC 117` - reset highlight background color * `OSC 119` - reset highlight foreground color * `OSC 133` - [shell integration](#shell-integration) +* `OSC 176` - set app ID * `OSC 555` - flash screen (**foot specific**) * `OSC 777` - desktop notification (only the `;notify` sub-command of OSC 777 is supported.) diff --git a/doc/foot-ctlseqs.7.scd b/doc/foot-ctlseqs.7.scd index 3fa03158..2d30484e 100644 --- a/doc/foot-ctlseqs.7.scd +++ b/doc/foot-ctlseqs.7.scd @@ -684,6 +684,11 @@ All _OSC_ sequences begin with *\\E]*, sometimes abbreviated _OSC_. | \\E] 133 ; A \\E\\ : FinalTerm : Mark start of shell prompt +| \\E] 176 ; _app-id_ \\E\\ +: foot +: Set app ID. _app-id_ is optional; if assigned, + the terminal window App ID will be set to the value. + An empty App ID resets the value to the default. | \\E] 555 \\E\\ : foot : Flash the entire terminal (foot extension) diff --git a/osc.c b/osc.c index 45d114de..7b0e38a7 100644 --- a/osc.c +++ b/osc.c @@ -910,6 +910,10 @@ osc_dispatch(struct terminal *term) } break; + case 176: + xdg_toplevel_set_app_id(term->window->xdg_toplevel, *string ? string : term->conf->app_id); + break; + case 555: osc_flash(term); break;