[Xfce4-commits] <midori:master> Handle recent files disabling in Midori.Paths

Christian Dywan noreply at xfce.org
Sun Nov 25 12:20:01 CET 2012


Updating branch refs/heads/master
         to d9112ae446bebeed8564922254be91d2af437474 (commit)
       from 05f502594e3090e472404f611621b9e1d2e56cc7 (commit)

commit d9112ae446bebeed8564922254be91d2af437474
Author: Christian Dywan <christian at twotoasts.de>
Date:   Sun Nov 25 12:18:26 2012 +0100

    Handle recent files disabling in Midori.Paths

 katze/midori-paths.vala     |    2 +
 midori/main.c               |   55 ++++++++++++++++--------------------------
 midori/midori-websettings.c |    4 +-
 3 files changed, 25 insertions(+), 36 deletions(-)

diff --git a/katze/midori-paths.vala b/katze/midori-paths.vala
index d85e61b..887154f 100644
--- a/katze/midori-paths.vala
+++ b/katze/midori-paths.vala
@@ -70,6 +70,8 @@ namespace Midori {
             assert (mode == RuntimeMode.UNDEFINED);
             assert (new_mode != RuntimeMode.UNDEFINED);
             mode = new_mode;
+            if (mode == RuntimeMode.PORTABLE || mode == RuntimeMode.PRIVATE)
+                Gtk.Settings.get_default ().gtk_recent_files_max_age = 0;
             if (mode == RuntimeMode.PORTABLE) {
                 config_dir = Path.build_path (Path.DIR_SEPARATOR_S,
                     exec_path, "profile", "config");
diff --git a/midori/main.c b/midori/main.c
index 6d1c69f..e2f24f9 100644
--- a/midori/main.c
+++ b/midori/main.c
@@ -1209,31 +1209,33 @@ main (int    argc,
 
     midori_private_data_register_built_ins ();
 
+    if (private)
+        midori_paths_init (MIDORI_RUNTIME_MODE_PRIVATE, config);
+    else if (webapp)
+        midori_paths_init (MIDORI_RUNTIME_MODE_APP, config);
+    else if (portable)
+        midori_paths_init (MIDORI_RUNTIME_MODE_PORTABLE, config);
+    else
+        midori_paths_init (MIDORI_RUNTIME_MODE_NORMAL, config);
+
     /* Web Application or Private Browsing support */
     if (webapp || private || run)
     {
-        SoupSession* session = webkit_get_default_session ();
         MidoriBrowser* browser = midori_browser_new ();
         g_signal_connect (browser, "new-window",
             G_CALLBACK (midori_web_app_browser_new_window_cb), NULL);
         g_object_set_data (G_OBJECT (webkit_get_default_session ()),
                            "pass-through-console", (void*)1);
-
         midori_startup_timer ("Browser: \t%f");
 
-        if (private)
-            midori_paths_init (MIDORI_RUNTIME_MODE_PRIVATE, config);
-        else if (webapp)
-            midori_paths_init (MIDORI_RUNTIME_MODE_APP, config);
-        else
-            midori_paths_init (MIDORI_RUNTIME_MODE_NORMAL, config);
-
         if (private || !webapp)
         {
-            settings = midori_settings_new_full (&extensions);
-            g_strfreev (extensions);
+            settings = midori_settings_new_full (NULL);
             search_engines = midori_search_engines_new_from_folder (NULL);
-            g_object_set (browser, "search-engines", search_engines, NULL);
+            g_object_set (browser,
+                          "search-engines", search_engines,
+                          "settings", settings,
+                          NULL);
             g_object_unref (search_engines);
         }
         else
@@ -1272,8 +1274,9 @@ main (int    argc,
                           NULL);
             #endif
 
-            g_object_set (gtk_settings_get_default (),
-                "gtk-recent-files-max-age", 0, NULL);
+            /* Informative text unless we have a URI */
+            if (webapp == NULL && uris == NULL)
+                midori_browser_add_uri (browser, "about:private");
         }
 
         midori_load_soup_session (settings);
@@ -1322,28 +1325,26 @@ main (int    argc,
             midori_browser_set_action_visible (browser, "Menubar", FALSE);
             midori_browser_set_action_visible (browser, "CompactMenu", FALSE);
             midori_browser_add_uri (browser, tmp_uri ? tmp_uri : webapp);
-            g_object_set (settings, "homepage", tmp_uri, NULL);
-            g_free (tmp_uri);
-
             g_object_set (settings,
                           "show-menubar", FALSE,
                           "show-navigationbar", FALSE,
                           "toolbar-items", "Back,Forward,ReloadStop,Location,Homepage",
                           "show-statusbar", FALSE,
                           "enable-developer-extras", FALSE,
+                          "homepage", tmp_uri,
                           NULL);
             g_object_set (browser, "show-tabs", FALSE, NULL);
+            g_free (tmp_uri);
         }
 
-       g_object_set (settings, "show-panel", FALSE,
+        g_object_set (settings,
+                      "show-panel", FALSE,
                       "last-window-state", MIDORI_WINDOW_NORMAL,
                       "inactivity-reset", inactivity_reset,
                       "block-uris", block_uris,
                       NULL);
         midori_browser_set_action_visible (browser, "Panel", FALSE);
-        g_object_set (browser, "settings", settings, NULL);
         midori_startup_timer ("Setup config: \t%f");
-        g_object_unref (settings);
         g_signal_connect (browser, "quit",
             G_CALLBACK (gtk_main_quit), NULL);
         g_signal_connect (browser, "destroy",
@@ -1368,10 +1369,6 @@ main (int    argc,
             }
         }
 
-        /* Informative text for private browsing unless we have a URI */
-        if (private && webapp == NULL && uris == NULL)
-            midori_browser_add_uri (browser, "about:private");
-
         if (midori_browser_get_current_uri (browser) == NULL)
             midori_browser_add_uri (browser, "about:blank");
 
@@ -1380,16 +1377,6 @@ main (int    argc,
         return 0;
     }
 
-
-    if (portable)
-    {
-        g_object_set (gtk_settings_get_default (),
-            "gtk-recent-files-max-age", 0, NULL);
-        midori_paths_init (MIDORI_RUNTIME_MODE_PORTABLE, config);
-    }
-    else
-        midori_paths_init (MIDORI_RUNTIME_MODE_NORMAL, config);
-
     app = midori_app_new ();
     midori_startup_timer ("App created: \t%f");
 
diff --git a/midori/midori-websettings.c b/midori/midori-websettings.c
index 03a0bbf..e056d98 100644
--- a/midori/midori-websettings.c
+++ b/midori/midori-websettings.c
@@ -1367,8 +1367,8 @@ midori_settings_new_full (gchar*** extensions)
     }
     g_free (pspecs);
 
-    *extensions = g_key_file_get_keys (key_file, "extensions", NULL, NULL);
-
+    if (extensions != NULL)
+        *extensions = g_key_file_get_keys (key_file, "extensions", NULL, NULL);
     g_key_file_free (key_file);
 
     /* Load accelerators */


More information about the Xfce4-commits mailing list