[KDE Usability] Review Request 126622: GSoC 2016 Project Idea: File Trays for Dolphin GUI Mockup
arnav dhamija
arnav.dhamija at gmail.com
Tue Jan 19 10:47:45 GMT 2016
> On Jan. 17, 2016, 5:53 p.m., Heiko Tietze wrote:
> > Sounds like a good starting point. I don't understand why files shouldn't be cut from their original position via file tray. But that's a minor issue, IMHO. More difficult will be the delete file(s)/purge tray disinction. First idea is to accelerate the delete by, for instance, ctrl (crtl doesn't work because of delete instead of move to trash, or was it alt?). But accelerate for safety purpose the delete file function or, since it's a new function, remove items from the tray? We should solve this issue later.
> > Anyway, looks like you want to start, which is great. I'd suggest to move the essence from this review to the wiki.
>
> arnav dhamija wrote:
> Thanks for the ship request!
>
> The problem is this - when we Cut files from the destination and place them on the File Tray, the files URLs are copied to the Tray, and the files are marked for deletion when the Copying process is complete.
>
> Now, suppose I go to another directory and Copy the files in the Tray to the active directory, what should happen to the files in the source directory? Should the File Tray copy all the files to the active directory and then delete them from the source? However, if the files are deleted from the source, they will disappear from the File Tray as well as their URLs will no longer be valid. This may not be unexpected behavior for users who have a mix of files which are Copied and Cut from their respective source directories and Copy all these files to another directory.
>
> Moreover, which wiki will this be moved to?
>
> Heiko Tietze wrote:
> What I meant is to cut the file later from the try. Of course you can just add it there from the origin, which is neither copy nor move.
>
> Wiki is here https://techbase.kde.org/Welcome_to_KDE_TechBase. Maybe the community area is better or more up to date https://community.kde.org/Dolphin, but according https://community.kde.org/Main_Page "The community wiki is the collaboration place for the community. It is used for publishing and sharing community-internal information. Work in progress or information targetted at very small groups of people is suitable content for the community wiki. It also acts as a staging area for content which later is moved to techbase or userbase." I wouldn't care too much. ;-)
>
> Thomas Pfeiffer wrote:
> It should definitely go in community.kde.org . Techbase is a documentation wiki for things which are already there.
>
> arnav dhamija wrote:
> I will definitely post this on the KDE Community wiki. But, where do I go from there and what are the advantages of putting it up on Community wiki?
I have finished making my page here: https://userbase.kde.org/Thread:User_talk:Shortstheory/GSoC_2016_Project_Idea:_File_Trays_for_file_selections_in_Dolphin
Where should this go in the wiki?
- arnav
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/126622/#review91215
-----------------------------------------------------------
On Jan. 17, 2016, 11:35 a.m., arnav dhamija wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/126622/
> -----------------------------------------------------------
>
> (Updated Jan. 17, 2016, 11:35 a.m.)
>
>
> Review request for Dolphin and KDE Usability.
>
>
> Description
> -------
>
> **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, delete items, send via Bluetooth, create a list of symbolic links, and better sharing options for the File Tray and Dolphin as a whole using the KDE Purpose Framework API. Complex file operations such as moving files across many devices can be made 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.
>
> This File Tray will be accessible through the existing Split view function in Dolphin as well as a directory available under the Panel section. 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).
>
> **Implementation**
> The File Trays implementation is not completely resolved yet, but currently I want to implement a type of KIO Slave dedicated to the File Tray. Implementing a KIO Slave will make this project extremely versatile as it will allow several other KDE programs (such as Konqueror) to also benefit from such a feature. Creating a Plasmoid for the same will also be much easier as it will be no more difficult than simply using the existing Folder view Plasmoid by setting the directory to filetray:/ and creating some more context menu specific actions (I will probably need a better name than filetray:/ for it though).
>
> **Use Cases**
> 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.
>
> **Interaction Model**
> The File Tray will behave exactly like any other directory in Dolphin. However, the interaction model is not entirely obvious at first glance.
>
> For example, using Copy on a selection of files and Pasting in the File Tray will populate a list of the folders in the Tray. Now, copying these files from the File Tray and pasting them to another directory will retain the files on the Tray while creating a copy of these files at the chosen directory.
>
> Using a Cut on a selection of files **on** the File Tray will remove the files on the File Tray while copying them to the chosen directory.
>
> However, one interaction which I feel will create a lot of confusion would be moving the files to the File Tray. This will be confusing as moving files to a virtual directory is not possible as the files simply exist as URLs on the Tray. Hence, the context menu will have a minor modification to disable/remove the Move option to the Tray. If items are pasted from the Clipboard, the files will still remain in their source directory, regardless of whether they have been Cut or Copied from the source directory.
>
> On the other hand, there will be two options for Removing files from the File Tray. One option will simply remove the chosen files from the list in the File Tray and the other option will move the selection to the Trash.
>
> 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.
>
> Also, the File Open dialog will undergo some modification so users can select items directly off the Tray for other programs.
>
> 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 : )
>
> **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 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.
>
> I will be much obliged to hear feedback from the usability and dolphin teams on these GUI interactions : )
>
> **Extra Features**
> 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.
> 3) Adding support for the KDE Purpose Framework in Dolphin to make sharing easier.
>
> **Note**
> I made a new mockup by butchering the mockup a bit :S But, the new one is at least indicative of what I want to achieve with this project. I'm leaving the old one in just for some A/B testing if anyone wants to compare.
>
>
> Diffs
> -----
>
>
> Diff: https://git.reviewboard.kde.org/r/126622/diff/
>
>
> Testing
> -------
>
>
> File Attachments
> ----------------
>
> FileTray Mockup (OLD).png
> https://git.reviewboard.kde.org/media/uploaded/files/2016/01/04/ec5ec185-0307-4579-afc4-567d2aafa220__FileTray_Mockup.png
> FileTray Mockup.png
> https://git.reviewboard.kde.org/media/uploaded/files/2016/01/09/feeab4a9-df95-42ed-b1f5-7c6bb756db2f__FileTray_Mockup.png
>
>
> Thanks,
>
> arnav dhamija
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.kde.org/mailman/private/kfm-devel/attachments/20160119/a651f14a/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