Skip to content

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

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

elliotttate
Copy link

  • 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
2025-07-28.10-22-09.mp4

- 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]>
@Josh65-2201

This comment was marked as resolved.

elliotttate and others added 3 commits July 28, 2025 11:04
- 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]>
Copy link
Member

@Josh65-2201 Josh65-2201 left a 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)

@Josh65-2201
Copy link
Member

Josh65-2201 commented Jul 28, 2025

There a stack overflow crash when in some folders and calculate folder size is enabled using Everything 1.4
image

@Josh65-2201 Josh65-2201 added the changes requested Changes are needed for this pull request label Jul 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changes requested Changes are needed for this pull request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants