feat(ui): add thumbnail caching (#694)

* feat(ui): add thumbnail caching

* feat: enforce total size limit for thumb cache

* fix: add file modification date to thumb hash

This change allows for modified files to have their cached thumbnail regenerated.

* feat: add menu option to clear thumbnail cache

* fix: check if `cached_path` is None further on

* refactor: move configurable cache vars to class level

* docs: complete roadmap items

* feat: use cache size limit from config file

TODO: Store this on a per-library basis and allow it to be configurable inside the program.

* fix: move `last_cache_folder` to class level

* chore: add/tweak type hints

* refactor: use make `CacheManager` a singleton
This commit is contained in:
Travis Abendshien
2025-01-27 11:39:10 -08:00
committed by GitHub
parent 3606edf615
commit 4c337cb1a3
12 changed files with 498 additions and 110 deletions

View File

@@ -145,7 +145,7 @@ Features are broken up into the following priority levels, with nested prioritie
- [x] Timeline scrubber [HIGH]
- [ ] Fullscreen [MEDIUM]
- [ ] Optimizations [HIGH]
- [ ] Thumbnail caching [HIGH] [#104](https://github.com/TagStudioDev/TagStudio/issues/104)
- [x] Thumbnail caching [HIGH]
- [ ] File property indexes [HIGH]
## Version Milestones
@@ -190,7 +190,7 @@ These version milestones are rough estimations for when the previous core featur
- [ ] Library Settings [HIGH]
- [ ] Stored in `.TagStudio` folder [HIGH]
- [ ] Optimizations [HIGH]
- [ ] Thumbnail caching [HIGH]
- [x] Thumbnail caching [HIGH]
### 9.6 (Alpha)