/// <inheritdoc /> public IUIManager PopPanel(ScreenPanelTypes type) { if (!mPanelTypeToObjectMap.ContainsKey(type)) { return(this); } IScreenPanel panel = mPanelTypeToObjectMap[type]; GameObject go = panel.gameObject; panel.OnDisablePanel(); go.SetActive(false); mActivePanels.Remove(panel); if (!mActivePanels.Any(x => x.disablesInput)) // no active panels that disable input { ServiceLocator.Get <IInput>() .EnableInputLevel(InputLevel.Gameplay) .EnableInputLevel(InputLevel.HideCursor); } return(this); }