Code/Internal/PointerEventsPolicy.cs
using Sandbox.UI;
namespace Goo.Internal;
// Pure resolution of effective PointerEvents: an explicit value wins; otherwise intrinsically-interactive panels (WebPanel, TextEntry) or any handler gate to All, else unset.
internal static class PointerEventsPolicy
{
public static PointerEvents? Resolve( PointerEvents? declared, bool isWebPanel, bool hasHandlers, bool isTextEntry = false )
=> declared ?? ( ( isWebPanel || isTextEntry || hasHandlers ) ? PointerEvents.All : (PointerEvents?)null );
}