Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/Remmina/Remmina.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntenore Gatta <antenore@simbiosi.org>2016-03-11 03:23:58 +0300
committerAntenore Gatta <antenore@simbiosi.org>2016-03-11 03:23:58 +0300
commit9cf6abb8f8f926e5c8fbd8e655300f9c85137bb5 (patch)
tree933219945cc37b99ff95569197fd27c308fa8133 /remmina
parentf7963294c9113cd205e030f3a330b92fa17e74ba (diff)
Screenshots folder settings
Diffstat (limited to 'remmina')
-rw-r--r--remmina/src/remmina_connection_window.c6
-rw-r--r--remmina/src/remmina_pref.c18
-rw-r--r--remmina/src/remmina_pref.h9
-rw-r--r--remmina/src/remmina_pref_dialog.c4
-rw-r--r--remmina/src/remmina_pref_dialog.h1
5 files changed, 31 insertions, 7 deletions
diff --git a/remmina/src/remmina_connection_window.c b/remmina/src/remmina_connection_window.c
index 70a03e9a4..b6d019e55 100644
--- a/remmina/src/remmina_connection_window.c
+++ b/remmina/src/remmina_connection_window.c
@@ -1561,7 +1561,7 @@ static void remmina_connection_holder_toolbar_screenshot(GtkWidget* widget, Remm
gint x_orig, y_orig;
gint width, height;
const gchar* remminafile;
- const gchar* imagedir;
+ //const gchar* imagedir;
gchar* pngname;
gchar* pngdate;
GtkWidget* dialog;
@@ -1596,7 +1596,7 @@ static void remmina_connection_holder_toolbar_screenshot(GtkWidget* widget, Remm
cairo_paint(cr);
remminafile = remmina_file_get_filename(cnnobj->remmina_file);
- imagedir = g_get_user_special_dir(G_USER_DIRECTORY_PICTURES);
+ //imagedir = g_get_user_special_dir(G_USER_DIRECTORY_PICTURES);
/* TODO: Improve file name (DONE:8743571d) + give the user the option */
pngdate = g_strdup_printf("%d-%d-%d-%d:%d:%f",
g_date_time_get_year (date),
@@ -1608,7 +1608,7 @@ static void remmina_connection_holder_toolbar_screenshot(GtkWidget* widget, Remm
g_date_time_unref (date);
- pngname = g_strdup_printf("%s/%s-%s.png", imagedir,
+ pngname = g_strdup_printf("%s/%s-%s.png", remmina_pref.screenshot_path,
g_path_get_basename(remminafile), pngdate);
g_print("%s\n",pngname);
diff --git a/remmina/src/remmina_pref.c b/remmina/src/remmina_pref.c
index 77e0a5221..69d4688a9 100644
--- a/remmina/src/remmina_pref.c
+++ b/remmina/src/remmina_pref.c
@@ -242,6 +242,7 @@ void remmina_pref_init(void)
{
TRACE_CALL("remmina_pref_init");
GKeyFile *gkeyfile;
+ GError *gerror = NULL;
gchar dirname[MAX_PATH_LEN];
GDir *old;
@@ -391,6 +392,16 @@ void remmina_pref_init(void)
else
remmina_pref.ssh_loglevel = DEFAULT_SSH_LOGLEVEL;
+ if (g_key_file_has_key(gkeyfile, "remmina_pref", "screenshot_path", NULL)) {
+ remmina_pref.screenshot_path = g_key_file_get_string(gkeyfile, "remmina_pref", "screenshot_path", &gerror);
+ if(gerror != NULL) {
+ remmina_pref.screenshot_path = g_get_user_special_dir(G_USER_DIRECTORY_PICTURES);
+ g_error_free(free);
+ }
+ }else{
+ remmina_pref.screenshot_path = g_get_user_special_dir(G_USER_DIRECTORY_PICTURES);
+ }
+
if (g_key_file_has_key(gkeyfile, "remmina_pref", "ssh_parseconfig", NULL))
remmina_pref.ssh_parseconfig = g_key_file_get_boolean(gkeyfile, "remmina_pref", "ssh_parseconfig", NULL);
else
@@ -619,6 +630,7 @@ void remmina_pref_save(void)
g_key_file_set_integer(gkeyfile, "remmina_pref", "default_action", remmina_pref.default_action);
g_key_file_set_integer(gkeyfile, "remmina_pref", "scale_quality", remmina_pref.scale_quality);
g_key_file_set_integer(gkeyfile, "remmina_pref", "ssh_loglevel", remmina_pref.ssh_loglevel);
+ g_key_file_set_string(gkeyfile, "remmina_pref", "screenshot_path", remmina_pref.screenshot_path);
g_key_file_set_boolean(gkeyfile, "remmina_pref", "ssh_parseconfig", remmina_pref.ssh_parseconfig);
g_key_file_set_boolean(gkeyfile, "remmina_pref", "hide_toolbar", remmina_pref.hide_toolbar);
g_key_file_set_boolean(gkeyfile, "remmina_pref", "hide_statusbar", remmina_pref.hide_statusbar);
@@ -826,6 +838,12 @@ gint remmina_pref_get_ssh_loglevel(void)
return remmina_pref.ssh_loglevel;
}
+gchar remmina_pref_get_screenshot_path(void)
+{
+ TRACE_CALL("remmina_pref_get_screenshot_path");
+ return remmina_pref.screenshot_path;
+}
+
gboolean remmina_pref_get_survey(void)
{
TRACE_CALL("remmina_pref_get_survey");
diff --git a/remmina/src/remmina_pref.h b/remmina/src/remmina_pref.h
index b9c8587d4..87050eadd 100644
--- a/remmina/src/remmina_pref.h
+++ b/remmina/src/remmina_pref.h
@@ -93,9 +93,7 @@ typedef struct _RemminaPref
gboolean survey;
gint default_action;
gint scale_quality;
- gint ssh_loglevel;
- gboolean ssh_parseconfig;
- gint sshtunnel_port;
+ gchar *screenshot_path;
gint auto_scroll_step;
gint recent_maximum;
gchar *resolutions;
@@ -112,6 +110,10 @@ typedef struct _RemminaPref
gboolean applet_new_ontop;
gboolean applet_hide_count;
gboolean disable_tray_icon;
+ /* In RemminaPrefDialog SSH Option tab */
+ gint ssh_loglevel;
+ gboolean ssh_parseconfig;
+ gint sshtunnel_port;
/* In RemminaPrefDialog keyboard tab */
guint hostkey;
guint shortcutkey_fullscreen;
@@ -186,6 +188,7 @@ gchar** remmina_pref_keymap_groups(void);
gint remmina_pref_get_scale_quality(void);
gint remmina_pref_get_ssh_loglevel(void);
+gchar remmina_pref_get_screenshot_path(void);
gboolean remmina_pref_get_ssh_parseconfig(void);
gint remmina_pref_get_sshtunnel_port(void);
diff --git a/remmina/src/remmina_pref_dialog.c b/remmina/src/remmina_pref_dialog.c
index 77c453cc3..e5c5f05c5 100644
--- a/remmina/src/remmina_pref_dialog.c
+++ b/remmina/src/remmina_pref_dialog.c
@@ -136,9 +136,9 @@ void remmina_pref_on_dialog_destroy(GtkWidget *widget, gpointer user_data)
remmina_pref.show_buttons_icons = gtk_combo_box_get_active(remmina_pref_dialog->comboboxtext_appearance_show_buttons_icons);
remmina_pref.show_menu_icons = gtk_combo_box_get_active(remmina_pref_dialog->comboboxtext_appearance_show_menu_icons);
remmina_pref.scale_quality = gtk_combo_box_get_active(remmina_pref_dialog->comboboxtext_options_scale_quality);
+ remmina_pref.screenshot_path = gtk_file_chooser_get_filename(remmina_pref_dialog->filechooserbutton_options_screenshots_path);
remmina_pref.ssh_loglevel = gtk_combo_box_get_active(remmina_pref_dialog->comboboxtext_options_ssh_loglevel);
remmina_pref.ssh_parseconfig = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog->checkbutton_options_ssh_parseconfig));
-
remmina_pref.sshtunnel_port = atoi(gtk_entry_get_text(remmina_pref_dialog->entry_options_ssh_port));
if (remmina_pref.sshtunnel_port <= 0)
remmina_pref.sshtunnel_port = DEFAULT_SSHTUNNEL_PORT;
@@ -357,6 +357,7 @@ static void remmina_pref_dialog_init(void)
gtk_combo_box_set_active(remmina_pref_dialog->comboboxtext_appearance_show_menu_icons, remmina_pref.show_menu_icons);
gtk_combo_box_set_active(remmina_pref_dialog->comboboxtext_options_scale_quality, remmina_pref.scale_quality);
gtk_combo_box_set_active(remmina_pref_dialog->comboboxtext_options_ssh_loglevel, remmina_pref.ssh_loglevel);
+ // ahi ahi ahi gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(remmina_pref_dialog->filechooserbutton_options_screenshots_path, remmina_pref.screenshot_path));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog->checkbutton_options_ssh_parseconfig), remmina_pref.ssh_parseconfig);
remmina_pref_dialog_set_button_label(remmina_pref_dialog->button_keyboard_copy, remmina_pref.vte_shortcutkey_copy);
@@ -396,6 +397,7 @@ GtkDialog* remmina_pref_dialog_new(gint default_tab, GtkWindow *parent)
remmina_pref_dialog->comboboxtext_options_scale_quality = GTK_COMBO_BOX(GET_OBJECT("comboboxtext_options_scale_quality"));
remmina_pref_dialog->checkbutton_options_ssh_parseconfig = GTK_CHECK_BUTTON(GET_OBJECT("checkbutton_options_ssh_parseconfig"));
remmina_pref_dialog->comboboxtext_options_ssh_loglevel = GTK_COMBO_BOX(GET_OBJECT("comboboxtext_options_ssh_loglevel"));
+ remmina_pref_dialog->filechooserbutton_options_screenshots_path = GTK_FILE_CHOOSER(GET_OBJECT("filechooserbutton_options_screenshots_path"));
remmina_pref_dialog->entry_options_ssh_port = GTK_ENTRY(GET_OBJECT("entry_options_ssh_port"));
remmina_pref_dialog->entry_options_scroll = GTK_ENTRY(GET_OBJECT("entry_options_scroll"));
remmina_pref_dialog->entry_options_recent_items = GTK_ENTRY(GET_OBJECT("entry_options_recent_items"));
diff --git a/remmina/src/remmina_pref_dialog.h b/remmina/src/remmina_pref_dialog.h
index 13a9fc5cd..cc00ecbe4 100644
--- a/remmina/src/remmina_pref_dialog.h
+++ b/remmina/src/remmina_pref_dialog.h
@@ -63,6 +63,7 @@ typedef struct _RemminaPrefDialog
GtkComboBox *comboboxtext_appearance_show_menu_icons;
GtkComboBox *comboboxtext_options_scale_quality;
GtkComboBox *comboboxtext_options_ssh_loglevel;
+ GtkFileChooser *filechooserbutton_options_screenshots_path;
GtkCheckButton *checkbutton_options_ssh_parseconfig;
GtkEntry *entry_options_ssh_port;
GtkEntry *entry_options_scroll;