add option to avoid Face images being saved to addrbook
[claws.git] / src / prefs_message.c
index 0b04d34f1ba156d5fa617752ca5dd3c8dc234071..b8a9a2ca56ce26a2b9cbe8be28e870de887997a9 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 2005-2012 Colin Leroy <colin@colino.net> & The Claws Mail Team
+ * Claws Mail -- a GTK+ based, lightweight, and fast e-mail client
+ * Copyright (C) 2005-2020 the Claws Mail Team and Colin Leroy
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -14,7 +14,6 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * 
  */
 
 #ifdef HAVE_CONFIG_H
@@ -50,6 +49,7 @@ typedef struct _MessagePage
        GtkWidget *checkbtn_disphdrpane;
        GtkWidget *checkbtn_disphdr;
        GtkWidget *checkbtn_dispxface;
+       GtkWidget *checkbtn_savexface;
 
        GtkWidget *checkbtn_html;
        GtkWidget *checkbtn_html_plugin;
@@ -85,6 +85,7 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
        GtkWidget *checkbtn_disphdrpane;
        GtkWidget *checkbtn_disphdr;
        GtkWidget *checkbtn_dispxface;
+       GtkWidget *checkbtn_savexface;
 
        GtkWidget *button_edit_disphdr;
        GtkWidget *checkbtn_html;
@@ -125,9 +126,13 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
 #if HAVE_LIBCOMPFACE
        PACK_CHECK_BUTTON(vbox2, checkbtn_dispxface,
                          _("Display (X-)Face in message view"));
+       PACK_CHECK_BUTTON(vbox2, checkbtn_savexface,
+                         _("Save (X-)Face in address book if possible"));
 #else
        PACK_CHECK_BUTTON(vbox2, checkbtn_dispxface,
                          _("Display Face in message view"));
+       PACK_CHECK_BUTTON(vbox2, checkbtn_savexface,
+                         _("Save Face in address book if possible"));
 #endif
 
        gtk_widget_set_sensitive(checkbtn_dispxface, 
@@ -183,7 +188,6 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
        gtk_widget_show (spinbtn_linespc);
        gtk_box_pack_start (GTK_BOX (hbox_linespc), spinbtn_linespc,
                            FALSE, FALSE, 0);
-       gtk_widget_set_size_request (spinbtn_linespc, 64, -1);
        gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbtn_linespc), TRUE);
 
        label_linespc = gtk_label_new (_("pixels"));
@@ -216,11 +220,10 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
        gtk_widget_show (spinbtn_scrollstep);
        gtk_box_pack_start (GTK_BOX (hbox_scr), spinbtn_scrollstep,
                            FALSE, FALSE, 0);
-       gtk_widget_set_size_request (spinbtn_scrollstep, 64, -1);
        gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbtn_scrollstep),
                                     TRUE);
 
-       label_scr = gtk_label_new (_("pixel(s)"));
+       label_scr = gtk_label_new (_("pixels"));
        gtk_widget_show (label_scr);
        gtk_box_pack_start (GTK_BOX (hbox_scr), label_scr, FALSE, FALSE, 0);
 
@@ -246,7 +249,7 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
        gtk_widget_show (hbox2);
        gtk_box_pack_start (GTK_BOX (hbox1), hbox2, FALSE, FALSE, 0);
 
-       label_quote_chars = gtk_label_new (_("Treat these characters as quotation marks"));
+       label_quote_chars = gtk_label_new (_("Treat these characters as quotation marks"));
        gtk_widget_show (label_quote_chars);
        gtk_box_pack_start (GTK_BOX (hbox2), label_quote_chars, FALSE, FALSE, 0);
 
@@ -261,6 +264,8 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
 
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_dispxface),
                prefs_common.display_xface);
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_savexface),
+               prefs_common.save_xface);
 
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_disphdr),
                prefs_common.display_header);
@@ -288,6 +293,7 @@ static void prefs_message_create_widget(PrefsPage *_page, GtkWindow *window,
        prefs_message->window = GTK_WIDGET(window);
        prefs_message->checkbtn_disphdrpane = checkbtn_disphdrpane;
        prefs_message->checkbtn_dispxface = checkbtn_dispxface;
+       prefs_message->checkbtn_savexface = checkbtn_savexface;
        prefs_message->checkbtn_disphdr = checkbtn_disphdr;
        prefs_message->checkbtn_html = checkbtn_html;
        prefs_message->checkbtn_html_plugin = checkbtn_html_plugin;
@@ -311,6 +317,8 @@ static void prefs_message_save(PrefsPage *_page)
                GTK_TOGGLE_BUTTON(page->checkbtn_disphdrpane));
        prefs_common.display_xface = gtk_toggle_button_get_active(
                GTK_TOGGLE_BUTTON(page->checkbtn_dispxface));
+       prefs_common.save_xface = gtk_toggle_button_get_active(
+               GTK_TOGGLE_BUTTON(page->checkbtn_savexface));
        prefs_common.display_header = gtk_toggle_button_get_active(
                GTK_TOGGLE_BUTTON(page->checkbtn_disphdr));
        prefs_common.render_html = gtk_toggle_button_get_active(