summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-base/nautilus/files/nautilus-2.30.1-unmount-entries.patch')
-rw-r--r--gnome-base/nautilus/files/nautilus-2.30.1-unmount-entries.patch92
1 files changed, 92 insertions, 0 deletions
diff --git a/gnome-base/nautilus/files/nautilus-2.30.1-unmount-entries.patch b/gnome-base/nautilus/files/nautilus-2.30.1-unmount-entries.patch
new file mode 100644
index 000000000000..bc953bbc4aa6
--- /dev/null
+++ b/gnome-base/nautilus/files/nautilus-2.30.1-unmount-entries.patch
@@ -0,0 +1,92 @@
+From 9bdd0ef925a1e660031917746f8914a38e352576 Mon Sep 17 00:00:00 2001
+From: Martin Pitt <martin.pitt@ubuntu.com>
+Date: Tue, 30 Mar 2010 16:33:51 +0000
+Subject: Do not show Unmount when showing Eject/Safe removal
+
+Having three menu entries (unmount/eject/safe removal) in a volume/drive menu
+entry is too confusing. Unmount only really makes sense for internal drives,
+for external ones it is pretty much a "geek" option. Geeks can use palimpsest
+or "unmount /media/foo" from the CLI if they really want to, for everyone else
+it is just an unintuitive and hard to to explain menu entry.
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=598690
+Bug-Ubuntu: https://launchpad.net/bugs/453072
+(cherry picked from commit 0a5cc4c4e5b01eb8aa38dfae926502ce920efc94)
+---
+diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c
+index d8b9050..361b994 100644
+--- a/src/file-manager/fm-directory-view.c
++++ b/src/file-manager/fm-directory-view.c
+@@ -7782,10 +7782,6 @@ file_should_show_foreach (NautilusFile *file,
+ *show_eject = TRUE;
+ }
+
+- if (nautilus_file_can_unmount (file)) {
+- *show_unmount = TRUE;
+- }
+-
+ if (nautilus_file_can_mount (file)) {
+ *show_mount = TRUE;
+
+@@ -7805,6 +7801,12 @@ file_should_show_foreach (NautilusFile *file,
+ *show_stop = TRUE;
+ }
+
++ /* Dot not show both Unmount and Eject/Safe Removal; too confusing to
++ * have too many menu entries */
++ if (nautilus_file_can_unmount (file) && !*show_eject && !*show_stop) {
++ *show_unmount = TRUE;
++ }
++
+ if (nautilus_file_can_poll_for_media (file) && !nautilus_file_is_media_check_automatic (file)) {
+ *show_poll = TRUE;
+ }
+@@ -7852,10 +7854,6 @@ file_should_show_self (NautilusFile *file,
+ *show_eject = TRUE;
+ }
+
+- if (nautilus_file_can_unmount (file)) {
+- *show_unmount = TRUE;
+- }
+-
+ if (nautilus_file_can_mount (file)) {
+ *show_mount = TRUE;
+ }
+@@ -7874,6 +7872,12 @@ file_should_show_self (NautilusFile *file,
+ *show_stop = TRUE;
+ }
+
++ /* Dot not show both Unmount and Eject/Safe Removal; too confusing to
++ * have too many menu entries */
++ if (nautilus_file_can_unmount (file) && !*show_eject && !*show_stop) {
++ *show_unmount = TRUE;
++ }
++
+ if (nautilus_file_can_poll_for_media (file) && !nautilus_file_is_media_check_automatic (file)) {
+ *show_poll = TRUE;
+ }
+diff --git a/src/nautilus-places-sidebar.c b/src/nautilus-places-sidebar.c
+index 95c06eb..6dc2df7 100644
+--- a/src/nautilus-places-sidebar.c
++++ b/src/nautilus-places-sidebar.c
+@@ -1317,7 +1317,7 @@ check_unmount_and_eject (GMount *mount,
+ }
+ if (mount != NULL) {
+ *show_eject |= g_mount_can_eject (mount);
+- *show_unmount = g_mount_can_unmount (mount);
++ *show_unmount = g_mount_can_unmount (mount) && !*show_eject;
+ }
+ }
+
+@@ -1349,6 +1349,9 @@ check_visibility (GMount *mount,
+
+ *show_start = g_drive_can_start (drive) || g_drive_can_start_degraded (drive);
+ *show_stop = g_drive_can_stop (drive);
++
++ if (*show_stop)
++ *show_unmount = FALSE;
+ }
+
+ if (volume != NULL) {
+--
+cgit v0.8.3.1