[Commits] [SCM] claws branch, master, updated. 3.11.1-66-gd6ba813
mones at claws-mail.org
mones at claws-mail.org
Thu Jan 29 21:34:03 CET 2015
The branch, master has been updated
via d6ba81337a6217737996bb0e6faf46b47ccc2722 (commit)
from d8a6df27a1cf5b9ec202de2ac8114f3efeedf731 (commit)
Summary of changes:
src/plugins/rssyl/rssyl_prefs.c | 127 ++++++++++++++++++++++++---------------
src/plugins/rssyl/rssyl_prefs.h | 22 +++++++
2 files changed, 101 insertions(+), 48 deletions(-)
- Log -----------------------------------------------------------------
commit d6ba81337a6217737996bb0e6faf46b47ccc2722
Author: Ricardo Mones <ricardo at mones.org>
Date: Thu Jan 29 21:33:33 2015 +0100
Fix bug #3363 “preferences page composition seems weird”
diff --git a/src/plugins/rssyl/rssyl_prefs.c b/src/plugins/rssyl/rssyl_prefs.c
index 624c485..374a862 100644
--- a/src/plugins/rssyl/rssyl_prefs.c
+++ b/src/plugins/rssyl/rssyl_prefs.c
@@ -1,7 +1,7 @@
/*
- * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 1999-2004 Hiroyuki Yamamoto
- * This file (C) 2005 Andrej Kacian <andrej at kacian.sk>
+ * Claws Mail -- a GTK+ based, lightweight, and fast e-mail client
+ * Copyright (C) 1999-2015 Hiroyuki Yamamoto and the Claws Mail team
+ * This file (C) 2005-2015 Andrej Kacian <andrej at kacian.sk>
*
* - Plugin preferences
*
@@ -47,18 +47,18 @@ static void create_rssyl_prefs_page(PrefsPage *page,
static void save_rssyl_prefs(PrefsPage *page);
static void rssyl_apply_prefs(void);
- static PrefParam param[] = {
- { "refresh_interval", PREF_DEFAULT_REFRESH, &rssyl_prefs.refresh, P_INT,
- NULL, NULL, NULL },
- { "refresh_on_startup", "FALSE", &rssyl_prefs.refresh_on_startup, P_BOOL,
- NULL, NULL, NULL },
- { "refresh_enabled", "TRUE", &rssyl_prefs.refresh_enabled, P_BOOL,
- NULL, NULL, NULL },
- { "cookies_path", "", &rssyl_prefs.cookies_path, P_STRING,
- NULL, NULL, NULL },
- { "ssl_verify_peer", "TRUE", &rssyl_prefs.ssl_verify_peer, P_BOOL,
- NULL, NULL, NULL },
- { 0, 0, 0, 0, 0, 0, 0 }
+static PrefParam param[] = {
+ { "refresh_interval", PREF_DEFAULT_REFRESH, &rssyl_prefs.refresh,
+ P_INT, NULL, NULL, NULL },
+ { "refresh_on_startup", "FALSE", &rssyl_prefs.refresh_on_startup,
+ P_BOOL, NULL, NULL, NULL },
+ { "refresh_enabled", "TRUE", &rssyl_prefs.refresh_enabled,
+ P_BOOL, NULL, NULL, NULL },
+ { "cookies_path", "", &rssyl_prefs.cookies_path,
+ P_STRING, NULL, NULL, NULL },
+ { "ssl_verify_peer", "TRUE", &rssyl_prefs.ssl_verify_peer,
+ P_BOOL, NULL, NULL, NULL },
+ { 0, 0, 0, 0, 0, 0, 0 }
};
void rssyl_prefs_init(void)
@@ -99,79 +99,110 @@ rssyl_refresh_enabled_toggled_cb(GtkToggleButton *tb, gpointer data)
return FALSE;
}
+/* Open a file select dialog and set file path to cookies entry */
+static void
+rssyl_prefs_cookies_browse_cb(GtkWidget* widget, gpointer data)
+{
+ gchar *filename;
+ gchar *utf8_filename;
+ GtkEntry *dest = GTK_ENTRY(data);
+
+ filename = filesel_select_file_open(_("Select cookies file"), NULL);
+ if (!filename) return;
+
+ utf8_filename = g_filename_to_utf8(filename, -1, NULL, NULL, NULL);
+ if (!utf8_filename) {
+ g_warning("rssyl_prefs_cookies_browse_cb(): failed to convert character set.");
+ utf8_filename = g_strdup(filename);
+ }
+ gtk_entry_set_text(GTK_ENTRY(dest), utf8_filename);
+ g_free(utf8_filename);
+}
+
static void create_rssyl_prefs_page(PrefsPage *page,
GtkWindow *window, gpointer data)
{
- int row = 0;
RPrefsPage *prefs_page = (RPrefsPage *) page;
- GtkWidget *table;
- GtkWidget *refresh, *refresh_enabled;
+ GtkWidget *vbox, *vbox1, *vbox2;
+ GtkWidget *frame;
+ GtkWidget *refresh, *refresh_enabled, *refresh_hbox;
GtkWidget *label;
GtkWidget *refresh_on_startup;
GtkObject *refresh_adj;
- GtkWidget *cookies_path;
+ GtkWidget *cookies_path, *cookies_btn, *cookies_hbox;
GtkWidget *ssl_verify_peer;
- table = gtk_table_new(3, 2, FALSE);
- gtk_container_set_border_width(GTK_CONTAINER(table), 5);
- gtk_table_set_row_spacings(GTK_TABLE(table), VSPACING_NARROW);
- gtk_table_set_col_spacings(GTK_TABLE(table), 8);
+ vbox1 = gtk_vbox_new(FALSE, 6);
/* Refresh interval */
+ refresh_hbox = gtk_hbox_new(FALSE, 6);
refresh_enabled = gtk_check_button_new_with_label(
- _("Default refresh interval in minutes"));
+ _("Default refresh interval"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(refresh_enabled),
rssyl_prefs.refresh_enabled);
- gtk_table_attach(GTK_TABLE(table), refresh_enabled, 0, 1, row, row+1,
- GTK_FILL | GTK_EXPAND, 0, 0, 0);
+ gtk_box_pack_start(GTK_BOX(refresh_hbox), refresh_enabled, FALSE, FALSE, 0);
refresh_adj = gtk_adjustment_new(rssyl_prefs.refresh,
1, 100000, 1, 10, 0);
refresh = gtk_spin_button_new(GTK_ADJUSTMENT(refresh_adj), 1, 0);
gtk_widget_set_sensitive(GTK_WIDGET(refresh), rssyl_prefs.refresh_enabled);
- gtk_table_attach(GTK_TABLE(table), refresh, 1, 2, row, row+1,
- GTK_FILL, 0, 0, 0);
-
g_signal_connect(G_OBJECT(refresh_enabled), "toggled",
G_CALLBACK(rssyl_refresh_enabled_toggled_cb), refresh);
+ gtk_box_pack_start(GTK_BOX(refresh_hbox), refresh, FALSE, FALSE, 0);
+
+ label = gtk_label_new(_("minute(s)"));
+ gtk_box_pack_start(GTK_BOX(refresh_hbox), label, FALSE, FALSE, 0);
+
+ gtk_box_pack_start(GTK_BOX(vbox1), refresh_hbox, FALSE, FALSE, 0);
- row++;
/* Whether to refresh all feeds on CM startup */
refresh_on_startup = gtk_check_button_new_with_label(
_("Refresh all feeds on application start"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(refresh_on_startup),
rssyl_prefs.refresh_on_startup);
- gtk_table_attach(GTK_TABLE(table), refresh_on_startup, 0, 2, row, row+1,
- GTK_FILL | GTK_EXPAND, 0, 0, 0);
+ gtk_box_pack_start(GTK_BOX(vbox1), refresh_on_startup, FALSE, FALSE, 0);
+
+ vbox2 = gtk_vbox_new(FALSE, 6);
+
+ /* Whether to verify SSL peer certificate */
+ ssl_verify_peer = gtk_check_button_new_with_label(
+ _("Verify SSL certificates validity for new feeds"));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(ssl_verify_peer),
+ rssyl_prefs.ssl_verify_peer);
+ gtk_box_pack_start(GTK_BOX(vbox2), ssl_verify_peer, FALSE, FALSE, 0);
- row++;
/* Path to cookies file for libcurl to use */
+ cookies_hbox = gtk_hbox_new(FALSE, 6);
label = gtk_label_new(_("Path to cookies file"));
- gtk_table_attach(GTK_TABLE(table), label, 0, 1, row, row+1,
- GTK_FILL | GTK_EXPAND, 0, 0, 0);
- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
+ gtk_box_pack_start(GTK_BOX(cookies_hbox), label, FALSE, FALSE, 0);
cookies_path = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(cookies_path), rssyl_prefs.cookies_path);
- gtk_table_attach(GTK_TABLE(table), cookies_path, 1, 2, row, row+1,
- GTK_FILL, 0, 0, 0);
+ gtk_box_pack_start(GTK_BOX(cookies_hbox), cookies_path, TRUE, TRUE, 0);
gtk_widget_set_tooltip_text(cookies_path,
_("Path to Netscape-style cookies.txt file containing your cookies"));
- row++;
+ cookies_btn = gtkut_get_browse_file_btn(_("Bro_wse"));
+ gtk_box_pack_start(GTK_BOX(cookies_hbox), cookies_btn, FALSE, FALSE, 0);
+ g_signal_connect(G_OBJECT(cookies_btn), "clicked",
+ G_CALLBACK(rssyl_prefs_cookies_browse_cb), cookies_path);
+ gtk_box_pack_start(GTK_BOX(vbox2), cookies_hbox, FALSE, FALSE, 0);
- /* Whether to verify SSL peer certificate */
- ssl_verify_peer = gtk_check_button_new_with_label(
- _("Verify SSL certificates validity for new feeds"));
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(ssl_verify_peer),
- rssyl_prefs.ssl_verify_peer);
- gtk_table_attach(GTK_TABLE(table), ssl_verify_peer, 0, 2, row, row+1,
- GTK_FILL | GTK_EXPAND, 0, 0, 0);
+ vbox = gtk_vbox_new(FALSE, 6);
+ gtk_container_set_border_width (GTK_CONTAINER (vbox), 6);
+
+ PACK_FRAME (vbox, frame, _("Refreshing"));
+ gtk_container_set_border_width(GTK_CONTAINER(vbox1), 6);
+ gtk_container_add(GTK_CONTAINER(frame), vbox1);
+
+ PACK_FRAME (vbox, frame, _("Security and privacy"));
+ gtk_container_set_border_width(GTK_CONTAINER(vbox2), 6);
+ gtk_container_add(GTK_CONTAINER(frame), vbox2);
- gtk_widget_show_all(table);
+ gtk_widget_show_all(vbox);
/* Store pointers to relevant widgets */
- prefs_page->page.widget = table;
+ prefs_page->page.widget = vbox;
prefs_page->refresh_enabled = refresh_enabled;
prefs_page->refresh = refresh;
prefs_page->refresh_on_startup = refresh_on_startup;
diff --git a/src/plugins/rssyl/rssyl_prefs.h b/src/plugins/rssyl/rssyl_prefs.h
index 51325f6..5e746f0 100644
--- a/src/plugins/rssyl/rssyl_prefs.h
+++ b/src/plugins/rssyl/rssyl_prefs.h
@@ -1,3 +1,25 @@
+/*
+ * Claws Mail -- a GTK+ based, lightweight, and fast e-mail client
+ * Copyright (C) 1999-2015 Hiroyuki Yamamoto and the Claws Mail team
+ * This file (C) 2005-2015 Andrej Kacian <andrej at kacian.sk>
+ *
+ * - Plugin preferences
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
#ifndef __RSSYL_PREFS
#define __RSSYL_PREFS
-----------------------------------------------------------------------
hooks/post-receive
--
Claws Mail
More information about the Commits
mailing list