fix
This commit is contained in:
parent
57972c6900
commit
4546da4928
@ -269,12 +269,24 @@ namespace UnityEngine.UI
|
||||
if (m_Navigation != null)
|
||||
{
|
||||
var modeProp = m_Navigation.FindPropertyRelative("m_Mode");
|
||||
EditorGUILayout.PropertyField(modeProp, new GUIContent("Navigation"));
|
||||
int value = modeProp.intValue;
|
||||
int explicitMask = (int)UXNavigation.Mode.Explicit;
|
||||
bool onlyExplicit = (value & explicitMask) == explicitMask && (value & ~explicitMask) == 0;
|
||||
|
||||
if (!modeProp.hasMultipleDifferentValues && onlyExplicit)
|
||||
EditorGUI.BeginChangeCheck();
|
||||
EditorGUI.showMixedValue = modeProp.hasMultipleDifferentValues;
|
||||
|
||||
UXNavigation.Mode cur = (UXNavigation.Mode)modeProp.intValue;
|
||||
UXNavigation.Mode next = (UXNavigation.Mode)EditorGUILayout.EnumFlagsField("Navigation", cur);
|
||||
|
||||
EditorGUI.showMixedValue = false;
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
modeProp.intValue = (int)next;
|
||||
}
|
||||
|
||||
int explicitMask = (int)UXNavigation.Mode.Explicit;
|
||||
int value = modeProp.intValue;
|
||||
bool onlyExplicit = !modeProp.hasMultipleDifferentValues && (value & explicitMask) == explicitMask && (value & ~explicitMask) == 0;
|
||||
|
||||
if (onlyExplicit)
|
||||
{
|
||||
EditorGUILayout.PropertyField(m_Navigation.FindPropertyRelative("m_SelectOnUp"));
|
||||
EditorGUILayout.PropertyField(m_Navigation.FindPropertyRelative("m_SelectOnDown"));
|
||||
@ -282,6 +294,7 @@ namespace UnityEngine.UI
|
||||
EditorGUILayout.PropertyField(m_Navigation.FindPropertyRelative("m_SelectOnRight"));
|
||||
}
|
||||
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
}
|
||||
|
||||
|
||||
@ -294,7 +307,6 @@ namespace UnityEngine.UI
|
||||
{
|
||||
(target as UXSelectable).Interactable = interactable;
|
||||
m_Interactable.boolValue = interactable;
|
||||
// keep selection state consistent
|
||||
var selProp = serializedObject.FindProperty("m_SelectionState");
|
||||
if (selProp != null)
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user