-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Feature: Add Everything search & folder size calculation #17336
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
base: main
Are you sure you want to change the base?
Feature: Add Everything search & folder size calculation #17336
Conversation
- Add Everything search engine integration as an alternative to Windows Search - Implement fast folder size calculation using Everything's indexing - Add settings UI to switch between Windows Search and Everything - Show warning if Everything is not installed with download link - Automatically use Everything for folder sizes when selected as search engine - Add safeguards for large directories to prevent memory issues - Support architecture-aware DLL loading (Everything32.dll/Everything64.dll) - Implement graceful fallback to Windows Search when Everything is unavailable - Add periodic availability checks (every 30 seconds) to detect Everything status - Remove separate toggle for Everything folder sizes - automatic when Everything is enabled 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
src/Files.App/Utils/Storage/Search/EverythingSearchEngineService.cs
Outdated
Show resolved
Hide resolved
This comment was marked as resolved.
This comment was marked as resolved.
- Implement EverythingSdk3Service for Everything 1.5 integration - Add direct folder size query using Everything3_GetFolderSizeFromFilenameW() - Automatic detection and fallback: SDK3 -> SDK2 -> Windows Search - Update EverythingSearchService to try SDK3 first - Update EverythingSizeProvider to use SDK3 when available - Add proper error handling for missing SDK3 DLLs - Add documentation about SDK3 requirements - SDK3 provides significant performance improvements for folder size calculations Note: SDK3 DLLs must be obtained separately from https://github.com/voidtools/everything_sdk3 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Fixes CS0117 compilation error - Toast notification method was not implemented in AppToastNotificationHelper 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Run all folder size calculations on background threads - Add semaphore to limit concurrent calculations to 3 - Add timeout (2s) for SDK3 folder size queries - Fire and forget size calculations during enumeration - Return cached sizes immediately without blocking - Properly dispose resources (semaphore and SDK3 service) This prevents the UI from freezing when navigating folders with Everything folder size calculation enabled. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed the log gets spammed and seems unnecessary
2025-07-28 20:05:53.4383|Information|[Everything SDK3] SDK3 DLL not found - Everything 1.5 not installed
2025-07-28 20:05:53.4520|Information|[EverythingSizeProvider SDK2] Calculated 0 bytes for G:\DRM removed (0 files)
2025-07-28 20:05:54.0583|Information|[Everything SDK3] SDK3 DLL not found - Everything 1.5 not installed
2025-07-28 20:05:54.0761|Information|[EverythingSizeProvider SDK2] Calculated 0 bytes for G:\Program Files (0 files)
2025-07-28 20:05:54.0871|Information|[Everything SDK3] SDK3 DLL not found - Everything 1.5 not installed
2025-07-28 20:05:54.1074|Information|[EverythingSizeProvider SDK2] Calculated 0 bytes for G:\Path of Titans (0 files)
2025-07-28 20:05:54.1578|Information|[Everything SDK3] SDK3 DLL not found - Everything 1.5 not installed
2025-07-28 20:05:54.1756|Information|[EverythingSizeProvider SDK2] Calculated 0 bytes for G:\Steam (0 files)
2025-07-28 20:05:54.3140|Information|[Everything SDK3] SDK3 DLL not found - Everything 1.5 not installed
2025-07-28 20:05:54.3279|Information|[EverythingSizeProvider SDK2] Calculated 0 bytes for G:\Unity Editors (0 files)
2025-07-28 20:05:55.3815|Information|[Everything SDK3] SDK3 DLL not found - Everything 1.5 not installed
2025-07-28 20:05:55.3968|Information|[EverythingSizeProvider SDK2] Calculated 0 bytes for G:\WindowsApps (0 files)
@elliotttate this doesn't seem to work on ARM64. |
97999e5
to
806f922
Compare
As far as I understand, Alpha still does not support ARM64. But in theory, you can do 1.4.1 versions until 1.5A is available in ARM form. |
Closes #5845
2025-07-28.10-22-09.mp4