From 5959961302de8d93a1fb01d6d4c37ea55ba44a43 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Tue, 22 May 2012 08:22:31 -0400 Subject: [PATCH] dynamic window titles --- config.h | 1 + term.c | 11 +++++++++++ 2 files changed, 12 insertions(+) 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;