static void delete_ping_timeout_func (MetaDisplay *display, Window xwindow, guint32 timestamp, void *user_data) { MetaWindow *window = user_data; char *window_title; gchar *window_content, *tmp; GPid dialog_pid; meta_topic (META_DEBUG_PING, "Got delete ping timeout for %s\n", window->desc); if (window->dialog_pid >= 0) { meta_window_present_delete_dialog (window, timestamp); return; } window_title = g_locale_from_utf8 (window->title, -1, NULL, NULL, NULL); /* Translators: %s is a window title */ tmp = g_strdup_printf (_("<tt>%s</tt> is not responding."), window_title); window_content = g_strdup_printf ( "<big><b>%s</b></big>\n\n<i>%s</i>", tmp, _("You may choose to wait a short while for it to " "continue or force the application to quit entirely.")); g_free (window_title); dialog_pid = meta_show_dialog ("--question", window_content, 0, window->screen->number, _("_Wait"), _("_Force Quit"), window->xwindow, NULL, NULL); g_free (window_content); g_free (tmp); window->dialog_pid = dialog_pid; g_child_watch_add (dialog_pid, dialog_exited, window); }
static void delete_ping_timeout_func (MetaDisplay *display, Window xwindow, guint32 timestamp, void *user_data) { MetaWindow *window = user_data; char *window_title; gchar *window_content; GPid dialog_pid; meta_topic (META_DEBUG_PING, "Got delete ping timeout for %s\n", window->desc); if (window->dialog_pid >= 0) { meta_window_present_delete_dialog (window, timestamp); return; } window_title = g_locale_from_utf8 (window->title, -1, NULL, NULL, NULL); window_content = g_strdup_printf( _("<big><b><tt>%s</tt> is not responding.</b></big>\n\n" "<i>You may choose to wait a short while for it to " "continue or force the application to quit entirely.</i>"), window_title); g_free (window_title); dialog_pid = meta_show_dialog ("--question", window_content, 0, window->screen->number, _("_Wait"), _("_Force Quit"), window->xwindow, NULL, NULL); g_free (window_content); window->dialog_pid = dialog_pid; g_signal_connect (sigchld_nexus, "sigchld", G_CALLBACK (sigchld_handler), window); }
static void delete_ping_timeout_func (MetaDisplay *display, Window xwindow, guint32 timestamp, void *user_data) { MetaWindow *window = user_data; char *window_title; gchar *window_content, *tmp; GPid dialog_pid; meta_topic (META_DEBUG_PING, "Got delete ping timeout for %s\n", window->desc); if (window->dialog_pid >= 0) { meta_window_present_delete_dialog (window, timestamp); return; } /* This is to get a better string if the title isn't representable * in the locale encoding; actual conversion to UTF-8 is done inside * meta_show_dialog */ if (window->title && window->title[0]) { tmp = g_locale_from_utf8 (window->title, -1, NULL, NULL, NULL); if (tmp == NULL) window_title = NULL; else window_title = window->title; g_free (tmp); } else { window_title = NULL; } /* Translators: %s is a window title */ if (window_title) tmp = g_markup_printf_escaped (_("<tt>%s</tt> is not responding."), window_title); else tmp = g_strdup (_("Application is not responding.")); window_content = g_strdup_printf ( "<big><b>%s</b></big>\n\n<i>%s</i>", tmp, _("You may choose to wait a short while for it to " "continue or force the application to quit entirely.")); dialog_pid = meta_show_dialog ("--question", window_content, NULL, window->screen->screen_name, _("_Wait"), _("_Force Quit"), window->xwindow, NULL, NULL); g_free (window_content); g_free (tmp); window->dialog_pid = dialog_pid; g_child_watch_add (dialog_pid, dialog_exited, window); }