1using System.Collections;
8 [RequireComponent(typeof(RectTransform))]
9 [AddComponentMenu(
"UI/Extensions/Tooltip/Tooltip Trigger")]
10 public class TooltipTrigger : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, ISelectHandler, IDeselectHandler
17 mousePositionAndFollow,
21 [Tooltip(
"Defines where the tooltip will be placed and how that placement will occur. Transform position will always be used if this element wasn't selected via mouse")]
27 private bool isChildOfOverlayCanvas =
false;
29 private bool hovered =
false;
36 Canvas ourCanvas = GetComponentInParent<Canvas>();
37 if (ourCanvas && ourCanvas.renderMode == RenderMode.ScreenSpaceOverlay) {
38 isChildOfOverlayCanvas =
true;
58 StartHover(Input.mousePosition +
offset,
true);
61 StartHover(Input.mousePosition +
offset,
true);
63 StartCoroutine(HoveredMouseFollowingLoop());
68 transform.position) +
offset,
true);
73 IEnumerator HoveredMouseFollowingLoop() {
75 StartHover(Input.mousePosition +
offset);
84 transform.position) +
offset,
true);
97 void StartHover(Vector3 position,
bool shouldCanvasUpdate =
false)
105 ToolTip.Instance.HideTooltip();
Credit Erdener Gonenc - @PixelEnvision.