static void remmina_file_editor_on_save(GtkWidget* button, RemminaFileEditor* gfe) { remmina_file_editor_update(gfe); remmina_file_save_all(gfe->priv->remmina_file); remmina_icon_populate_menu(); gtk_widget_destroy(GTK_WIDGET(gfe)); }
void remmina_icon_init(void) { if (!remmina_icon.icon && !remmina_pref.disable_tray_icon) { #ifdef HAVE_LIBAPPINDICATOR remmina_icon.icon = app_indicator_new ("remmina-icon", "remmina", APP_INDICATOR_CATEGORY_OTHER); app_indicator_set_icon_theme_path (remmina_icon.icon, REMMINA_DATADIR G_DIR_SEPARATOR_S "icons"); app_indicator_set_status (remmina_icon.icon, APP_INDICATOR_STATUS_ACTIVE); app_indicator_set_title (remmina_icon.icon, "Remmina"); remmina_icon_populate_menu (); #else remmina_icon.icon = gtk_status_icon_new_from_icon_name("remmina"); gtk_status_icon_set_title(remmina_icon.icon, _("Remmina Remote Desktop Client")); gtk_status_icon_set_tooltip_text(remmina_icon.icon, _("Remmina Remote Desktop Client")); g_signal_connect(G_OBJECT(remmina_icon.icon), "popup-menu", G_CALLBACK(remmina_icon_on_popup_menu), NULL); g_signal_connect(G_OBJECT(remmina_icon.icon), "activate", G_CALLBACK(remmina_icon_on_activate), NULL); #endif remmina_widget_pool_hold(TRUE); } else if (remmina_icon.icon) { #ifdef HAVE_LIBAPPINDICATOR app_indicator_set_status (remmina_icon.icon, remmina_pref.disable_tray_icon ? APP_INDICATOR_STATUS_PASSIVE : APP_INDICATOR_STATUS_ACTIVE); #else gtk_status_icon_set_visible(remmina_icon.icon, !remmina_pref.disable_tray_icon); #endif remmina_widget_pool_hold(!remmina_pref.disable_tray_icon); } if (!remmina_icon.avahi) { remmina_icon.avahi = remmina_avahi_new(); } if (remmina_icon.avahi) { if (remmina_pref.applet_enable_avahi) { if (!remmina_icon.avahi->started) remmina_avahi_start(remmina_icon.avahi); } else { remmina_avahi_stop(remmina_icon.avahi); } } if (!remmina_icon.autostart_file) { remmina_icon.autostart_file = g_strdup_printf("%s/.config/autostart/remmina-applet.desktop", g_get_home_dir()); remmina_icon_create_autostart_file(); } }
static void remmina_main_action_connection_delete(GtkAction *action, RemminaMain *remminamain) { GtkWidget *dialog; if (remminamain->priv->selected_filename == NULL) return; dialog = gtk_message_dialog_new(GTK_WINDOW(remminamain), GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _("Are you sure to delete '%s'"), remminamain->priv->selected_name); if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES) { remmina_file_delete(remminamain->priv->selected_filename); remmina_icon_populate_menu(); remmina_main_load_files(remminamain, TRUE); } gtk_widget_destroy(dialog); remmina_main_clear_selection_data(remminamain); }
static void remmina_file_editor_on_connect(GtkWidget* button, RemminaFileEditor* gfe) { RemminaFile* gf; remmina_file_editor_update(gfe); if (remmina_pref.save_when_connect) { remmina_file_save_all(gfe->priv->remmina_file); remmina_icon_populate_menu(); } gf = remmina_file_dup(gfe->priv->remmina_file); /* Put server into name for Quick Connect */ if (remmina_file_get_filename(gf) == NULL) { remmina_file_set_string(gf, "name", remmina_file_get_string(gf, "server")); } gtk_widget_destroy(GTK_WIDGET(gfe)); remmina_connection_window_open_from_file(gf); }