31 lines
891 B
C#
31 lines
891 B
C#
using UnityEngine;
|
|
using UnityEngine.EventSystems;
|
|
|
|
namespace DDD
|
|
{
|
|
public abstract class BasePopupUi : BaseUi
|
|
{
|
|
public abstract InputActionMaps InputActionMaps { get; }
|
|
protected abstract GameObject GetInitialSelected();
|
|
|
|
protected override void Update()
|
|
{
|
|
base.Update();
|
|
|
|
var currentSelectedGameObject = EventSystem.current.currentSelectedGameObject;
|
|
if (!currentSelectedGameObject || currentSelectedGameObject.activeInHierarchy == false)
|
|
{
|
|
if (!GetInitialSelected()) return;
|
|
|
|
EventSystem.current.SetSelectedGameObject(GetInitialSelected());
|
|
}
|
|
}
|
|
|
|
public override void Open()
|
|
{
|
|
base.Open();
|
|
|
|
EventSystem.current.SetSelectedGameObject(GetInitialSelected());
|
|
}
|
|
}
|
|
} |