Index: terminal/terminal-window.c =================================================================== --- terminal/terminal-window.c (revision 30108) +++ terminal/terminal-window.c (working copy) @@ -98,6 +98,8 @@ static void terminal_window_u static void terminal_window_update_mnemonics (TerminalWindow *window); static void terminal_window_rebuild_gomenu (TerminalWindow *window); static gboolean terminal_window_delete_event (TerminalWindow *window); +static gboolean terminal_window_state_event (TerminalWindow *window, + GdkEventWindowState *event); static void terminal_window_page_notified (GtkNotebook *notebook, GParamSpec *pspec, TerminalWindow *window); @@ -414,6 +416,7 @@ terminal_window_init (TerminalWindow *wi gtk_widget_show (window->notebook); g_object_connect (G_OBJECT (window), + "signal::window-state-event", G_CALLBACK (terminal_window_state_event), NULL, "signal::delete-event", G_CALLBACK (terminal_window_delete_event), NULL, "signal-after::style-set", G_CALLBACK (terminal_window_queue_reset_size), NULL, NULL); @@ -868,6 +871,18 @@ terminal_window_delete_event (TerminalWi +static gboolean +terminal_window_state_event (TerminalWindow *window, GdkEventWindowState *event) +{ + gtk_toggle_action_set_active ( + GTK_TOGGLE_ACTION(gtk_action_group_get_action (window->action_group, "fullscreen")), + (event->new_window_state & GDK_WINDOW_STATE_FULLSCREEN)); + + return FALSE; +} + + + static void terminal_window_page_notified (GtkNotebook *notebook, GParamSpec *pspec,