[Xfce4-commits] <postler:master> Remember folder the last attachment was saved to

Christian Dywan noreply at xfce.org
Wed Apr 6 04:12:01 CEST 2011


Updating branch refs/heads/master
         to d3f893f76799152f9203f899392a927cab5cd881 (commit)
       from fe04e66884709581010c899b5ce441f2489858e2 (commit)

commit d3f893f76799152f9203f899392a927cab5cd881
Author: Christian Dywan <christian at twotoasts.de>
Date:   Wed Apr 6 03:15:19 2011 +0200

    Remember folder the last attachment was saved to

 postler/postler-content.vala |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/postler/postler-content.vala b/postler/postler-content.vala
index 01d0e52..beba272 100644
--- a/postler/postler-content.vala
+++ b/postler/postler-content.vala
@@ -87,6 +87,7 @@ public class Postler.Content : WebKit.WebView {
     string x_mailer;
 
     public string default_charset { get; set; default = "ISO-8859-1"; }
+    string? save_folder = null;
 
     public string? last_location { get; set; }
     public string? message_id { get; set; }
@@ -1223,13 +1224,17 @@ public class Postler.Content : WebKit.WebView {
                     Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
                     Gtk.STOCK_SAVE, Gtk.ResponseType.ACCEPT);
                 filechooser.do_overwrite_confirmation = true;
-                string? folder = Environment.get_user_special_dir (UserDirectory.DOWNLOAD);
-                if (folder == null)
-                    folder = Environment.get_home_dir ();
-                filechooser.set_current_folder (folder);
+                if (save_folder == null) {
+                    save_folder = Environment.get_user_special_dir (UserDirectory.DOWNLOAD);
+                    if (save_folder ==null)
+                        save_folder = Environment.get_home_dir ();
+                }
+                filechooser.set_current_folder (save_folder);
                 filechooser.set_current_name (message_part.filename ?? "");
-                if (filechooser.run () == Gtk.ResponseType.ACCEPT)
+                if (filechooser.run () == Gtk.ResponseType.ACCEPT) {
                     filename = filechooser.get_filename ();
+                    save_folder = filechooser.get_current_folder_file ().get_path ();
+                }
                 else
                     filename = null;
                 filechooser.destroy ();



More information about the Xfce4-commits mailing list