From aab204250a82ba2039a49d4887a1baffbb3f8a78 Mon Sep 17 00:00:00 2001 From: Davide Andreoli Date: Thu, 26 Jul 2012 22:28:09 +0000 Subject: [PATCH] Places: * fix umount of optical drives (they still refuse to auto mount...) * better icon for trash in the menu * some formatting, sorry SVN revision: 74460 --- src/e_mod_places.c | 2 +- src/e_mod_udisks.c | 26 +++++++++++++++----------- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/src/e_mod_places.c b/src/e_mod_places.c index f124b42..6838804 100644 --- a/src/e_mod_places.c +++ b/src/e_mod_places.c @@ -791,7 +791,7 @@ places_generate_menu(void *data, E_Menu *em) { mi = e_menu_item_new(em); e_menu_item_label_set(mi, D_("Trash")); - e_util_menu_item_theme_icon_set(mi, "folder"); + e_util_menu_item_theme_icon_set(mi, "user-trash"); e_menu_item_callback_set(mi, _places_run_fm, "trash:///"); } diff --git a/src/e_mod_udisks.c b/src/e_mod_udisks.c index 52ec68b..bec75dc 100644 --- a/src/e_mod_udisks.c +++ b/src/e_mod_udisks.c @@ -266,17 +266,17 @@ _places_udisks_vol_prop_cb(void *data, void *reply_data, DBusError *error) int err = 0; if (dbus_error_is_set(error)) - { - printf("PLACES: dbus error: %s\n", error->message); - dbus_error_free(error); - return; - } + { + printf("PLACES: dbus error: %s\n", error->message); + dbus_error_free(error); + return; + } if (!v) return; // skip volumes with volume.ignore set if (e_ukit_property_bool_get(udisks_ret, "DeviceIsMediaChangeDetectionInhibited", &err) || err) - return; + return; // skip volumes without a storage (slave partition) str = e_ukit_property_string_get(udisks_ret, "PartitionSlave", &err); @@ -285,11 +285,15 @@ _places_udisks_vol_prop_cb(void *data, void *reply_data, DBusError *error) // a cdrom has been ejected, invalidate the drive to 'hide' it if (!e_ukit_property_bool_get(udisks_ret, "DeviceIsMediaAvailable", &err)) - { - v->valid = EINA_FALSE; - places_update_all_gadgets(); - return; - } + { + if (v->valid) + { + printf("EJECTED %s\n", v->device); + v->valid = EINA_FALSE; + places_update_all_gadgets(); + return; + } + } // skip volumes that aren't filesystems or crypto str = e_ukit_property_string_get(udisks_ret, "IdUsage", &err);