void on_mount_added(GVolumeMonitor* vm, GMount* mount, gpointer user_data) { FmPlacesModel* model = FM_PLACES_MODEL(user_data); GVolume* vol = g_mount_get_volume(mount); if(vol) { FmPlaceItem *item; GtkTreeIter it; item = find_vol(model, vol, &it); if(item && item->type == FM_PLACES_ITEM_VOL && !item->fi->path) { GtkTreePath* tp; GFile* gf = g_mount_get_root(mount); FmPath* path = fm_path_new_for_gfile(gf); g_debug("mount path: %s", path->name); g_object_unref(gf); fm_file_info_set_path(item->fi, path); if(path) fm_path_unref(path); item->vol_mounted = TRUE; /* inform the view to update mount indicator */ tp = gtk_tree_model_get_path(GTK_TREE_MODEL(model), &it); gtk_tree_model_row_changed(GTK_TREE_MODEL(model), tp, &it); gtk_tree_path_free(tp); } g_object_unref(vol); } }
void on_vol_changed(GVolumeMonitor* vm, GVolume* vol, gpointer user_data) { PlaceItem* item; GtkTreeIter it; item = find_vol(vol, &it); if(item) update_vol(item, &it); }
void on_vol_changed(GVolumeMonitor* vm, GVolume* vol, gpointer user_data) { FmPlacesModel* model = FM_PLACES_MODEL(user_data); FmPlaceItem* item; GtkTreeIter it; g_debug("vol-changed"); item = find_vol(model, vol, &it); if(item) update_vol(model, item, &it, NULL); }
void on_vol_removed(GVolumeMonitor* vm, GVolume* vol, gpointer user_data) { PlaceItem* item; GtkTreeIter it; item = find_vol(vol, &it); /* g_debug("remove vol: %p, uuid: %s, udi: %s", vol, g_volume_get_identifier(vol, "uuid"), g_volume_get_identifier(vol, "hal-udi")); */ if(item) { gtk_list_store_remove(model, &it); place_item_free(item); } }
void on_vol_removed(GVolumeMonitor* vm, GVolume* vol, gpointer user_data) { FmPlacesModel* model = FM_PLACES_MODEL(user_data); FmPlaceItem* item; GtkTreeIter it; item = find_vol(model, vol, &it); /* g_debug("remove vol: %p, uuid: %s, udi: %s", vol, g_volume_get_identifier(vol, "uuid"), g_volume_get_identifier(vol, "hal-udi")); */ if(item) { gtk_list_store_remove(GTK_LIST_STORE(model), &it); place_item_free(item); update_sep_tp(model); } }