commit c5144c040f554f0320c744cb48a2d8dc1b646c4e
parent ffd50068b335bea02a3f477396e9cfe6f906e648
Author: Thomas Menari <spaceinvader@chaotika.org>
Date:   Sun,  7 Jun 2009 21:25:22 +0200
cookie persistance
* stored in ~/.surf-cookies
* $EDITOR editable
Diffstat:
1 file changed, 11 insertions(+), 0 deletions(-)
diff --git a/surf.c b/surf.c
@@ -26,6 +26,7 @@ typedef struct Client {
 	gint progress;
 	struct Client *next;
 } Client;
+SoupCookieJar *cookiejar;
 Client *clients = NULL;
 gboolean embed = FALSE;
 gboolean showxid = FALSE;
@@ -429,8 +430,10 @@ updatetitle(Client *c) {
 
 int main(int argc, char *argv[]) {
 	gchar *uri = NULL, *file = NULL;
+        SoupSession *s;
 	Client *c;
 	int o;
+        const gchar *home, *filename;
 
 	gtk_init(NULL, NULL);
 	if (!g_thread_supported())
@@ -472,6 +475,14 @@ int main(int argc, char *argv[]) {
 		goto argerr;
 	if(!clients)
 		newclient();
+
+        /* cookie persistance */
+        s = webkit_get_default_session();
+        home = g_get_home_dir();
+        filename = g_build_filename(home, ".surf-cookies", NULL);
+        cookiejar = soup_cookie_jar_text_new(filename, FALSE);
+        soup_session_add_feature(s, SOUP_SESSION_FEATURE(cookiejar));
+
 	gtk_main();
 	cleanup();
 	return EXIT_SUCCESS;