summaryrefslogtreecommitdiff
path: root/libcaja-private/caja-desktop-link-monitor.c
diff options
context:
space:
mode:
Diffstat (limited to 'libcaja-private/caja-desktop-link-monitor.c')
-rw-r--r--libcaja-private/caja-desktop-link-monitor.c41
1 files changed, 24 insertions, 17 deletions
diff --git a/libcaja-private/caja-desktop-link-monitor.c b/libcaja-private/caja-desktop-link-monitor.c
index c8720307..e6016f2f 100644
--- a/libcaja-private/caja-desktop-link-monitor.c
+++ b/libcaja-private/caja-desktop-link-monitor.c
@@ -228,7 +228,7 @@ create_mount_link (CajaDesktopLinkMonitor *monitor,
return;
if ((!g_mount_is_shadowed (mount)) &&
- eel_preferences_get_boolean (CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE))
+ g_settings_get_boolean (caja_desktop_preferences, CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE))
{
link = caja_desktop_link_new_from_mount (mount);
monitor->details->mount_links = g_list_prepend (monitor->details->mount_links, link);
@@ -302,7 +302,7 @@ update_link_visibility (CajaDesktopLinkMonitor *monitor,
CajaDesktopLinkType link_type,
const char *preference_key)
{
- if (eel_preferences_get_boolean (preference_key))
+ if (g_settings_get_boolean (caja_desktop_preferences, preference_key))
{
if (*link_ref == NULL)
{
@@ -379,7 +379,7 @@ desktop_volumes_visible_changed (gpointer callback_data)
monitor = CAJA_DESKTOP_LINK_MONITOR (callback_data);
- if (eel_preferences_get_boolean (CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE))
+ if (g_settings_get_boolean (caja_desktop_preferences, CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE))
{
if (monitor->details->mount_links == NULL)
{
@@ -404,15 +404,20 @@ static void
create_link_and_add_preference (CajaDesktopLink **link_ref,
CajaDesktopLinkType link_type,
const char *preference_key,
- EelPreferencesCallback callback,
+ GCallback callback,
gpointer callback_data)
{
- if (eel_preferences_get_boolean (preference_key))
+ char *detailed_signal;
+
+ if (g_settings_get_boolean (caja_desktop_preferences, preference_key)) {
{
*link_ref = caja_desktop_link_new (link_type);
}
- eel_preferences_add_callback (preference_key, callback, callback_data);
+ detailed_signal = g_strconcat ("changed::", preference_key, NULL);
+ g_signal_connect_swapped (caja_desktop_preferences,
+ detailed_signal,
+ callback, callback_data);
}
static void
@@ -438,25 +443,25 @@ caja_desktop_link_monitor_init (gpointer object, gpointer klass)
create_link_and_add_preference (&monitor->details->home_link,
CAJA_DESKTOP_LINK_HOME,
CAJA_PREFERENCES_DESKTOP_HOME_VISIBLE,
- desktop_home_visible_changed,
+ G_CALLBACK (desktop_home_visible_changed),
monitor);
create_link_and_add_preference (&monitor->details->computer_link,
CAJA_DESKTOP_LINK_COMPUTER,
CAJA_PREFERENCES_DESKTOP_COMPUTER_VISIBLE,
- desktop_computer_visible_changed,
+ G_CALLBACK (desktop_computer_visible_changed),
monitor);
create_link_and_add_preference (&monitor->details->trash_link,
CAJA_DESKTOP_LINK_TRASH,
CAJA_PREFERENCES_DESKTOP_TRASH_VISIBLE,
- desktop_trash_visible_changed,
+ G_CALLBACK (desktop_trash_visible_changed),
monitor);
create_link_and_add_preference (&monitor->details->network_link,
CAJA_DESKTOP_LINK_NETWORK,
CAJA_PREFERENCES_DESKTOP_NETWORK_VISIBLE,
- desktop_network_visible_changed,
+ G_CALLBACK (desktop_network_visible_changed),
monitor);
/* Mount links */
@@ -470,9 +475,10 @@ caja_desktop_link_monitor_init (gpointer object, gpointer klass)
}
g_list_free (mounts);
- eel_preferences_add_callback (CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE,
- desktop_volumes_visible_changed,
- monitor);
+ g_signal_connect_swapped (caja_desktop_preferences,
+ "changed::" CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE,
+ G_CALLBACK (desktop_volumes_visible_changed),
+ monitor);
monitor->details->mount_id =
g_signal_connect_object (monitor->details->volume_monitor, "mount_added",
@@ -498,7 +504,8 @@ remove_link_and_preference (CajaDesktopLink **link_ref,
*link_ref = NULL;
}
- eel_preferences_remove_callback (preference_key, callback, callback_data);
+ g_signal_handlers_disconnect_by_func (caja_desktop_preferences,
+ callback, callback_data);
}
static void
@@ -541,9 +548,9 @@ desktop_link_monitor_finalize (GObject *object)
caja_directory_unref (monitor->details->desktop_dir);
monitor->details->desktop_dir = NULL;
- eel_preferences_remove_callback (CAJA_PREFERENCES_DESKTOP_VOLUMES_VISIBLE,
- desktop_volumes_visible_changed,
- monitor);
+ g_signal_handlers_disconnect_by_func (caja_desktop_preferences,
+ desktop_volumes_visible_changed,
+ monitor);
if (monitor->details->mount_id != 0)
{