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

Performance: Optimized the recent files widget #10867

Merged
merged 5 commits into from
Dec 30, 2022

Conversation

jiejasonliu
Copy link
Contributor

Resolved / Related Issues

  • in general, this PR adds performance improvements through figuring out the type of change that occurs
    • more than often, changes only occur to one file (add/updated/removed); if it deviates, we can do a simple O(N) refresh
  • also fixes a refresh bug from Fixes & improvements for Recent Items #10760
    • it seems that the prior solution falls short when a recent item is updated or when multiple changes occur, sometimes the OS batches changes to the recent items

Validation
How did you test these changes?

  • Built and ran the app
  • Tested the changes for accessibility

@jiejasonliu
Copy link
Contributor Author

pinging @gave92 since you've been working around this area

src/Files.App/Filesystem/RecentItems.cs Outdated Show resolved Hide resolved
@gave92 gave92 added ready to merge Pull requests that are approved and ready to merge and removed needs - code review labels Dec 30, 2022
@yaira2 yaira2 changed the title Performance: Optimize recent files widget refreshing Performance: Optimized the recent files widget Dec 30, 2022
Copy link
Member

@yaira2 yaira2 left a comment

Choose a reason for hiding this comment

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

LGTM

@yaira2 yaira2 merged commit 4fd6774 into files-community:main Dec 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to merge Pull requests that are approved and ready to merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants