CanvasGroupFader should wait for end of frame before starting a fade. This is so that only the last call to fade that frame is honoured.
CanvasGroupFader should wait for end of frame before starting a fade. This is so that only the last call to fade that frame is honoured.

--- a/KerbalEngineer.Unity/CanvasGroupFader.cs
+++ b/KerbalEngineer.Unity/CanvasGroupFader.cs
@@ -88,6 +88,9 @@
         /// </summary>
         private IEnumerator FadeCoroutine(float from, float to, float duration, Action callback)
         {
+            // wait for end of frame so that only the last call to fade that frame is honoured.
+            yield return new WaitForEndOfFrame();
+
             float progress = 0.0f;
 
             while (progress <= 1.0f)