[gnome-commander/Implement_CppCheck_suggestions] Update bookmarks in all gcmd instances if they changed
- From: Uwe Scholz <uwescholz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-commander/Implement_CppCheck_suggestions] Update bookmarks in all gcmd instances if they changed
- Date: Tue, 9 Apr 2019 20:16:10 +0000 (UTC)
commit 839b55d193c1872335e586918b0d5ed392101040
Author: Uwe Scholz <u scholz83 gmx de>
Date: Tue Apr 9 20:47:01 2019 +0200
Update bookmarks in all gcmd instances if they changed
src/gnome-cmd-data.cc | 19 ++++++++++++++++++-
src/gnome-cmd-data.h | 2 +-
2 files changed, 19 insertions(+), 2 deletions(-)
---
diff --git a/src/gnome-cmd-data.cc b/src/gnome-cmd-data.cc
index 1fdecbd8..f531cfef 100644
--- a/src/gnome-cmd-data.cc
+++ b/src/gnome-cmd-data.cc
@@ -131,6 +131,19 @@ static void gcmd_settings_dispose (GObject *object)
G_OBJECT_CLASS (gcmd_settings_parent_class)->dispose (object);
}
+static void on_bookmarks_changed ()
+{
+ gnome_cmd_con_erase_bookmark (gnome_cmd_data.priv->con_list->get_home());
+#ifdef HAVE_SAMBA
+ gnome_cmd_con_erase_bookmark (gnome_cmd_data.priv->con_list->get_smb());
+#endif
+
+ gnome_cmd_data.load_bookmarks();
+
+ main_win->update_bookmarks ();
+ gnome_cmd_update_bookmark_dialog ();
+}
+
static void on_size_display_mode_changed ()
{
gint size_disp_mode;
@@ -909,6 +922,11 @@ GcmdSettings *gcmd_settings_new ()
static void gcmd_connect_gsettings_signals(GcmdSettings *gs)
{
+ g_signal_connect (gs->general,
+ "changed::bookmarks",
+ G_CALLBACK (on_bookmarks_changed),
+ nullptr);
+
g_signal_connect (gs->general,
"changed::size-display-mode",
G_CALLBACK (on_size_display_mode_changed),
@@ -1592,7 +1610,6 @@ void GnomeCmdData::save_bookmarks()
GVariant* bookmarksToStore = g_variant_builder_end (gVariantBuilder);
g_settings_set_value(options.gcmd_settings->general, GCMD_SETTINGS_BOOKMARKS, bookmarksToStore);
}
-
g_variant_builder_unref(gVariantBuilder);
}
diff --git a/src/gnome-cmd-data.h b/src/gnome-cmd-data.h
index c2fb90fe..0de15a10 100644
--- a/src/gnome-cmd-data.h
+++ b/src/gnome-cmd-data.h
@@ -636,7 +636,6 @@ struct GnomeCmdData
void load_directory_history();
void load_intviewer_defaults();
gboolean save_auto_load_plugins();
- void load_bookmarks();
void load_keybindings();
void save_keybindings();
void load_connections();
@@ -717,6 +716,7 @@ struct GnomeCmdData
void load_search_profiles ();
void save_search_profiles ();
void save_bookmarks();
+ void load_bookmarks();
void save();
gint gnome_cmd_data_get_int (const gchar *path, int def);
gchar* gnome_cmd_data_get_string (const gchar *path, const gchar *def);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]