Plasma/Active/PA4/Files: Difference between revisions

From KDE Community Wiki
< Plasma‎ | Active‎ | PA4
(Added some more bugs)
(Added suggested solutions to existing problems and a new problem with suggested solutions)
Line 105: Line 105:
| icon view resize
| icon view resize
| [[#Icon View|Description]]
| [[#Icon View|Description]]
|
}}
|}
{{FeatureProjectTodo
| Timeline zoom
| [[#Timeline zoom|Description]]
|
|
}}
}}
Line 122: Line 130:


''Suggested Solution'': get rid of the intro page completely. Start with just the sidebar, selecting a category makes the main page slide in.
''Suggested Solution'': get rid of the intro page completely. Start with just the sidebar, selecting a category makes the main page slide in.
''Suggested Solution #2'': Get rid of the intro page and show all files by default, plus start with the side bar open, which contains "All" as category filter preselected.


=== File Copy ===
=== File Copy ===
Line 127: Line 137:


''Suggested Solution'': have the info sidebar discussed for rename with also buttons for copy and move from/to removable devices.
''Suggested Solution'': have the info sidebar discussed for rename with also buttons for copy and move from/to removable devices.
''Suggested Solution #2'': Provide visual indicators for possible drop targets while dragging. This helps in general to see which elements are drop targets and which are not.
''Suggested Solution #3'': Make all drop targets visually consistent so users see immediately where they can drop things.


=== Icon View ===
=== Icon View ===
Line 132: Line 146:


''Suggested Solution'': usea vertical scrolling GridView, it's less complex, faster to resize and having less instantiated qml objects and less proxy models should be in general a bit more performant. It also makes easier to select items in more than one page.
''Suggested Solution'': usea vertical scrolling GridView, it's less complex, faster to resize and having less instantiated qml objects and less proxy models should be in general a bit more performant. It also makes easier to select items in more than one page.
=== Timeline zoom ===
''Problem'': The zoom feature in the timeline is currently rather cumbersome with the buttons, with zooming in and out quite far away from each other, zoom in only appearing after selecting a point and only one zooming step at a time.
''Suggested solution'': Allow zooming with pinch gesture. Zooming in on a time point expands the next level (only one level possible). Zooming out is possible multiple levels at a time, a query is only started when the gesture is stopped. Activate buttons only for non-multitouch-devices.


== Missing Functionality ==
== Missing Functionality ==

Revision as of 16:45, 31 October 2012

PA4 tasks discovery process for Files application.

Functional Defects

Method

One line per defect describing it. We will triage confirmed and unfixed to bugs.kde.org.

Status Name Summary Developer
TODO Tag reset Select a tag, change file type being shown; tags UI is reset and you can not un-set the tag selected


TODO Folders deadend Perform a search that results in a folder being shown; enter the folder. The sidebar UI becomes permanently disabled.


TODO No full-text search Enter a word contained in one or more of your files in Files' search box. The files don't show up. Searching for the words within Reader does work, searching for filenames in Files works as well, but not searching in the content in Files


TODO Searching for <4 chars Enter 1-3 characters into the search box. It seems to perform a search, but always returns all files, not just matching ones


TODO Tag size update Associate some files with a tag. The size of the circle next to the tag is only updated when you switch to another tab (like "Filters") and back again.


TODO Long-tap on external storage Browse an external storage device with Files. Selecting a file via long-tap does not work, in contrast to browsing the internal storage.


TODO Internal <> external storage On the internal storage, select a filetype other than Documents, then switch to an external storage device and back. No files are shown unless a new query is initiated (by selecting a filter, tag etc.). Select a filetype other than documents again and switch to the external storage again. It shows file:///URL-to-file instead of just the filename and opening files or folders does not work.


TODO OOXML as Archives OOXML files are shown as Archives instead of Documents


TODO Deleting files Moving a file to Trash always returns "Could not delete file [path-to-file]"


TODO Filtering by rating Whatever rating I select in Filters, all files are shown


UI Improvements

Method

One section per issue. User stories for workflow related issues. Include a problem statement and possible solution:

Problem: ... User story: ... Suggested Solution: ...


Status Name Summary Developer
TODO Sidebar Tabs Description


IN PROGRESS Intro Page Description


TODO Copy to/from memory card Description


TODO icon view resize Description


|- valign=top style="background-color: #FFEEEE;" | style="text-align:center; vertical-align:middle; background-color: #FFABAB; width:10px;" | TODO | style="width:10px; vertical-align:middle;" | Timeline zoom

| style="vertical-align:middle; "| Description

|style="width:10px; vertical-align:middle;" |


|}

Sidebar Tabs

Problem: The sidebar tabs match the content area background, do not always line up with the sidebar and are visually noisy as separate tabs.

Suggested Solution: Merge the three tabs into a single (visually) tab with dividers between the words; make the width be the sidebar width and position directly above it; adjust the image used so that it matches the sidebar "hatch" background better visually.

Suggested Solution #2: change the tabbar ui with a navigation based one: only the first type sidebar is shown. Besides resource type radiobuttons, it has buttons to go into timeline, tags etc. when in timeline page there would be a back button. To make this easier to navigate, the sidebar can be resizable to allow 2 columns, having the main type sidebar always visible.

Intro Page

Problem: the intro page is redundant with the main sidebar: there are the same categories and they may get out of sync. Moveover it makes people want to "go back" when there is no need to.

Suggested Solution: get rid of the intro page completely. Start with just the sidebar, selecting a category makes the main page slide in.

Suggested Solution #2: Get rid of the intro page and show all files by default, plus start with the side bar open, which contains "All" as category filter preselected.

File Copy

Problem: it is possible to copy a file from the internal storage to a removable device or viceversa by dragging over the toolbar buttons, but this is not intuitive at all.

Suggested Solution: have the info sidebar discussed for rename with also buttons for copy and move from/to removable devices.

Suggested Solution #2: Provide visual indicators for possible drop targets while dragging. This helps in general to see which elements are drop targets and which are not.

Suggested Solution #3: Make all drop targets visually consistent so users see immediately where they can drop things.

Icon View

Problem: when the sidebar is opened/closed, the icon view is not very fast to resize, and it's painted with a misaligned layout for a fraction of second

Suggested Solution: usea vertical scrolling GridView, it's less complex, faster to resize and having less instantiated qml objects and less proxy models should be in general a bit more performant. It also makes easier to select items in more than one page.

Timeline zoom

Problem: The zoom feature in the timeline is currently rather cumbersome with the buttons, with zooming in and out quite far away from each other, zoom in only appearing after selecting a point and only one zooming step at a time.

Suggested solution: Allow zooming with pinch gesture. Zooming in on a time point expands the next level (only one level possible). Zooming out is possible multiple levels at a time, a query is only started when the gesture is stopped. Activate buttons only for non-multitouch-devices.

Missing Functionality

Method

Provide a user story describing the workflow that is not currently possible. Implementation planning will happen in a second round. (So detailed solutions do not need to be suggested.)

Content-type Specific Metadata as Tags

Jerry has copied a number of photos from his camera SD card to his tablet. He opens Files to view the images and finds select metadata in the Tags section pulled from the keyword and geolocation metadata of the images. Similarly, he has a number of books on his device with author and other metadata associated with them. When opening books, this metadata appears in the Tags automatically.

Suggested Solution: provide some specific UI for resource type (the same ones as the sidebar: documents, music, images...) that ui, living in the sidebar will allow to filter by metadata specific for the type, like author, album, geolocation, etc. Types of metadata can be specific for a resource type, for instance Album would be available only in "music"

File rename, delete, remove tags

Jerry has copied some photos on his device, but their names are auto generated by the camera, eg DSCN00001.jpg, so he wants to rename at least some. Then after organizing his album, wants to delete some photos that are just duplicate multiple takes of the same thing. Some day after, looking again at the album, he finds that he doesn't like how tags are and wants to either change or remove tags from some photos, or delete a tag entirely.

Suggested Solution: when a single file is selected, an info panel can be displayed in the sidebar, with some controls such as rename, delete and the list of tags. Then they can be deleted from there. The tags bar can also have a long press context menu on individual tags, for rename or delete.


Add items to activity

Sandy wants to add some items to the current activity and hits the "Add Items" button in the home screen. She is presented with an user interface that looks and behaves remotely similar to the file browser, but presents major discrepancies.

Suggested Solution: make the minimal part of the files browser, (what doesn't need c++ parts) a component usable from elsewhere, with limited functionality as a "file picker". would be great to inject it also as standard file open dialog for qt apps, but that could require ugly hacks.

Under the hood

  • make the metadata models used by Files more genric to be easy to be used for more use cases of "nepomuk from qml"
  • item delegates are a bit too complex, they should be smaller, for faster loading times and less memory usage