[Dev] Fix shell win+r too slow to appear/does not appear when triggered #1606
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Shell plugin delegate of win+r is too slow to be a valid hook when triggered (we should largely adjust that part of code later), this pr add a Task.Run to run the slow part.
Also the Show method is not safe when triggered by threadpool, so the temporary fix is to wrap a Dispatcher.Invoke around it.
Also potentially fix sound effect sometimes disappear due to threadpool thread execute show method.
Test
To reproduce an exception for the sound effect
IPublicAPI.ShowMainWindow()
Close #1584