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

Favorites #687

Closed
mario opened this issue Feb 27, 2017 · 30 comments
Closed

Favorites #687

mario opened this issue Feb 27, 2017 · 30 comments
Assignees

Comments

@mario
Copy link
Contributor

mario commented Feb 27, 2017

Opening an issue for favorites, just to make sure I understood things right.

So this will be done as a part of sidebar redesign, and "On device" wording will be replaced with "Favorites". Also, all favourites will have the functionality that currently "Set as available offline" has.

Confirm.

@tobiasKaminsky @jancborchardt @AndyScherzinger

@AndyScherzinger
Copy link
Member

AndyScherzinger commented Feb 27, 2017

As far as I understood this that is @jancborchardt's master plan here :)
One issue that might be tricky though is that changing the behavior as you correctly described the requirement would also mean:

  • as soon as a user has logged in to the app with an account we would have to fetch the list of favorites and download all these files
  • as soon as a user marks a file as a favorite on any device it would have to be downloaded without the user having to actively do anything on any of the other devices

@jancborchardt is this where we want to go? It does make sense but leaves some open questions (if the above assumptions are correct):

  • do we need some kind of config for networks or do we go for "wifi only" since this might cause exhaustive data plan usage for some users, e.g. by mistake mark a 1GB video file on the web view and have it auto-downloaded to 2 mobile devices over 3G/4G.

For the clients to make this work seamlessly I'd say we would need to implement some cyclic check/sync for the list of favorites or should the be checked manually @jancborchardt. From a UX point of view I'd expect an app to automatically do this on its own.

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

From my understanding of the possible implementation:

  • First assumption is correct
  • Second assumption is also correct, with variable definition of "as soon"

For the third question:

Currently, all files that are marked as "Available offline" seem to download whenever? Or am I wrong? (Didn't look into it in detail). I'd assume if a user marks something as favorite, they know what they're doing, so no need for wi-fi only?

We could do a favorites check on every other refresh?

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

Well actually ... every refresh will give us a list of favorites. So that's fine, isn't it?

@AndyScherzinger
Copy link
Member

I though a refresh is limited to the actual folder you are in?

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

I think it refreshes everything, but unsure. If it doesn't, then maybe every other refresh we should also refresh favorites?

Or time based?

@AndyScherzinger
Copy link
Member

If we can do time based (might be possible with the JobScheduler?) I'd say time based with an algorithm that increases/descreases the interval depending on if changes were detected or not, because this way the user wouldn't have to interact with all owned devices to get them in Sync with the favorites again. Plus that might then be a nice way to push files to devices? :D

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

This is possible with JS, and on earlier versions Alarm Manager.

@AndyScherzinger
Copy link
Member

@jancborchardt @tobiasKaminsky what do you think? The concept seems sound and having auto-checks with change-depending, increasing/decreasing intervals seems to be nice while it probably makes sense to still offer a manual check if a new favorite is available when the interval has grown to big. This way we would have a "smart" solution for auto-detection while with the dynamic interval would not drain the battery to much.

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

Interval could be reset upon visiting the favourites screen, and the interval should be restricted to 5 hours max.

@elpraga
Copy link

elpraga commented Feb 27, 2017

I'm sorry to bring it up again, but wouldn't it make more sense to implement server tags? It already has a server side implementation and it would be much more flexible.

It could be set up to work online only or it could show a message like: Internet connection not available. Showing local files only.

Also, I'm not really sure if having all files and folders marked as favourite available locally is the best behavior. In my case, it would be helpful to have some system of shortcuts to quickly access folders and files buried way down the folder tree, but I certainly wouldn't want to have all files within a favourite folder downloaded locally (not even mentioning recursive downloads).

If tags were used, they could be cached until updated from the server.

Please note, I understand that you'll make your decision after all as you are the ones doing the work. :-)

I was merely trying to explain a possible usercase ;-)

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

Favourites also have a server side implementation, and are actually implemented as a tag (kind-of). :)

@AndyScherzinger
Copy link
Member

@elpraga your comment is totally legit, that is also why I asked if it should be "wifi only" because larger folders or files might hurt quite a bit, data plan and storage wise.

@elpraga
Copy link

elpraga commented Feb 27, 2017

I do think that favorites and available offline are two different concepts with two different uses. Favorites are the things I want to have at hand, and available offline are those I want to have always synced. They may, but don't necessarily have to overlap.

@elpraga
Copy link

elpraga commented Feb 27, 2017

@mario I didn't know that! 😃 But that would also mean that implementing favorites would be quite similar to implementing tags. Actually, in this light, favourites sound like a subset of tags.

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

Yup @elpraga :)

@elpraga
Copy link

elpraga commented Feb 27, 2017

The main reason why I was trying to advocate for implementing tags in the mobile application is that as for now their I implementation is very short of their capabilities. Currently it is not possible to tag several files at once and that if clumsy.

I believe that connecting instant upload capability with an easy to use tag system could bring managing photos to completely new level. Being able to tag photos shortly after taking them or on the bus and filter them later world be a huge advantage.

But I understand that implementing that could be more difficult than I can realize..

@mario
Copy link
Contributor Author

mario commented Feb 27, 2017

Tags will definitely happen eventually, we just have to prioritize things. If I had to guess right now, I'd say 1.6 - but I am not alone here, and do not know what will happen in the future :)

@AndyScherzinger
Copy link
Member

@elpraga can you elaborate a bit more on the tagging + auto upload idea? I didn't quite get how that should supposedly work? Do you mean that there should be some kind of an auto upload where you specify a tag and define to where any file tagged that way should be uploaded to?

@elpraga
Copy link

elpraga commented Feb 27, 2017

Ok, @AndyScherzinger , I will try. I am going to open my computer..

@elpraga
Copy link

elpraga commented Feb 27, 2017

I'll try to describe how I use the instant upload feature and how it would (in my case) benefit from the tag system. You may consider if it would be useful for more people as well...

  • My primary camera is my mobile phone. As mobile phones' cameras are quite decent now, I might not be the only one.

  • I heavily use Nextcloud's auto upload feature, because I do want to have my photos accessible and backed up, but I don't like the idea of someone else (google) knowing so much about me.

This results in a situation where I have some 2000 photos in a single folder pretty much representing my photo diary from last three years.

The problem is that I have to use another app to organize my photos (I use Shotwell). It requires quite some extra time and the results are only accessible on one of my computers.

Viewing the photo collection (especially) using the Beta app is great. I can very comfortably see all my photos and mainly I can use dead times (like waiting for a bus, riding on the bus, etc..) to do so.

For me, it would be great if I could set tags using my phone to organize my collection. Even if I had to use the web interface to view them later.

  • The Gallery app is very nice to view photos, but it lacks the possibility to add tags.
  • The Files app only shows a small thumbnail, which is not easy to see, and
  • it only allows one file to be tagged at a time.

In my opinion, the mobile app would be ideal to use if it could tag several files at once. The previews are quite large (in the Beta app they can be even enlarged using the pinch gesture)

It would be easy to tag the last photos taken (waiting for a bus or even on other occasions when we are alone for several minutes and have some spare time), and doing that little by little, we could get the photo collection organized much easier than now. That was the connection between instant upload and tagging I was talking about.

That is also why I see great potential in the tagging system, but I see it quite unusable (or hardly usable) at the moment.

Uff.. I hope I made myself understood 😄

Do you think the use of tags I described would be useful for other users as well?

@AndyScherzinger
Copy link
Member

Thanks for the details description @elpraga. One issue I see is that in order for Nextcloud to tag the images the would have to be known to Nc as in uploaded already (at the moment).

So it seems the idea would be to do the tagging after they are uploaded and then have some kind of "job" running which does some sorting into to be created folders based on the used tags or keep them in a flat folder structure and provide a view on top of it based on the tags. My guess is that is pretty much what Google is doing, providing views to the photos based on their meta data.

@elpraga
Copy link

elpraga commented Feb 27, 2017

Yes @AndyScherzinger , I had definitely manual tagging in mind. All files would be tagged manually after upload.

I'm not sure if I understand correctly what you meant by folders. In my opinion, the files could all stay in the folder they are in. Using tags would just filter all the files based on a given tag (much like tags or searching now works in Files app in the web interface).

My idea was that more actions can be done on tagged files. Like viewing them on a phone (in a similar fashion viewing the files stored on the device works now.), tagging them, etc..

Like this, it would be much easier to filter photos from the vacations two ears ago, or someone's photos and do another action on them - like copying them to another folder of simply showing them.

Of course it would work for other types of files as well, pulling (or searching for) well tagged budgets form several project from different years would be much easier..

@elpraga
Copy link

elpraga commented Feb 27, 2017

And I understand @mario the need to prioritize. But maybe if implementing tags is planned for some distant future, the current Favorietes can be implemented in a way to be more easily expandible into tags later..

@AndyScherzinger
Copy link
Member

@elpraga sounds good and possible to me 👍 This might be something which can then easily provided via and extension of search/filtering via a server side triggered search based on a tag but to make it nicely usable might also need the thumbnails preview PR to be merged so you you can actually have a nice look at the images for example (which probably aren't on the phone).

@elpraga
Copy link

elpraga commented Feb 27, 2017

If you are referring to the photo preview currently in the Beta app, I agree that it is great. It allows me to preview all my 2000 photos in a very decent resolution without filling up all my storage. It would be great to see it in the official app indeed.

@AndyScherzinger
Copy link
Member

That is the one I meant, yes :)

@mario
Copy link
Contributor Author

mario commented Mar 5, 2017

Btw. the part where favourites replace Offline files completely will probably be in 1.6 because we currently don't support folder sync at all.

Therefore, for 1.5 favorites management will be introduced and in 1.6 we'll do a migration once folder sync is supported.

cc @AndyScherzinger @tobiasKaminsky

@mario mario self-assigned this Mar 5, 2017
@mario mario added this to the Nextcloud App 1.5.0 milestone Mar 5, 2017
@AndyScherzinger
Copy link
Member

Makes total sense, yes. ! 👍

@AndyScherzinger
Copy link
Member

since #742 has been merged, can we close this issue? cc @mario?

@mario
Copy link
Contributor Author

mario commented Mar 31, 2017 via email

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

No branches or pull requests

3 participants