[Xfce4-commits] <midori:master> Let private mode inherit preferences

Christian Dywan noreply at xfce.org
Thu Oct 14 00:38:04 CEST 2010


Updating branch refs/heads/master
         to bcc622c45619ba805a0f73c4a302cd66935b6fb8 (commit)
       from 80ff8ac0f0d3c7389bff28aa24372b6ff740ae94 (commit)

commit bcc622c45619ba805a0f73c4a302cd66935b6fb8
Author: Christian Dywan <christian at twotoasts.de>
Date:   Wed Oct 13 23:41:11 2010 +0200

    Let private mode inherit preferences
    
    Private mode should retain most preferences, while menus for
    Bookmarks, Tools and Panel are hidden.
    
    App mode now hides the navigationbar by default.

 midori/main.c           |   24 ++++++++++++++----------
 midori/midori-browser.c |    4 ++--
 midori/midori-view.c    |    2 +-
 midori/sokoke.c         |   10 ++++++++--
 midori/sokoke.h         |    3 ++-
 5 files changed, 27 insertions(+), 16 deletions(-)

diff --git a/midori/main.c b/midori/main.c
index 5ed6a35..b3ab80a 100644
--- a/midori/main.c
+++ b/midori/main.c
@@ -1732,19 +1732,23 @@ main (int    argc,
             g_free (config_file);
             soup_session_add_feature (session, SOUP_SESSION_FEATURE (jar));
             g_object_unref (jar);
-
         }
         else
+        {
             settings = katze_object_get_object (browser, "settings");
-        g_object_set (settings,
-                      "show-menubar", FALSE,
-                      "show-navigationbar", TRUE,
-                      "show-panel", FALSE,
-                      "toolbar-items", "Back,Forward,ReloadStop,Location",
-                      "homepage", NULL,
-                      "show-statusbar", FALSE,
-                      "enable-developer-extras", FALSE,
-                      NULL);
+            g_object_set (settings,
+                          "show-menubar", FALSE,
+                          "show-navigationbar", FALSE,
+                          "toolbar-items", "Back,Forward,ReloadStop,Location,Homepage",
+                          "homepage", webapp,
+                          "show-statusbar", FALSE,
+                          "enable-developer-extras", FALSE,
+                          NULL);
+        }
+        g_object_set (settings, "show-panel", FALSE, NULL);
+        midori_browser_set_action_visible (browser, "Bookmarks", FALSE);
+        midori_browser_set_action_visible (browser, "Tools", FALSE);
+        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);
diff --git a/midori/midori-browser.c b/midori/midori-browser.c
index 5e777fd..4b6f18d 100644
--- a/midori/midori-browser.c
+++ b/midori/midori-browser.c
@@ -2138,7 +2138,7 @@ _action_private_browsing_activate (GtkAction*     action,
                                    MidoriBrowser* browser)
 {
     const gchar* uri = midori_browser_get_current_uri (browser);
-    sokoke_spawn_app (uri && *uri ? uri : "about:blank");
+    sokoke_spawn_app (uri && *uri ? uri : "about:blank", TRUE);
 }
 
 static void
@@ -2741,7 +2741,7 @@ midori_browser_open_bookmark (MidoriBrowser* browser,
         uri_fixed = g_strdup (uri);
 
     if (katze_item_get_meta_boolean (item, "app"))
-        sokoke_spawn_app (uri_fixed);
+        sokoke_spawn_app (uri_fixed, FALSE);
     else
     {
         midori_browser_set_current_uri (browser, uri_fixed);
diff --git a/midori/midori-view.c b/midori/midori-view.c
index 0189986..3245aa7 100644
--- a/midori/midori-view.c
+++ b/midori/midori-view.c
@@ -1785,7 +1785,7 @@ static void
 midori_web_view_menu_web_app_activate_cb (GtkWidget*  widget,
                                           MidoriView* view)
 {
-    sokoke_spawn_app (view->link_uri);
+    sokoke_spawn_app (view->link_uri, FALSE);
 }
 
 static void
diff --git a/midori/sokoke.c b/midori/sokoke.c
index 4add49a..1e6f599 100644
--- a/midori/sokoke.c
+++ b/midori/sokoke.c
@@ -487,14 +487,20 @@ sokoke_spawn_program (const gchar* command,
 }
 
 void
-sokoke_spawn_app (const gchar* uri)
+sokoke_spawn_app (const gchar* uri,
+                  gboolean     inherit_config)
 {
     const gchar* executable = sokoke_get_argv (NULL)[0];
     /* "midori"
        "/usr/bin/midori"
        "c:/Program Files/Midori/bin/midori.exe" */
     gchar* quoted = g_shell_quote (executable);
-    gchar* command = g_strconcat (quoted, " -a", NULL);
+    gchar* command;
+    if (inherit_config)
+        command = g_strconcat (quoted, " -c ", sokoke_set_config_dir (NULL),
+                                       " -a", NULL);
+    else
+        command = g_strconcat (quoted, " -a", NULL);
     g_free (quoted);
     sokoke_spawn_program (command, uri);
     g_free (command);
diff --git a/midori/sokoke.h b/midori/sokoke.h
index 2cceee8..bd1a23e 100644
--- a/midori/sokoke.h
+++ b/midori/sokoke.h
@@ -102,7 +102,8 @@ sokoke_spawn_program                    (const gchar* command,
                                          const gchar* argument);
 
 void
-sokoke_spawn_app                        (const gchar*    uri);
+sokoke_spawn_app                        (const gchar*    uri,
+                                         gboolean        inherit_config);
 
 gchar* sokoke_search_uri                (const gchar*    uri,
                                          const gchar*    keywords);



More information about the Xfce4-commits mailing list