Here is my latest little project, integrate epiphany downloads with nautilus. First a mockup.
This shows the normal nautilus spatial window, but in the corner there is a little addition, a download status bar indicating how many files are being downloaded in that particular folder, as well as the global download progress.
Now, the actual screenshot of a live download in nautilus, the result is the same, but the display needs to be cleaned (showing human-readable file sizes, times, etc)
So, the concept is quite simple, forward epiphany download events to nautilus via dbus, since gnome-vfs can’t handle downloads from epiphany at the moment. In nautilus, listen for dbus events and store the various downloads. The nautilus windows that are showing a folder where a download is in progress are notified, and show the progress.
Next step is to show files being downloaded with a special emblem, indicating that they are being downloaded and showing the progress of that file, for example using a pie emblem that fills up, or a vertical bar that grows to 100%. A context menu for these files would allow to pause/cancel/resume/abort the transfer.
The final goal is to use nautilus for the actual download, and epiphany would just forward the url to download, but in the meantime this would provide a working UI. When the change is ready, just change the backend, the UI stays the same.
Now i would like to hear you comments about that..
Update: after reading the first comments, i think i must go a bit further in my explanation. This thing does not happen when you drag and drop from epiphany to nautilus, but when you click on a link in epiphany and choose to download the file. Instead of having the current download manager pop-up, the nautilus window would appear, with that ui.
This has at least 2 avantages over the current system: No pop-ups (well the nautilus folder would appear, but this is an option i don’t know if it’s better to not open it..), the download you view will be related to the folder that you are looking at. Maybe the same UI can then be used for regular file move/copy operations.