public void ResetControlFocus(IModalFocusHolder context) { //Empty out controlFocus Stack controlFocus.Clear(); //disable the blocking layer _modalBlockingLayer.AdjustModalHeight(1); //institute a new base controlFocus.Push(context); }
public void ReturnFocus() { if (controlFocus.Count < 2) { if (controlFocus.Count == 1) { Debug.LogError("[EventManager:ReturnFocus] trying to return focus from the base scene context!?"); } else { Debug.LogError("[EventManager:ReturnFocus] controlFocus not even initialized properly?!"); } return; } IModalFocusHolder lastFocus = controlFocus.Pop(); if (lastFocus is ModalPopup) { (lastFocus as ModalPopup).Hide(); } _modalBlockingLayer.AdjustModalHeight(controlFocus.Count); }
public bool HasControlFocus(IModalFocusHolder focus) { return(controlFocus.Peek() == focus); }