android
android copied to clipboard
menu action naming schema for client/server related file actions
For a detailed discussion please see https://help.nextcloud.com/t/how-to-set-a-folder-as-available-offline/36209
At the moment the client has several actions regarding files/folders that trigger downloads and syncs with the server like:
-
folders:
sync(which it seems just downloads a files within the folder) -
files:
download(which simply downloads the file),set available offline(which downloads the file and keeps it in sync with the server) -
and then we have
auto upload(which uploads new and changed files to the server but doesn't "sync" deletions and maybe/probably also shouldn't do that)
I haven't gotten any feedback regarding a use case for "download and not keep in sync" while one issue remains that at least from a user perspective syncand download more or less do the same thing with different names.
Any input and feedback is highly welcome @nextcloud/android @nextcloud/designers
GitMate.io thinks possibly related issues are https://github.com/nextcloud/android/issues/579 (File actions in the list), https://github.com/nextcloud/android/issues/580 (Make file actions the same in all views), https://github.com/nextcloud/android/issues/2077 (File no longer available on the server), https://github.com/nextcloud/android/issues/2305 (Offer file name ellipsizing options), and https://github.com/nextcloud/android/issues/1309 ("Enter key" support after inputting server name).
We do already have a PR for removing "available offline" and auto-sync downloaded files: #2886.
Folder: sync is not only downloading it, but also upload any new/updated file in this folder.
Auto upload: as its name suggest, should never remove a file on server, as it is only upload.
I really think there should be a distinction between download and sync server -> client automatically.
But here's a brief summary of the discussion in the forum:
There should be consistent naming for the following 4 functions:
- (2-way) sync (download new versions from server, upload new versions from client)
- sync client->server (upload new versions from client)
- sync server->client (download new versions from server)
- download
The first 3 items are syncing automatically when a change occurs. The download option only retrieves the file on request and is not updated automatically on the client (nor synced to the server).
A use case for not wanting to automatically download a new version:
I am reading a file on my client (I could also have made changes to that file locally). Now somebody changes the file on the server. What happens to the document I'm currently reading? I do not want to read the new document. I want to read the "old" document. What happens to my changes? I don't want them to be overwritten. I don't want to resolve a conflict. I don't want the changes synced to the server yet. I'm still working on refining the document.
I am reading a file on my client (I could also have made changes to that file locally). Now somebody changes the file on the server. What happens to the document I'm currently reading? I do not want to read the new document. I want to read the "old" document.
Simple, we keep showing the "old" document, but also show a toast saying "File was updated [Show]".
@tobiasKaminsky @AndyScherzinger https://github.com/nextcloud/android/pull/2886 was merged, so we could close this?
@jancborchardt I don't think that anything that was brought up in this ticket has been resolved.
For a file I get the options: Download and Set as available offline. For a directory I get the option: Sync.
Therefore there is still a major inconsistency in the naming of the menu items and none of these items are explained in the doumentation (unless I've missed a doc update).
This ticket is about having consistent and meaningful naming.
Also, if there's a difference between sync and download:
- why can I sync a direcrory but not a file?
- why can I download a file, but not a directory?
@tessus please try our dev version as #2886 is merged and thus no "available offline" exists any longer.
@tobiasKaminsky please note that my comment above still holds (except the Set as available offline part):
I don't think that anything that was brought up in this ticket has been resolved.
For a file I get the options: Download ~~and Set as available offline~~. For a directory I get the option: Sync.
Therefore there is still a ~~major~~ inconsistency in the naming of the menu items and none of these items are explained in the doumentation (unless I've missed a doc update).
This ticket is about having consistent and meaningful naming.
Also, if there's a difference between sync and download:
- why can I sync a direcrory but not a file?
- why can I download a file, but not a directory?
As long as this has not been answered and resolved, this ticket is still valid, wouldn't you agree?
@tobiasKaminsky please don't think that I'm not aware that you are working on making it more consistent. I do and I'm grateful. I just think that this ticket hasn't been resolved - yet.
@tessus I hid your second comment since it mostly repeated the other one. Let’s aim to be brief and understandable. :)
We do already have a PR for removing "available offline" and auto-sync downloaded files: #2886.
Folder: sync is not only downloading it, but also upload any new/updated file in this folder.
Auto upload: as its name suggest, should never remove a file on server, as it is only upload.
Wasn't there a PR that removes the sync of new client files to the server? (As far as I remember due to an inconsistent implementation?!)