| 3796 | |
| 3797 | /// {@inheritDoc} |
| 3798 | @Override |
| 3799 | public void pointerHover(int[] x, int[] y) { |
| 3800 | boolean isScrollWheeling = Display.impl.isScrollWheeling(); |
| 3801 | if (dragged != null) { |
| 3802 | LeadUtil.pointerHover(dragged, x, y); |
| 3803 | return; |
| 3804 | } |
| 3805 | |
| 3806 | Container actual = getActualPane(formLayeredPane, x[0], y[0]); |
| 3807 | if (actual != null) { |
| 3808 | Component cmp = actual.getComponentAt(x[0], y[0]); |
| 3809 | while (cmp != null && cmp.isIgnorePointerEvents()) { |
| 3810 | cmp = cmp.getParent(); |
| 3811 | } |
| 3812 | if (cmp != null) { |
| 3813 | cmp = LeadUtil.leadParentImpl(cmp); |
| 3814 | |
| 3815 | if (!isScrollWheeling && cmp.isFocusable() && cmp.isEnabled() && !Display.getInstance().isDesktop()) { |
| 3816 | setFocused(cmp); |
| 3817 | } |
| 3818 | LeadUtil.pointerHover(cmp, x, y); |
| 3819 | updateInteractiveScrollHover(cmp, x[0], y[0]); |
| 3820 | } |
| 3821 | if (TooltipManager.getInstance() != null) { |
| 3822 | String tip = cmp.getTooltip(); |
| 3823 | if (tip != null && tip.length() > 0) { |
| 3824 | TooltipManager.getInstance().prepareTooltip(tip, cmp); |
| 3825 | } else { |
| 3826 | TooltipManager.getInstance().clearTooltip(); |
| 3827 | } |
| 3828 | } |
| 3829 | } |
| 3830 | } |
| 3831 | |
| 3832 | /// Routes a hover to the nearest scrollable ancestor of the hovered component so an interactive |
| 3833 | /// (desktop) scrollbar can highlight its thumb, and clears the highlight on the previously |