public virtual void OnItemSelect(GameObject go) { UIScene sceneFromState = PersistenSingleton <UIManager> .Instance.GetSceneFromState(PersistenSingleton <UIManager> .Instance.State); sceneFromState?.OnItemSelect(go); if (PersistenSingleton <UIManager> .Instance.Dialogs != null) { PersistenSingleton <UIManager> .Instance.Dialogs.OnItemSelect(go); } if (!go.GetComponent <ScrollItemKeyNavigation>()) { return; } ScrollItemKeyNavigation component = go.GetComponent <ScrollItemKeyNavigation>(); if (!component || !component.ListPopulator) { return; } component.ListPopulator.itemHasChanged(go); }