[gnome-commander/GSettings] Adds hidden_filter filter option to GSettings (now known as hide-dotfile)



commit 0114af1dca9e27735124962420ad54aa2f7324cc
Author: Uwe Scholz <uwescholz src gnome org>
Date:   Tue May 17 22:52:02 2016 +0200

    Adds hidden_filter filter option to GSettings (now known as hide-dotfile)

 data/org.gnome.gnome-commander.gschema.xml |    4 ++--
 src/gnome-cmd-data.cc                      |   16 +++++++++++++---
 src/gnome-cmd-data.h                       |    1 +
 3 files changed, 16 insertions(+), 5 deletions(-)
---
diff --git a/data/org.gnome.gnome-commander.gschema.xml b/data/org.gnome.gnome-commander.gschema.xml
index f55a92d..6cc5113 100644
--- a/data/org.gnome.gnome-commander.gschema.xml
+++ b/data/org.gnome.gnome-commander.gschema.xml
@@ -342,9 +342,9 @@
       <default>false</default>
       <summary>Hide symbolic links</summary>
     </key>
-    <key name="hidden-filter" type="b">
+    <key name="hide-dotfile" type="b">
       <default>true</default>
-      <summary></summary>
+      <summary>Hide files and folders starting with a dot</summary>
     </key>
     <key name="backup-filter" type="b">
       <default>true</default>
diff --git a/src/gnome-cmd-data.cc b/src/gnome-cmd-data.cc
index 236fd26..a55ea6f 100644
--- a/src/gnome-cmd-data.cc
+++ b/src/gnome-cmd-data.cc
@@ -156,6 +156,9 @@ void on_filter_changed ()
     filter = g_settings_get_boolean (gnome_cmd_data.options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_SYMBOLIC_LINK);
     gnome_cmd_data.options.filter.file_types[GNOME_VFS_FILE_TYPE_SYMBOLIC_LINK] = filter;
 
+    filter = g_settings_get_boolean (gnome_cmd_data.options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_DOTFILE);
+    gnome_cmd_data.options.filter.hidden = filter;
+
     main_win->update_view();
 }
 
@@ -240,6 +243,11 @@ static void gcmd_connect_gsettings_signals(GcmdSettings *gs)
                       G_CALLBACK (on_filter_changed),
                       NULL);
 
+    g_signal_connect (gs->filter,
+                      "changed::hide-dotfile",
+                      G_CALLBACK (on_filter_changed),
+                      NULL);
+
 }
 
 
@@ -1611,6 +1619,9 @@ void GnomeCmdData::migrate_all_data_to_gsettings()
         //show_symbolic_link
         migrate_data_int_value_into_gsettings(gnome_cmd_data_get_bool ("/options/show_symbolic_link", FALSE) 
? 1 : 0,
                                                         options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_SYMBOLIC_LINK);
+        //hidden_filter
+        migrate_data_int_value_into_gsettings(gnome_cmd_data_get_bool ("/options/show_symbolic_link", FALSE) 
? 1 : 0,
+                                                        options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_DOTFILE);
         // ToDo: Move old xml-file to ~/.gnome-commander/gnome-commander.xml.backup
         //       à la save_devices_old ("devices.backup");
         //       and move .gnome2/gnome-commander to .gnome2/gnome-commander.backup
@@ -1736,7 +1747,7 @@ void GnomeCmdData::load()
     options.filter.file_types[GNOME_VFS_FILE_TYPE_CHARACTER_DEVICE] = g_settings_get_boolean 
(options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_CHARACTER_DEVICE);
     options.filter.file_types[GNOME_VFS_FILE_TYPE_BLOCK_DEVICE] = g_settings_get_boolean 
(options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_BLOCK_DEVICE);
     options.filter.file_types[GNOME_VFS_FILE_TYPE_SYMBOLIC_LINK] = g_settings_get_boolean 
(options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_SYMBOLIC_LINK);
-    options.filter.hidden = gnome_cmd_data_get_bool ("/options/hidden_filter", TRUE);
+    options.filter.hidden = g_settings_get_boolean (options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_DOTFILE);
     options.filter.backup = gnome_cmd_data_get_bool ("/options/backup_filter", TRUE);
 
     options.select_dirs = gnome_cmd_data_get_bool ("/sort/select_dirs", TRUE);
@@ -2281,8 +2292,7 @@ void GnomeCmdData::save()
     set_gsettings_when_changed      (options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_CHARACTER_DEVICE, 
&(options.filter.file_types[GNOME_VFS_FILE_TYPE_CHARACTER_DEVICE]));
     set_gsettings_when_changed      (options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_BLOCK_DEVICE, 
&(options.filter.file_types[GNOME_VFS_FILE_TYPE_BLOCK_DEVICE]));
     set_gsettings_when_changed      (options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_SYMBOLIC_LINK, 
&(options.filter.file_types[GNOME_VFS_FILE_TYPE_SYMBOLIC_LINK]));
-
-    gnome_cmd_data_set_bool   ("/options/hidden_filter", options.filter.hidden);
+    set_gsettings_when_changed      (options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_DOTFILE, 
&(options.filter.hidden));
     gnome_cmd_data_set_bool   ("/options/backup_filter", options.filter.backup);
 
     gnome_cmd_data_set_bool   ("/sort/select_dirs", options.select_dirs);
diff --git a/src/gnome-cmd-data.h b/src/gnome-cmd-data.h
index 001caa9..eb7b81a 100644
--- a/src/gnome-cmd-data.h
+++ b/src/gnome-cmd-data.h
@@ -72,6 +72,7 @@ GcmdSettings *gcmd_settings_new (void);
 #define GCMD_SETTINGS_FILTER_HIDE_CHARACTER_DEVICE    "hide-char-device"
 #define GCMD_SETTINGS_FILTER_HIDE_BLOCK_DEVICE        "hide-block-device"
 #define GCMD_SETTINGS_FILTER_HIDE_SYMBOLIC_LINK       "hide-symbolic-link"
+#define GCMD_SETTINGS_FILTER_DOTFILE                  "hide-dotfile"
 
 struct GnomeCmdConRemote;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]