Bug 180329 - Improve Dolphin behaviour and communication to the user when trying to umount a device.
Summary: Improve Dolphin behaviour and communication to the user when trying to umount...
Status: REOPENED
Alias: None
Product: dolphin
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR wishlist
Target Milestone: ---
Assignee: Dolphin Bug Assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-11 15:03 UTC by Diego
Modified: 2024-09-15 20:46 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Diego 2009-01-11 15:03:23 UTC
Version:           1.1.80 (using 4.1.85 (KDE 4.1.85 (KDE 4.2 Beta2)), 4.1.85-6.fc10 Fedora)
Compiler:          gcc
OS:                Linux (i686) release 2.6.27.9-163.fc10.i686

Problem:

This is what I get on my PC with USB 1.1 when I copy a big file (e.g. 100MiB) on a vfat memory stick:
- I get the notification that the file is being copied but in a few seconds it gets to 100% even if the file isn't completely copied;
- after that the memory stick still keeps writing data even if the notification tells you the transfer has finished (for 100MiB it keeps writing for more than a minute over USB 1.1), moreover if you try to umount from Dolphin at the bottom you get the following (highly technical) notification: «org.freedesktop.Hal.Device.Volume.Busy: umount: /media/name-of-the-device: device is busy.»;
- when the transfer is actually completed (the stick stops to write) Dolphin is again able to umount correctly.


Possible solution:

I don't know if this is the expected behavior but in GNOME the problem is partially solved in the file manager side: also GNOME doesn't report correctly the transfer progress (don't know if it is a file system shortcoming or something else) but it notifies the users in a more user friendly and intuitive manner.
This is GNOME behavior.
a) transfer notification active: if you try to umount you get a window that tells you that the device is busy at the moment;
b) transfer notification completed but the device is still writing: you get a pop-up telling that the device is writing data. To be precise (I translate from italian) the title of the pop-up is «Writing data to the device» and the text tells: «It is necessary to write data to "Name of the device" before being able to remove it. Do not remove the device.»
c) when the device has finished writing you get the following pop-up entitled: «It is now possible to remove the device without risks».

So a possible solution could be, instead of showing a technical warning, to tell the user to wait while the data is being wrote to the device and to notify him when the operation has completed.

So when a users tries to umount while the device is writing Dolphin should:
1) detect that the device is still writing data;
2) notify the user to not disconnect the device right now and to wait for the operation to be completed;
3) when the data transfer is actually completed umount the device and notify to the user that he can now remove the device.


P.S.: please tell me if it is appropriate to fill another bug report regarding the wrong transfer notification.
Comment 1 Diego 2010-10-14 13:42:56 UTC
I'll check again when Solid udisks backend will be shipped.
Comment 2 Christoph Cullmann 2024-09-14 16:17:55 UTC
Hi,

kdelibs (version 4 and earlier) is no longer maintained since a few years.

KDE Frameworks 5 or 6 might already have implemented this wish.

If not, please re-open against the matching framework if feasible or against the application that shows the issue.

We then can still dispatch it to the right Bugzilla product or component.

Greetings
Christoph Cullmann
Comment 3 Diego 2024-09-15 20:46:20 UTC
Hi,

The situation has improved a bit in the sense that the message now lists the applications / processes that use the mountpoint, but the operation will not be performed when the transfer process has completed.

I don't know the name of the library / framework that is responsible for this.

Regards