summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2003-11-05 16:20:01 +0000
committerAlexander Larsson <alexl@src.gnome.org>2003-11-05 16:20:01 +0000
commit3613a86b2039395b3ee229c901a00e35b85865b6 (patch)
treecdbbfdc443182435f71d4c230400c9bfb084d7e2 /components
parentfb27d9086b6448e10a535c6cc4a52ee919096dc5 (diff)
downloadnautilus-3613a86b2039395b3ee229c901a00e35b85865b6.tar.gz
Require new gnome-vfs
2003-11-05 Alexander Larsson <alexl@redhat.com> * configure.in: Require new gnome-vfs * components/tree/nautilus-tree-view.c: * libnautilus-private/nautilus-desktop-link-monitor.c: * libnautilus-private/nautilus-desktop-link.[ch]: * libnautilus-private/nautilus-monitor.c: * libnautilus-private/nautilus-trash-directory.c: * libnautilus-private/nautilus-trash-monitor.[ch]: * src/nautilus-application.c: Use gnome-vfs-volume-manager instead of nautilus-volume-manager.c * libnautilus-private/nautilus-desktop-icon-file.c: Set the volume on the nautilusfile * libnautilus-private/nautilus-directory-async.c: Load volume info from link * libnautilus-private/nautilus-file-attributes.h: * libnautilus-private/nautilus-mime-actions.c: Add new VOLUMES attribute * libnautilus-private/nautilus-file-private.h: Add has_volume and has_drive to NautilusFile * libnautilus-private/nautilus-file.[ch]: Add has_volume and has_drive to NautilusFile Volumes/drives are sorted separately * libnautilus-private/nautilus-link-desktop-file.[ch]: * libnautilus-private/nautilus-link.[ch]: Read drive and volume id from links * src/file-manager/fm-desktop-icon-view.c: * src/file-manager/nautilus-desktop-icon-view-ui.xml: Remove volume ops. Remove disks menu * src/file-manager/fm-directory-view.c: * src/file-manager/nautilus-directory-view-ui.xml: Implement volume ops using gnome-vfs * src/file-manager/fm-properties-window.c: Handle drives/volumes * src/nautilus-window.c: Make a nicer title for some specific locations * libnautilus-private/nautilus-volume-monitor.[ch]: * libnautilus-private/Makefile.am remove this old crap
Diffstat (limited to 'components')
-rw-r--r--components/tree/nautilus-tree-view.c50
1 files changed, 20 insertions, 30 deletions
diff --git a/components/tree/nautilus-tree-view.c b/components/tree/nautilus-tree-view.c
index 228f24ae0..6c64df02f 100644
--- a/components/tree/nautilus-tree-view.c
+++ b/components/tree/nautilus-tree-view.c
@@ -44,13 +44,13 @@
#include <gtk/gtktreeview.h>
#include <libgnome/gnome-i18n.h>
#include <libgnomevfs/gnome-vfs-utils.h>
+#include <libgnomevfs/gnome-vfs-volume-monitor.h>
#include <libnautilus-private/nautilus-file-attributes.h>
#include <libnautilus-private/nautilus-file-operations.h>
#include <libnautilus-private/nautilus-global-preferences.h>
#include <libnautilus-private/nautilus-program-choosing.h>
#include <libnautilus-private/nautilus-tree-view-drag-dest.h>
#include <libnautilus-private/nautilus-icon-factory.h>
-#include <libnautilus-private/nautilus-volume-monitor.h>
struct NautilusTreeViewDetails {
GtkWidget *scrolled_window;
@@ -463,23 +463,17 @@ theme_changed_callback (GObject *icon_factory, gpointer callback_data)
static void
add_root_for_volume (NautilusTreeView *view,
- const NautilusVolume *volume)
+ GnomeVFSVolume *volume)
{
char *icon, *mount_uri, *name;
- if (nautilus_volume_is_in_removable_blacklist (volume)) {
- return;
- }
-
- if (!nautilus_volume_is_removable (volume)) {
+ if (!gnome_vfs_volume_is_user_visible (volume)) {
return;
}
- /* Name uniqueness is handled by nautilus-desktop-link-monitor.c... */
-
- icon = nautilus_volume_get_icon (volume);
- mount_uri = nautilus_volume_get_target_uri (volume);
- name = nautilus_volume_get_name (volume);
+ icon = gnome_vfs_volume_get_icon (volume);
+ mount_uri = gnome_vfs_volume_get_activation_uri (volume);
+ name = gnome_vfs_volume_get_display_name (volume);
nautilus_tree_model_add_root_uri (view->details->child_model,
mount_uri, name, icon);
@@ -491,29 +485,21 @@ add_root_for_volume (NautilusTreeView *view,
}
static void
-volume_mounted_callback (NautilusVolumeMonitor *volume_monitor,
- NautilusVolume *volume,
+volume_mounted_callback (GnomeVFSVolumeMonitor *volume_monitor,
+ GnomeVFSVolume *volume,
NautilusTreeView *view)
{
add_root_for_volume (view, volume);
}
-static gboolean
-add_one_volume_root (const NautilusVolume *volume, gpointer callback_data)
-{
- add_root_for_volume (NAUTILUS_TREE_VIEW (callback_data), volume);
-
- return TRUE;
-}
-
static void
-volume_unmounted_callback (NautilusVolumeMonitor *volume_monitor,
- NautilusVolume *volume,
+volume_unmounted_callback (GnomeVFSVolumeMonitor *volume_monitor,
+ GnomeVFSVolume *volume,
NautilusTreeView *view)
{
char *mount_uri;
- mount_uri = nautilus_volume_get_target_uri (volume);
+ mount_uri = gnome_vfs_volume_get_activation_uri (volume);
nautilus_tree_model_remove_root_uri (view->details->child_model,
mount_uri);
g_free (mount_uri);
@@ -525,8 +511,9 @@ create_tree (NautilusTreeView *view)
{
GtkCellRenderer *cell;
GtkTreeViewColumn *column;
- NautilusVolumeMonitor *volume_monitor;
+ GnomeVFSVolumeMonitor *volume_monitor;
char *home_uri;
+ GList *volumes, *l;
view->details->child_model = nautilus_tree_model_new ();
view->details->sort_model = GTK_TREE_MODEL_SORT
@@ -546,10 +533,13 @@ create_tree (NautilusTreeView *view)
nautilus_tree_model_add_root_uri (view->details->child_model, "network:///", _("Network Neighbourhood"), "gnome-fs-network");
#endif
- volume_monitor = nautilus_volume_monitor_get ();
- nautilus_volume_monitor_each_mounted_volume (volume_monitor,
- add_one_volume_root,
- view);
+ volume_monitor = gnome_vfs_get_volume_monitor ();
+ volumes = gnome_vfs_volume_monitor_get_mounted_volumes (volume_monitor);
+ for (l = volumes; l != NULL; l = l->next) {
+ add_root_for_volume (view, l->data);
+ gnome_vfs_volume_unref (l->data);
+ }
+ g_list_free (volumes);
g_signal_connect_object (volume_monitor, "volume_mounted",
G_CALLBACK (volume_mounted_callback), view, 0);