Commit Graph

8 Commits

Author SHA1 Message Date
Collecting
e6872aadb5 fix: Optimize JSON
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-12-21 01:10:15 +00:00
Collecting
9650077ade fs(ui): Include Progress Bar
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-12-19 20:51:55 +00:00
Collecting
0fd1e81f5f fix: NTFS Directory Scanning w/ Linux
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-12-19 18:48:17 +00:00
Zephyron
57e6141d4a Fix QJsonValue conversion ambiguity in game_list_worker.cpp
Explicitly cast modification_time to qint64 to resolve Linux build
error where std::int64_t conversion to QJsonValue is ambiguous.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-11 19:11:15 +10:00
Zephyron
9a64d5d072 perf: Add game metadata caching to speed up library loading
Implement a comprehensive caching system for game title metadata to
significantly improve game list loading performance for large libraries.

- Add CachedGameMetadata structure to store program ID, file type,
  size, title, icon, and modification time
- Implement LoadGameMetadataCache() and SaveGameMetadataCache() to
  persist cache to disk as JSON
- Integrate cache into ScanFileSystem() to skip expensive ReadIcon()
  and ReadTitle() operations when cached data is available
- Add automatic cache invalidation based on file modification time
- Cache respects existing UISettings::values.cache_game_list setting

The cache is stored in the game_list directory and automatically
invalidates entries when files are modified, ensuring data accuracy
while providing substantial performance improvements for subsequent
library scans.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-10 18:14:33 +10:00
collecting
18c37c0ebf Edit game_list_worker.cpp 2025-10-04 04:16:45 +00:00
Zephyron
5e16e20427 chore: update project branding to Citron
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-06 16:08:59 +10:00
Zephyron
bfb82e577c chore: update project branding to citron
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-06 16:06:48 +10:00