private static ProgressUi ShowBlockingProgressUiFor(ViewStack self,
                                                            string blockingProgressViewPrefabName, ProgressManager prManager)
        {
            GameObject prGo = self.ShowView(blockingProgressViewPrefabName);
            ProgressUi prUi = prGo.GetComponentInChildren <ProgressUi>();

            prUi.onProgressUiComplete += () => { prGo.GetViewStack().SwitchBackToLastView(prGo); };
            prUi.progressManager       = prManager;
            return(prUi);
        }
 public static GameObject SwitchToView(this ViewStack target, GameObject newView, int siblingIndex = -1)
 {
     return(target.ShowView(newView, target.GetLatestView(), siblingIndex));
 }
 public static GameObject SwitchToView(this ViewStack target, string prefabName, int siblingIndex = -1)
 {
     return(target.ShowView(prefabName, target.GetLatestView(), siblingIndex));
 }