Skip to content

Issue 75: Autostart of Everything when it's not launched#676

Open
codingonHP wants to merge 1 commit intosrwi:developfrom
codingonHP:feature/auto-start-everything-when-not-running
Open

Issue 75: Autostart of Everything when it's not launched#676
codingonHP wants to merge 1 commit intosrwi:developfrom
codingonHP:feature/auto-start-everything-when-not-running

Conversation

@codingonHP
Copy link
Copy Markdown

Ref: #75

Changes:

  • Add a new class EverythingProcessHelper to manage Everything process related actions like process status and start.
  • Hook EnsureRunning() whenever SearchWindow is Activated
  • Add progress bar to indicate background progress of Everything startup

@codingonHP
Copy link
Copy Markdown
Author

codingonHP commented Oct 2, 2025

Hello @srwi
Please review when you can
Thanks

@srwi srwi self-requested a review October 2, 2025 13:29
Copy link
Copy Markdown
Owner

@srwi srwi left a comment

Choose a reason for hiding this comment

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

Hi @codingonHP, thanks for the contribution and for taking on the oldest unresolved issue. 🙂

I tried your changes and while they do work, there is a small issue: When opening the search window while Everything is not already running in the background, the search UI freezes while Everything is starting up. Because of that I was not able to see the progress bar at all. This may not be as noticable for users who use Everything often (short startup times), but for those who rarely use it, the program will usually start by reindexing the database, which causes the freeze to last much longer.

Instead of adding a new progress bar to the UI, I think you can reuse the existing busy indicator in SearchResultsView. To do that, you can integrate your code into the Initialize method in SearchResultsProvider and set the IsBusy flag to true while Everything is starting up.

public static class EverythingProcessHelper
{
private const string Dll64 = "Everything64.dll";
private const string Dll32 = "Everything32.dll";
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

EverythingToolbar doesn't support 32 bit machines, so you can just remove code related to that.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Removed code for 32 bit. Thanks

return;
}

string[] possiblePaths =
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

The Everything path should already be stored in settings:

[Option(DefaultValue = "C:\\Program Files\\Everything\\Everything.exe")]

I like your use of fallback values but you may want to prioritize the stored location.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Prioritized user settings and then fallbacks will follow. Thanks

Comment thread EverythingToolbar/SearchWindow.xaml Outdated
@codingonHP
Copy link
Copy Markdown
Author

Thanks @srwi for the review. I was off for couple of days. I will check the PR comments

srwi#75
If Everything is not running then run it in background first.
@codingonHP
Copy link
Copy Markdown
Author

Hi @codingonHP, thanks for the contribution and for taking on the oldest unresolved issue. 🙂

I tried your changes and while they do work, there is a small issue: When opening the search window while Everything is not already running in the background, the search UI freezes while Everything is starting up. Because of that I was not able to see the progress bar at all. This may not be as noticable for users who use Everything often (short startup times), but for those who rarely use it, the program will usually start by reindexing the database, which causes the freeze to last much longer.

Instead of adding a new progress bar to the UI, I think you can reuse the existing busy indicator in SearchResultsView. To do that, you can integrate your code into the Initialize method in SearchResultsProvider and set the IsBusy flag to true while Everything is starting up.

I have tried adding IsBusy in SearchResultProvider but I do not see any progress indicator. Can you please here. I would like to keep the start of the process in OnActivated because Everything can be stopped anytime by the user. This gives a chance to EvertythingToolbar start the Everything process again.

@pedoc
Copy link
Copy Markdown

pedoc commented Apr 24, 2026

Hi,this is a nice feature, what's stopping the merge?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants