Show correct error messages after canceling (un)installations/upgrades #2602
+64
−15
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.
Problem
If you cancel the installation/uninstall/update process after it's already complete, but before the Cancel button is greyed out you still get the "Error!" message and the Apply changes button is still active.

(Ignore the location of the Retry button atm, this seems to be another bug)
This is due to the entire GUI PostInstallMods() function only checking for e.Result.Key wich is set to false if the installation is canceled, despite the real result possibly being successful. This leads to those false error messages and GUI behavior.
Solution
e.Result.Key is now set to the value of processSuccesful (if you know a better name, let me know!). PostInstallMods now also distinguishes the "installCanceled but positive processSuccesful case.
The corresponding messages and GUI actions are now handled by a new FailWaitDialog() in MainWait.cs.
Furthermore the GUI ModList gets updated and UpdateChangesDialog is called. This solves the Apply changes button falsely being active as well as "installed" checkboxes having the false state.
Also the now empty changes tab is hidden (as after normal, not canceled installation).


Redo of #2418