private void CheckObjectOvered(ObjectWasHoveredEvent info) { var currentEventSystem = EventSystem.current; if (info.ObjectHovered == transform && interactable && !_isSelected) { _isSelected = true; OnSelect(new BaseEventData(currentEventSystem)); } else if (info.ObjectHovered != transform && _isSelected) { _isSelected = false; OnDeselect(new BaseEventData(currentEventSystem)); } }
/// <summary> /// Event called when the user is looking or pointing at the Slider /// </summary> /// <param name="hoverEvent">The event raised when an object is hovered</param> private void CheckSliderHovered(ObjectWasHoveredEvent hoverEvent) { if (IsInteractable() && !FillWithClick) { // if the object hovered correspond to this transform and the coroutine to fill the bar didn't started yet if (hoverEvent.ObjectHovered == transform && _fillBarRoutine == null) { HandleHandInteracting(hoverEvent.RaycastOrigin); } // If the user was hovering the bar but stopped else if (_fillBarRoutine != null && hoverEvent.RaycastOrigin == _handFilling && hoverEvent.ObjectHovered != transform) { HandleUp(); } } }