I set the child to visible if we enter either the child or the parent and I set the child to invisble if we leave the parent.
But the in practice when the mouse enter the child we also leave the parent and the child becomes invisible or there is a jitter between visible and invisible states as the mouse is moved…
You could do something like check the co-ordinates of the mouseExit in your parent to see if it actually contains them. Then you only need to set the child to invisible if the mouseExit happens outside the bounds of the child.