nautilus/nautilus-2.13-format.patch
Matthias Clasen 4c7d8fddc3 2.13.2
2005-12-02 14:06:40 +00:00

54 lines
1.9 KiB
Diff

--- nautilus-2.13.2/src/file-manager/fm-directory-view.c.format 2005-12-02 08:41:23.000000000 -0500
+++ nautilus-2.13.2/src/file-manager/fm-directory-view.c 2005-12-02 08:46:44.000000000 -0500
@@ -5864,6 +5864,8 @@
NautilusFile *file;
GList *selection, *l;
GnomeVFSDrive *drive;
+ char *device_path;
+ char *cmdline;
FMDirectoryView *view;
view = FM_DIRECTORY_VIEW (data);
@@ -5874,9 +5876,16 @@
if (nautilus_file_has_drive (file)) {
drive = nautilus_file_get_drive (file);
+ device_path = gnome_vfs_drive_get_device_path (drive);
if (gnome_vfs_drive_get_device_type (drive) == GNOME_VFS_DEVICE_TYPE_FLOPPY) {
- g_spawn_command_line_async ("gfloppy", NULL);
+ cmdline = g_strconcat ("gfloppy ", device_path, NULL);
}
+ else {
+ cmdline = g_strconcat ("userformat ", device_path, NULL);
+ }
+ g_spawn_command_line_async (cmdline, NULL);
+ g_free (cmdline);
+ g_free (device_path);
}
}
nautilus_file_list_free (selection);
@@ -6607,16 +6616,18 @@
} else if (nautilus_file_has_drive (file)) {
drive = nautilus_file_get_drive (file);
*show_eject = eject_for_type (gnome_vfs_drive_get_device_type (drive));
+ if ((gnome_vfs_drive_get_device_type (drive) == GNOME_VFS_DEVICE_TYPE_FLOPPY &&
+ g_find_program_in_path ("gfloppy")) ||
+ g_find_program_in_path ("userformat")) {
+ *show_format = TRUE;
+ }
+
if (gnome_vfs_drive_is_mounted (drive)) {
*show_unmount = TRUE;
+ *show_format = FALSE;
} else {
*show_mount = TRUE;
}
-
- if (gnome_vfs_drive_get_device_type (drive) == GNOME_VFS_DEVICE_TYPE_FLOPPY &&
- g_find_program_in_path ("gfloppy")) {
- *show_format = TRUE;
- }
} else if (nautilus_file_is_nautilus_link (file)) {
uri = nautilus_file_get_activation_uri (file);
if (uri != NULL &&