Skip to content

feat(recent-files): allow configuring image grouping#58908

Merged
artonge merged 6 commits intomasterfrom
feat/1701/recent-files-img-grouping
Apr 16, 2026
Merged

feat(recent-files): allow configuring image grouping#58908
artonge merged 6 commits intomasterfrom
feat/1701/recent-files-img-grouping

Conversation

@cristianscheid
Copy link
Copy Markdown
Contributor

@cristianscheid cristianscheid commented Mar 13, 2026

  • Resolves: #

Summary

This PR focuses on the backend part of implementation.

  • Adds new configurations for Files app:
    • group_recent_files
    • recent_files_group_mime_types
    • recent_files_group_timespan_minutes

Can be set using occ command (examples below):

occ config:app:set files group_recent_files --value=true
occ config:app:set files recent_files_group_mime_types --value='["image/avif","image/gif","image/heic","image/heif","image/jpeg","image/jpg","image/jxl","image/png","image/tiff","image/webp"]'
occ config:app:set files recent_files_group_timespan_minutes --value=5

Checklist

AI (if applicable)

  • The content of this PR was partly or fully generated using AI

@cristianscheid
Copy link
Copy Markdown
Contributor Author

/compile

@cristianscheid cristianscheid force-pushed the feat/1701/recent-files-img-grouping branch from a9b23e1 to f08a1c9 Compare March 19, 2026 10:22
@nextcloud-command nextcloud-command force-pushed the feat/1701/recent-files-img-grouping branch from f08a1c9 to 11b45bf Compare March 19, 2026 11:25
@cristianscheid cristianscheid marked this pull request as ready for review March 19, 2026 11:40
@cristianscheid cristianscheid requested review from a team and skjnldsv as code owners March 19, 2026 11:40
@cristianscheid cristianscheid requested review from ArtificialOwl, CarlSchwan, leftybournes, nfebe and szaimen and removed request for a team March 19, 2026 11:40
@cristianscheid cristianscheid added 3. to review Waiting for reviews and removed 2. developing Work in progress labels Mar 19, 2026
@cristianscheid cristianscheid force-pushed the feat/1701/recent-files-img-grouping branch 2 times, most recently from 1da5753 to e872416 Compare March 20, 2026 10:27
nfebe
nfebe previously approved these changes Mar 23, 2026
Copy link
Copy Markdown
Contributor

@nfebe nfebe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yolod

@susnux
Copy link
Copy Markdown
Contributor

susnux commented Mar 23, 2026

Has this been approved by @nextcloud/designers ?

Comment thread apps/files/src/components/FileEntryImageGroup.vue Outdated
Copy link
Copy Markdown
Contributor

@susnux susnux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

blocking for two reasons:

  1. This is completely changing the UI/UX and should go through feature planning / @nextcloud/designers review
  2. Have you properly checked virtual scrolling? What happens if you extend them and then scroll down over the scroll order? Because now one item is no longer a fixed height and that can likely break all of the virtual scrolling

Comment thread apps/files/src/components/FilesListVirtual.vue Outdated
@cristianscheid cristianscheid force-pushed the feat/1701/recent-files-img-grouping branch from a15e53f to fed387c Compare April 2, 2026 12:43
…ce level

Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>
@cristianscheid cristianscheid force-pushed the feat/1701/recent-files-img-grouping branch from fed387c to 8f2cfe5 Compare April 2, 2026 12:46
@cristianscheid
Copy link
Copy Markdown
Contributor Author

Quick update on the state of this PR:

  • after reviews raised concerns about the proposed frontend implementation not being mature enough, potentially breaking things, and adding unnecessary complexity, the PR was updated to focus only on the backend portion.
  • following feedback from reviews and design team, the settings scope was changed from user level to instance level, configurable only via occ command, as they should not be exposed to end users.

cc @susnux @skjnldsv

@cristianscheid
Copy link
Copy Markdown
Contributor Author

@susnux @skjnldsv after some internal discussion we narrowed this PR to focus only on the backend (see previous comment). Would you mind taking another look when you get a chance?

@cristianscheid cristianscheid dismissed skjnldsv’s stale review April 7, 2026 16:31

Dismissing this review since the PR now focuses on the backend only and the previous review was about the frontend implementation. Anyway, thanks for taking the time to review!

@cristianscheid
Copy link
Copy Markdown
Contributor Author

/backport to stable33

@cristianscheid
Copy link
Copy Markdown
Contributor Author

/backport to stable32

@cristianscheid
Copy link
Copy Markdown
Contributor Author

/backport to stable31

@cristianscheid
Copy link
Copy Markdown
Contributor Author

/backport to stable30

@cristianscheid
Copy link
Copy Markdown
Contributor Author

/backport to stable29

@cristianscheid
Copy link
Copy Markdown
Contributor Author

Holding off on merging for now, we still have some internal discussion going on regarding this PR.

@artonge artonge merged commit 8598f8b into master Apr 16, 2026
242 of 258 checks passed
@artonge artonge deleted the feat/1701/recent-files-img-grouping branch April 16, 2026 10:00
@backportbot
Copy link
Copy Markdown

backportbot Bot commented Apr 16, 2026

The backport to stable29 failed. Please do this backport manually.

# Switch to the target branch and update it
git checkout stable29
git pull origin stable29

# Create the new backport branch
git checkout -b backport/58908/stable29

# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts, resolve them
git cherry-pick a9676604 d63f3e97 c286b826 d363057a ba267686 8f2cfe5f

# Push the cherry pick commit to the remote repository and open a pull request
git push origin backport/58908/stable29

Error: Failed to check for changes with origin/stable29: No changes found in backport branch


Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports.

@backportbot
Copy link
Copy Markdown

backportbot Bot commented Apr 16, 2026

The backport to stable30 failed. Please do this backport manually.

# Switch to the target branch and update it
git checkout stable30
git pull origin stable30

# Create the new backport branch
git checkout -b backport/58908/stable30

# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts, resolve them
git cherry-pick a9676604 d63f3e97 c286b826 d363057a ba267686 8f2cfe5f

# Push the cherry pick commit to the remote repository and open a pull request
git push origin backport/58908/stable30

Error: Failed to check for changes with origin/stable30: No changes found in backport branch


Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports.

@backportbot
Copy link
Copy Markdown

backportbot Bot commented Apr 16, 2026

The backport to stable31 failed. Please do this backport manually.

# Switch to the target branch and update it
git checkout stable31
git pull origin stable31

# Create the new backport branch
git checkout -b backport/58908/stable31

# Cherry pick the change from the commit sha1 of the change against the default branch
# This might cause conflicts, resolve them
git cherry-pick a9676604 d63f3e97 c286b826 d363057a ba267686 8f2cfe5f

# Push the cherry pick commit to the remote repository and open a pull request
git push origin backport/58908/stable31

Error: Failed to check for changes with origin/stable31: No changes found in backport branch


Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports.

@artonge
Copy link
Copy Markdown
Collaborator

artonge commented Apr 16, 2026

@cristianscheid after discussion with @sorbaugh, the API is fine, so I merged this PR. The backports will be tricky as the lexicon was introduced in 31 only, so they will need some adjustments.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants