Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Layout for upload list (part of reliable uploads) #765

Closed
LukeOwlclaw opened this issue Nov 26, 2014 · 31 comments
Closed

Layout for upload list (part of reliable uploads) #765

LukeOwlclaw opened this issue Nov 26, 2014 · 31 comments
Labels

Comments

@LukeOwlclaw
Copy link

As part of the reliable uploads enhancement (cf. #762) I introduced a list showing all uploads (scheduled, active, done, failed_retry, failed_give_up, paused)

Currently it looks like this (just a draft):
screenshot_2014-11-26-19-38-11

Now, how should it look like? In detail,

  1. What file/upload details should be visible? (currently: local path, upload state, time of upload request [missing: file size, preview icon])
  2. What main menu items do we need? (currently: Clear list and retry uploads)
  3. What file menu options are required? (currently none)
  4. What should a click on an upload item do? (currently: if DONE: open details, if FAILED or SCHEDULED: retry)

@jancborchardt A penny for your thoughts!

@tobiasKaminsky
Copy link
Contributor

I think the list should be split up in:

  • failed
  • later
  • sucess
    Each displays the last 5 items and can be extended to see 10 more. Just like in K9.
    Each should have the option to only clear this list.
  1. preview icon is needed, as will be default. File size should also be visible. I think it is good to have it close to the normal file view.

  2. clear list -> clear all lists
    clear list should be possible for each list

  3. Same file option as in file list on the normal view: open, send, share, ...

  4. Good solution, but the user must see that it is a different action for the same click. And he must see this before he clicks. I would add an "refresh icon" for failed or scheduled items:
    index

The screenshot below is from the ios store of the owncloud app.
screen568x568

@tobiasKaminsky
Copy link
Contributor

I forgot to mention, that this is great work and I am looking forward to have this included!
This is also perfect to introduce the side bar (navigation drawer): #757

@LukeOwlclaw
Copy link
Author

I was also thinking about dividing the list into sections. The problem I have with the iPhone solution: There are too kinds of failed: permanently (cancelled, local file gone, quota exceeded, etc.) and temporarily (no connection). This would then make 4 sections which is too many, I think. (maybe these 2 internal lists can be merged in the GUI...)

Android's bluetooth transmission is very simple:

bt
(sorry for the overlay in the upper right)

Would that be enough for us as well? I do not want to make it too complicated.

@tobiasKaminsky
Copy link
Contributor

There are too kinds of failed

Just merge them into one section and sort them by date. In the subtext there could be the reason why it failed.

Would that be enough for us as well? I do not want to make it too complicated.

I do not think that three sections are too complicated as they are split up by the current states pending/failed/success.
I imagine me as a user do not bother about succeeded or delayed files and only look at the import list "failed". So this must be on first position. (and of course this should always be empty when everything works ;) )

@LukeOwlclaw
Copy link
Author

Here an update of the current layout

3fold

@tobiasKaminsky How can I use the thumbnail of photos? I do not have a remote path.

@tobiasKaminsky
Copy link
Contributor

Great. You make big improvements.
The icons are really great!
But I suggest this:

  • "current/failed/finished uploads" align to the left
  • Put a "three dots" on the right side, which allows to clear only this list
  • behind "three dots" on failed uploads: add "retry all"
  • remove "upload_succeeded/cancelled" as this is clear. But keep "operation cancelled by user"
  • click: show details for all kinds of files
  • long click: resume (on failed), remove from list (for all)
  • add files size

(I know this is much, but these are only suggestions. So it is up to you and @jancborchardt what will be included).

@tobiasKaminsky How can I use the thumbnail of photos? I do not have a remote path.

See #746, there I have added thumbnail for local files.
I suggest that we wait until this PR is included and then can I/you add thumbnail support for this upload dialog.

@LukeOwlclaw
Copy link
Author

Okay, this is the last screenshot for now. I am waiting for some feedback from the oC guys.

uploadlist

Working: Clear all finished/failed uploads. Retry all pending uploads. For each upload individually: Cancel, remove, open with, details. Option to upload only while charging, when connected via wifi, and/or after configurable timestamp (for non-instant instant uploads --> #349).

Still missing: Clear list for each section. Move retry button in "Current Upload" section header. Rework notifications (there should be only one containing a summary, onclick: go to upload list for details.)

Note: The upper photo was taken with "Upload via wifi only", the other one not.

@jancborchardt
Copy link
Member

Nice, good initiative @LukeOwncloud! And great feedback already @tobiasKaminsky, I basically agree with it, especially that this needs the introduction of a sidebar soon.

As for some more feedback:

  • The icons for current/failed/finished are a bit too small and not very good to discern. Would be better to make it only the icon (without the cloud) and colorize it. Best take the icons from the Activity app: https://github.com/owncloud/activity/tree/master/img
  • The icons should be aligned horizontally to be centered with the file type icons
  • The text of current/failed/finished needs to be dark for the proper contrast, and should not be bold.
  • The text should be left-aligned with the other filenames.
  • Instead of using iOS-like color for the sections, better would be a bit of whitespace to the top.

@LukeOwlclaw
Copy link
Author

Updated GUI screenshot:

uploadlist2

@jancborchardt
Copy link
Member

Nice! Some more things:

  • the icons should be a tad smaller, currently they are the biggest thing on the page
  • can you make the »current uploads« icon 50% grey instead of fully black?
  • when a section (such as »Failed Uploads« here) doesn’t have any entries, do not show the header

@jancborchardt
Copy link
Member

Also, I’d say it looks better with the background color and top/bottom borders on the headers completely removed.

@LukeOwlclaw
Copy link
Author

I do not like the group header symbols. So I adopted the preferences layout. Also the empty groups are hidden now:

uploadlist3

@jancborchardt
Copy link
Member

Good call, looks better without icons. How about removing the thick bottom border as well and instead using whitespace?

@rperezb
Copy link

rperezb commented Dec 10, 2014

hey @LukeOwncloud this is such a great job!!

I´d like to ask for some points :)

  • This uploads view is for the app or it deppends on the active user, if possible, it would be great if it deppends on the active user
  • What should a click on an upload item do? (currently: if DONE: open details, if FAILED or SCHEDULED: retry)
    • If I wanted to just remove the failed upload, can I do it? On the iOS app, we use the swipe option, would it make sense to use the long press on the Android? As it is done on the app

    • FAILED upload, on the iOS app, deppends on why the upload failed, we have different actions, plus different messages on the view:

       - The connection is down, server or network 
                   * The messsage shown is: "Waiting for server connection"
                   * Action: agreed, retry it, plus they are automatically retry when the user changes to another view
      
       - The folder does not exist any longer, it has been deleted from another client
                   * Message: "Folder error"
                   * Action: it is offered to the user the "move menu" so that we may select another destination folder
      
      - The password of the account has changed
                 * Message: Credentials error
                 * Action: When clicking, the edit login view is shown, so that the user may update the password
      
      - You don´t have privileges to upload on that folder, for instance a shared folder
                 * Message: Privileges error
                 * Action:  it is offered to the user the "move menu" so that we may select another destination folder
      
      - The file does not exist any longer on the device
               * Message: File error
               * Action, there is not action, it can only be deleted this entry from the table
      
  • Uploads in progress, is it possible to cancel them?

@LukeOwlclaw
Copy link
Author

@rperezb Thanks for your response.

  • I am afraid I do not distinguish between users/accounts. Adding it should not be too hard though.
  • Long click opens a menu allowing to: "open with", "cancel upload" (for current uploads)/"remove from list" (for failed and finished uploads), "retry now" (for current but not active uploads), "details", the other retry options (moving, ask for credentials) have to be added.
  • I think it would be good to just open the files with a simple click. Then it is the some for all files and also same as in the default browsing mode. I'll try to change that.

About the categories:

  • Current: Contains all upload which are in progress, scheduled, or have to be retried (and can be retried automatically).
  • Failed: All uploads that failed and require user interaction (or local file deleted)
  • Finished: I do not like the naming, but it should be clear: All successfully finished uploads.

There is still one big issue: There were concurrency problems before, so I serialized the upload service. Drawback: While uploading a file, the upload list and notifcations are not updated. New uploads will only be shown after all currently queued uploads were processed. Before doing any changes here I want to discuss this with @davivel and @jabarros first, though. I am not so happy with the internal structure anymore, maybe they have some more insights and better ideas!

Continue missing: Clear list for each section. Move retry button in "Current Upload" section header. Rework notifications (there should be only one containing a summary, onclick: go to upload list for details.)

@jancborchardt
Copy link
Member

How about:

  • the current uploads having an »x« to cancel on the right. Clicking on the rest of the area prepares opening the file
  • the failed uploads having a circular arrow on the right to retry. Although clicking anywhere on the entry will retry

@LukeOwlclaw
Copy link
Author

And yet another update:
uploadlist4

For the circular buttons I am using unicode characters. I hope these are available on all Android systems...

@tobiasKaminsky
Copy link
Contributor

I am not sure if these circular buttons are needed.
This function is not needed that much as it needs this big space.
Additionally I do not think that I would resume all items one by one. I'd rather use the "delete all" / "retry all" option of the corresponding list.
Just my 2 cents ;)

@vip9
Copy link

vip9 commented Jan 3, 2015

I would also leave (or rather make) "retry all" button only. BTW, clear failed uploads seems does not work (reliable_uploads branch)

@LukeOwlclaw
Copy link
Author

@Vip "Retry all" buttons are already prepared (check upload_list_group.xml). "Clear failed uploads" only removes all elements from group FAILED UPLOADS. Works for me. Maybe you expected it to also delete temporarily failed uploads from CURRENT UPLOADS? This is not done on purpose, but it is a little confusing I admit. It'll be more intuitive if the groups buttons are used instead of the menu and item buttons (just as you suggested).
Unfortunately, I won't have time to work on this in the next couple of months for private reasons.

@enoch85
Copy link
Member

enoch85 commented Dec 13, 2015

Any new updated screenshot on this?

@Bugsbane
Copy link

Hey @LukeOwncloud

Thanks so much for your work on this. Looking forward to using it. As a user, the only thing that's unclear to me from the last screenshot is what a recycle icon stands for in the context of already uploaded files. If it's supposed to stand for delete, then I don't understand why it doesn't use the trash can icon we use everywhere else in ownCloud, and I would expect to see here. If it's some kind of "upload again" then I would expect it to be the same "retry" icon used next to the failed uploads above.

@tobiasKaminsky
Copy link
Contributor

@Bugsbane I think clicking this icon will just remove the entry from the list.

@jancborchardt
Copy link
Member

@LukasReschke (I mean @LukeOwncloud) @Bugsbane @tobiasKaminsky since it’s just a history, I wouldn’t even have that icon there. As noted the icon is confusing, and the function is not really necessary anyway.

@LukasReschke
Copy link
Member

@LukeOwncloud is not @LukasReschke 🙊

@tobiasKaminsky
Copy link
Contributor

@jancborchardt But how is the history being cleared? It cannot show all entries. Should it always show just the latest (10/20/50) entries?

@Bugsbane
Copy link

@tobiasKaminsky if it's just "clear this entry" wouldn't the X icon make more sense than "recycle" which implies turning the file into somehing new or at least retrieving it from deleted (such as the Windows file explorer recycle bin)?

@jancborchardt
Copy link
Member

@tobiasKaminsky just show the latest 20 entries or so, and lazy load more on scrolling down. Just like the ownCloud Activity app in the web interface (or like Twitter, Facebook, etc ;).

@tobiasKaminsky
Copy link
Contributor

I have never used lazy loading before, but I guess that it is possible with android.
Maybe @LukeOwncloud wants to resume his developer skills and help here?

@LukeOwlclaw
Copy link
Author

I'd say the discussion about the layout is mainly over, isn't it? For improvements like lazy loading we should open a new issue. So I better close this issue.

@davivel
Copy link
Contributor

davivel commented Apr 27, 2016

Totally right, @LukeOwncloud ; thanks for closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

10 participants