Blob Blame History Raw
From 303cfd43578f0a4198c063f1a5fbcd16fec2b0bf Mon Sep 17 00:00:00 2001
From: David Zeuthen <davidz@redhat.com>
Date: Thu, 9 Apr 2009 21:04:24 -0400
Subject: [PATCH 7/7] =?utf-8?q?Bug=20576587=20=E2=80=93=20allow=20eject=20even=20on=20non-ejectable=20volumes?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit

This fixes a host of problems with e.g. Kindle or iPod devices
requiring to be "ejected" to display messages such as

 "If you want to use your Kindle and continue charging, please eject
 your Kindle from your computer."

to the user.

Previously we relied on HAL fdi files or similar to tag that such
devices needed to be ejectable. Now we just set everything as
ejectable.

For this to really work well the Nautilus patch in

 http://bugzilla.gnome.org/show_bug.cgi?id=574067

needs to be reverted.
---
 monitor/gdu/ggdudrive.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/monitor/gdu/ggdudrive.c b/monitor/gdu/ggdudrive.c
index 257a113..29e108d 100644
--- a/monitor/gdu/ggdudrive.c
+++ b/monitor/gdu/ggdudrive.c
@@ -166,7 +166,11 @@ update_drive (GGduDrive *drive)
       drive->device_file = g_strdup (gdu_device_get_device_file (device));
       drive->is_media_removable = gdu_device_is_removable (device);
       drive->has_media = gdu_device_is_media_available (device);
-      drive->can_eject = gdu_device_drive_get_is_media_ejectable (device) || gdu_device_drive_get_requires_eject (device);
+      /* All drives with removable media are ejectable
+       *
+       * See http://bugzilla.gnome.org/show_bug.cgi?id=576587 for why we want this.
+       */
+      drive->can_eject = gdu_device_drive_get_is_media_ejectable (device) || gdu_device_drive_get_requires_eject (device) || gdu_device_is_removable (device);
       drive->is_media_check_automatic = gdu_device_is_media_change_detected (device);
       drive->can_poll_for_media = TRUE;
     }
-- 
1.6.2.2