diff --git a/config.h b/config.h index b635972..3d7c85a 100644 --- a/config.h +++ b/config.h @@ -4,6 +4,7 @@ #include #define URGENT_ON_BEEP +#define DYNAMIC_TITLE static const char *url_regex = "(ftp|http)s?://[-a-zA-Z0-9.?$%&/=_~#.,:;+]*"; static const char *url_command = "/usr/bin/firefox"; diff --git a/term.c b/term.c index 22c029d..d81564e 100644 --- a/term.c +++ b/term.c @@ -136,6 +136,13 @@ static void beep_handler(__attribute__((unused)) VteTerminal *vte, GtkWidget *wi } #endif +#ifdef DYNAMIC_TITLE +static void window_title_cb(VteTerminal *vte, GtkWindow *window) { + const char *t = vte_terminal_get_window_title(vte); + gtk_window_set_title(window, t ? t : "term"); +} +#endif + int main(int argc, char **argv) { GError *error = NULL; @@ -222,6 +229,10 @@ int main(int argc, char **argv) { } #endif +#ifdef DYNAMIC_TITLE + g_signal_connect(vte, "window-title-changed", G_CALLBACK(window_title_cb), window); +#endif + gtk_widget_show_all(window); gtk_main(); return 0;