public FocusChangeDirection GetFocusChangeDirection(Focusable currentFocusable, EventBase e) { bool flag = e == null; if (flag) { throw new ArgumentNullException("e"); } bool flag2 = e.eventTypeId == EventBase <MouseDownEvent> .TypeId(); FocusChangeDirection result; if (flag2) { Focusable focusable = e.target as Focusable; bool flag3 = focusable != null; if (flag3) { result = VisualElementFocusChangeTarget.GetPooled(focusable); return(result); } } bool flag4 = currentFocusable is IMGUIContainer && e.imguiEvent != null; if (flag4) { result = FocusChangeDirection.none; } else { result = VisualElementFocusRing.GetKeyDownFocusChangeDirection(e); } return(result); }