[KDE Usability] Review Request 126622: GSoC 2016 Project Idea: File Trays for Dolphin GUI Mockup
arnav dhamija
arnav.dhamija at gmail.com
Thu Jan 7 05:24:08 GMT 2016
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/126622/
-----------------------------------------------------------
(Updated Jan. 7, 2016, 5:24 a.m.)
Review request for Dolphin and KDE Usability.
Changes
-------
added some more use cases
Description (updated)
-------
**The idea**
Selecting multiple files in any file manager for copying and pasting has never been a pleasant experience, especially if the files are in a non-continuous order. Often, when copying files between devices we might find that we need to select only a subset of the required files we have selected and this leads to the unwieldy operation of removing files from our selection. Of course, the common workaround is to create a new folder and to put all the items in but this is a very inefficient process and can be very slow if large files need to be copied between devices.
My solution to this problem is to add a panel/view in Dolphin where the links to files and folders can be temporarily saved for a session. The files and folders are "staged" on this panel. Hence, the user can add folders and files from several different directories to this panel and can then collectively perform actions on all the items in the tray such as copy, paste, cut, upload images in selection to Facebook, upload files to Dropbox, etc. This makes complex file operations easy by staging the operation before performing it.
Files can be added to this tray by using a right-click context menu option or by using the mouse scroll click or drag and drop. As an additional option, the session for the File Tray Panel can be saved for later use.
My initial idea was to have another split view mode with its button in the toolbar in Dolphin. It will function similarly to the existing split view but with one half of the screen dedicated to the "Files tray". This would make it neatly integrated with Dolphin's existing toolset and it would make dragging and dropping easy. Dolphin maintainer Emmanuel Pescosta suggested using Plasmoids to make the project more cohesive with KDE and to make it usable with multiple applications (eg Gwenview).
**GUI Mockup**
Attached with this Review Request is a Balsamiq mockup for my project idea, building upon what already exists in Dolphin. The Tray panel is activated by a toggle button on the Dolphin toolbar and behaves very similarly to the Split feature. Dragging and dropping folders and files from the active directory on the left and pasting directly from the clipboard will be supported.
The File Tray gets its very own toolbar for implementing these functions on all the files placed in the Tray.
The "Destination Folder" dropdown has a list of recently accessed folders **and** an option to choose the active directory on the left of the File Tray.
"Cut" and "Copy" are self explanatory and will allow for files on the Tray to be transferred to the "Destination Folder".
The "Search in Files" button will use grep to find a certain string in the files located on the Tray. A search bar drops down when this is clicked.
The "Archive" button allows the user to compress and package the files in various archive formats.
The 3 dots menu hides more advanced features and prevents the toolbar from becoming too imposing.
"Create shortcuts" will create symbolic links for all the files in the Destination Folder the user has chosen.
"View Git version history" (I'm not sure if this will be useful) will display a GUI with the Git revisions along with the Git log if a .git folder is found in a directory.
The File Tray will use the same zoom and icon/details/compact settings as the main window of the file manager. While it may be technically possible to have a distinction, I feel it may be too complicated for many users as there will be many duplicate controls.
Also, as the toolbar for the File Tray is quite large, I'm not sure how to design the interaction when the window is scaled to a smaller size. Maybe the buttons overflowing can dynamically move into the 3 dots icon but I am not sure if this is a good practice.
I will be much obliged to hear feedback from the usability and dolphin teams on these GUI interactions : )
**EDIT**
After some more thought, I have decided to get rid of the File Tray toolbar. All these actions can either be integrated with Dolphin's existing context menus. There are some use cases I have thought of:
Jerry has a large music collection on his computer and he has many devices such as a tablet, smartphone, HTPC, and a USB drive for his car audio. He needs only a subset of files from his extensive collection which he wants to keep on all his devices. Hence, to avoid making the same selection over and over again for each device, it's much more efficient for him to just create his list on the File Tray and then copy the same list to each device.
George is a student at university and he has a lot of unorganised files on his computer from lots of different directories. By selecting these files and staging them on the File Tray in a split view mode, he can easily discern where each file should go. He can then easily move files by simply dragging and dropping them in the directory they belong in. This makes the File Tray a helpful tool for file organisation.
Cosmo keeps forgetting where he keeps his important files as they are often hidden deep within directories and sub-directories. The File Trays feature can come to the rescue here by letting him stash the files in the File Tray and hence it will save him time from drilling deep into directories for a file. Hence, the File Tray can also be used for making quick shortcuts for files. For this I plan to add a feature and user preference to allow the user to restore the Tray from the previous session and to have the option of making the Tray retain the files stored in it across sessions.
Furthermore, by default, the File Tray will **not** retain the files added in it across sessions, though I will add a button to restore files from the previous session. I also plan to add a Save button (not sure where it should go) to allow the user to save the selection of files they have made on the Tray.
Another important note about the interaction model I have thought about is that the File Tray should have its own shortcut such as ctrl+W (of course the keyboard shortcut is subject to change). Invoking this shortcut on a selected number of files in the Active Directory should immediately open the File Tray and add all the Files in the selection there. Moreover, the Split view will be disabled whenever the File Tray is active. If the split view is open when the File Tray keyboard shortcut is activated, the Split view of the inactive directory will close and will be replaced with the File Tray.
Finally, I also want to create a Plasmoid which will sync the same links as the File Tray and will exist as a widget on the Desktop. This Plasmoid will benefit the KDE desktop as a whole as multiple applications will be able to interact with the Plasmoid for stashing files. However, the completion of this may or may not happen with the GSoC timeline as it is completely dependent on how much QML I can learn by the time the GSoC proposal period starts : )
Also, there are a few more features I want to add to make the File Tray more powerful. However, these features are probably a better fit for Dolphin in general, and then the File Tray can use these functions from Dolphin:
1) The ability to create symbolic links of a selection of files. Nautilus has been doing this for a while.
2) Automatically create a music playlist file by selecting music files.
Diffs
-----
Diff: https://git.reviewboard.kde.org/r/126622/diff/
Testing
-------
File Attachments
----------------
FileTray Mockup.png
https://git.reviewboard.kde.org/media/uploaded/files/2016/01/04/ec5ec185-0307-4579-afc4-567d2aafa220__FileTray_Mockup.png
FileTray Mockup.bmpr
https://git.reviewboard.kde.org/media/uploaded/files/2016/01/04/46f46679-b243-45dc-9b13-8caac04d7283__FileTray_Mockup.bmpr
Thanks,
arnav dhamija
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.kde.org/mailman/private/kfm-devel/attachments/20160107/1a1166a6/attachment.htm>
-------------- next part --------------
_______________________________________________
kde-usability mailing list
kde-usability at kde.org
https://mail.kde.org/mailman/listinfo/kde-usability
More information about the kfm-devel
mailing list