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

πŸ–ΌοΈπŸ“‚ Limit Photos to a single folder + subtree #141

Closed
1 task done
dermalikmann opened this issue Jan 20, 2020 · 75 comments Β· Fixed by #2319
Closed
1 task done

πŸ–ΌοΈπŸ“‚ Limit Photos to a single folder + subtree #141

dermalikmann opened this issue Jan 20, 2020 · 75 comments Β· Fixed by #2319
Assignees
Labels
3. to review Waiting for reviews enhancement New feature or request help wanted Extra attention is needed πŸ€ 2024-Spring
Milestone

Comments

@dermalikmann
Copy link

dermalikmann commented Jan 20, 2020

I think it would be really nice to create an option where the user can select a single folder (like /Photos) and the app only scans this folder and its subfolders.

I have tons and tons of images all over my nextcloud, but only in /Photos are my, well, photos. And it's kind of a tedious task to create always a .nomedia file in all other directories.

@skjnldsv
Copy link
Member

@jancborchardt ?

@skjnldsv skjnldsv added 0. Needs triage Pending approval or rejection. This issue is pending approval. enhancement New feature or request labels Jan 21, 2020
@jancborchardt
Copy link
Member

Yes, @Mikescops and I briefly talked about this at the Contributor Week as well. What we could go for:

  1. We look for a "Photos" or "Pictures" folder in the root. If it exists, we take that.
  2. We should also account for translations, ideally following the xdg-user-dirs translations.
  3. If no such folder exists, we fall back to root.
  4. We show a settings area in the bottom left with:

Showing files from Photos
and a button: ( Change folder )

That way it’s an automatic setup process but can still be adjusted later.

@jancborchardt jancborchardt changed the title Option to limit nc-photos search to a single folder + subtree Limit Photos to a single folder + subtree Jan 23, 2020
@skjnldsv
Copy link
Member

I would say it doesn't cover my needs. I have multiple folders with pictures that I want to be shown. Android is using all available photos, no idea for other galleries. Could be nice to check what users expect before pushing such drastic changes :)

Also, just having a setting to include/exclude some folders is probably the easiest/most universal way to do? πŸ€·β€β™€οΈ

@Mikescops
Copy link
Member

@skjnldsv the point of @jancborchardt during our discussion was to have the most easy and transparent way to have the folder setups. I agree include/exclude would be the prefered way (as it is done on the sync for desktop client) but Jan thought choosing a single folder and having a per default on the Photos folder is the easiest way.

@skjnldsv
Copy link
Member

skjnldsv commented Jan 23, 2020

Defaut is indeed always preferable, I'm not arguing this part.
But a default automated config needs to be relevant. I'm not sure this is relevant to use a default Pictures or Photos folder.
Even our Nextcloud client have the default autoupload set to the InstantUpload folder, so we would not be compliant to our android setup :)

@Mikescops
Copy link
Member

Let's take root folder but provide an option asap to restrict it to a given folder

@skjnldsv skjnldsv added 1. to develop Accepted and waiting to be taken care of and removed 0. Needs triage Pending approval or rejection. This issue is pending approval. labels Jan 28, 2020
@thutex

This comment has been minimized.

@saywebsolutions

This comment has been minimized.

@bendschs
Copy link

does .noimage apply to a folder and all subfolders or just the folder itself?

@skjnldsv
Copy link
Member

does .noimage apply to a folder and all subfolders or just the folder itself?

folder and subfolders :)

@bendschs
Copy link

ok, in that case it simply does not work for me ... latest stable release of nextcloud 18

@strugee
Copy link
Member

strugee commented Mar 19, 2020

@bendschs please file a separate issue then. Make sure to search for duplicates beforehand.

@kicker334
Copy link

Can this be developed? the .noimage/.nomedia trick isn't working for any of my folders.

@jancborchardt
Copy link
Member

@kicker334 sure thing – are you interested in contributing? :)

@kicker334
Copy link

@jancborchardt I honestly wouldn't know where to start, develop, or test this type of thing... :( I have to ask strangers on the internet for help.

@naezeroth
Copy link

I'd love to help out - I'm super new to this kind of thing but if I could get some starting tips I can definitely have a go!

@AndyScherzinger AndyScherzinger changed the title πŸ–ΌοΈ Limit Photos to a single folder + subtree πŸ–ΌοΈπŸ“‚ Limit Photos to a single folder + subtree Jan 18, 2024
@artonge
Copy link
Collaborator

artonge commented Jan 22, 2024

@jancborchardt we already have a setting to configure upload directory for photos. I guess we should keep only one, right? Currently, the default value for this setting is the hard-coded string '/Photos'.

One limitation could be that a user could want the Photos app to show pictures from its root directory, while wanting new pictures to be uploaded in a specific one.

We can internationalize the default value with the way we usually do our translations.

image

@szaimen
Copy link
Contributor

szaimen commented Jan 22, 2024

I would personally vote for a second config option as people might want to set these independently...

@AndyScherzinger
Copy link
Member

We can internationalize the default value with the way we usually do our translations.

I wouldn't do that, on Android have have this -> AutoUpload folder is translated: So whenever you switch the language of the device, or have a new device or several with different languages it gets messy.

The only thing that comes to mind could be to have a way to display this fact as some meta info at the folder within the files app.

Just my 2 cents.

@artonge
Copy link
Collaborator

artonge commented Jan 22, 2024

I wouldn't do that, on Android have have this -> AutoUpload folder is translated: So whenever you switch the language of the device, or have a new device or several with different languages it gets messy.

Translated on init would be enough, no?

@AndyScherzinger
Copy link
Member

Translated on init would be enough, no?

Yes, that would be fine πŸ‘

@artonge
Copy link
Collaborator

artonge commented Jan 22, 2024

Should we also restric the search to the specified folder in other timeline views?

  • "Favories", "On this day", "Shared with you"
  • "Photos", I guess yes
  • "Videos", it do not make sense, does it?

Same question for automated collections:

  • "Places"
  • "Peoples"

@artonge
Copy link
Collaborator

artonge commented Jan 25, 2024

@jancborchardt or @nimishavijay

@nimishavijay
Copy link
Member

nimishavijay commented Feb 5, 2024

As discussed, the folders from which media is shown can be configurable, and the folder to which photos are added is just one. Then it totally makes sense to restrict the timeline views, favourites, etc to only the selected folders :)

It could look like this in the settings :)

  • folders in the root folder do not have the path in the subline, otherwise the 2 parent folders are shown in the subline, so if /Canon/Photography/2024/Portraits is selected, subline is Photography/2024

image

Nice-to-have little details:

  • show a different icon when the root folder is selected
  • don't allow removing the folder if there is only one folder selected
    image

ccing @jancborchardt in case you had something different in mind and also to double-check the wording :)

Edit: changed wording of button ("Choose another folder" to "Add folder")

@jancborchardt
Copy link
Member

jancborchardt commented Feb 6, 2024

@nimishavijay mockup looks great, we just need to make sure that the default for both Media folder and Upload folder is "Photos". :)

And one detail, instead of "Choose another folder" I would say "Add folder" because it’s not a switch-choice like for the upload folder.

@nextcloud nextcloud unlocked this conversation Feb 6, 2024
@nimishavijay nimishavijay moved this from πŸ—οΈ At engineering to πŸ•ΆοΈ Design review in πŸ– Design team Feb 7, 2024
@sorbaugh sorbaugh moved this from πŸ“„ To do (~10 entries) to πŸ—οΈ In progress in πŸ“ Files team Feb 12, 2024
@sorbaugh sorbaugh added 3. to review Waiting for reviews and removed 1. to develop Accepted and waiting to be taken care of labels Feb 12, 2024
@sorbaugh
Copy link

sorbaugh commented Feb 14, 2024

@nimishavijay @jancborchardt I agree with removing the limitiation of having only 1 folder, and the nice-to-haves look neat. I'm splitting this into a separate subtask to get the current "finished" PR merged and make the individual steps and progress more transparent!

EDIT:
See #2343

@github-project-automation github-project-automation bot moved this from πŸ—οΈ In progress to β˜‘οΈ Done in πŸ“ Files team Feb 15, 2024
@github-project-automation github-project-automation bot moved this from πŸ•ΆοΈ Design review to πŸŽ‰ Done in πŸ– Design team Feb 15, 2024
@dermalikmann
Copy link
Author

πŸŽ‰ πŸ₯³
Thx everyone!

@jancborchardt
Copy link
Member

@dermalikmann thanks for the really nice (and popular) suggestion! :) We hope you will enjoy the upcoming release!

@artonge
Copy link
Collaborator

artonge commented Feb 27, 2024

@tobiasKaminsky I guess this needs to be taken into account by mobile clients. The setting is stored as a user config. Not sure whether you can easily access those from the clients ?

@melroy89
Copy link

melroy89 commented May 16, 2024

OK.. interesting breaking change. Since now it gives me "No photos or videos in here" at all media & photos. While 1 user shared me folder with 10k images (basically all our personal/family photos), which I saw before. But not anymore ;(.

So I changed the media folder, to the shared folder we have (called "Photos & videos"). After selecting that folder, I get: " An error occurred ".

[ERROR] photos: Error fetching files 
Object { app: "photos", uid: "melroy", level: 3, error: Error }
photos-main.js:2:38563
    value https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    value https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    VueJS 2
    un https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    n https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    un https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    $emit https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    needContent https://cloud.melroy.org/apps/photos/js/photos-src_mixins_AbortControllerMixin_js-src_mixins_FilesSelectionMixin_js-src_components_File_vue--80ca54.js?v=043159e94cc23a1fb765:2
    un https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    n https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    un https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    $emit https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    visibleSections https://cloud.melroy.org/apps/photos/js/photos-src_mixins_AbortControllerMixin_js-src_mixins_FilesSelectionMixin_js-src_components_File_vue--80ca54.js?v=043159e94cc23a1fb765:2
    un https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    run https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    er https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    Fn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    gn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    (Async: promise callback)
    hn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    Fn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    tr https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    update https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    notify https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    set https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    set https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    resizeObserver https://cloud.melroy.org/apps/photos/js/photos-src_mixins_AbortControllerMixin_js-src_mixins_FilesSelectionMixin_js-src_components_File_vue--80ca54.js?v=043159e94cc23a1fb765:2
    (Async: ResizeObserverCallback)
    mounted https://cloud.melroy.org/apps/photos/js/photos-src_mixins_AbortControllerMixin_js-src_mixins_FilesSelectionMixin_js-src_components_File_vue--80ca54.js?v=043159e94cc23a1fb765:2
    un https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    Gn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    insert https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    k https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    ki https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    _update https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    r https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    get https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    run https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    er https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    Fn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    gn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    (Async: promise callback)
    hn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    Fn https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    tr https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    update https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    notify https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    set https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    init https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2
    init https://cloud.melroy.org/apps/photos/js/photos-main.js?v=d01aad25-1:2

@ttrakker

This comment was marked as spam.

@ttrakker
Copy link

ttrakker commented Jul 8, 2024

@skjnldsv the point of @jancborchardt during our discussion was to have the most easy and transparent way to have the folder setups. I agree include/exclude would be the prefered way (as it is done on the sync for desktop client) but Jan thought choosing a single folder and having a per default on the Photos folder is the easiest way.

Easiest, not best. This degrades the system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. to review Waiting for reviews enhancement New feature or request help wanted Extra attention is needed πŸ€ 2024-Spring
Projects
Archived in project
Archived in project