Bug 294462 [FieldAssist] ControlDecoration#showHoverText doesn't check if the widget is visible
If the HOVER-Text is set on decoration of a widget which is invisible the Hover-Shell is still poping up because it doesn't check if the control is invisible make the Hover appearing somewhere on the screen.
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/ControlDecoration.java
mouseTrackListener = new MouseTrackListener() {
			public void mouseExit(MouseEvent event) {
				
				Control target = (Control) event.widget;
				if (target == moveListeningTarget) {
					printRemoveListener(target, "MOUSEMOVE"); 
					target.removeMouseMoveListener(mouseMoveListener);
					moveListeningTarget = null;
				}
				hideHover();
			}
			public void mouseHover(MouseEvent event) {
				if (showHover) {
					decorationRectangle = getDecorationRectangle((Control) event.widget);
					if (decorationRectangle.contains(event.x, event.y)) {
						showHoverText(getDescriptionText());
						Control target = (Control) event.widget;
						if (moveListeningTarget == null) {
							printAddListener(target, "MOUSEMOVE"); 
							target.addMouseMoveListener(mouseMoveListener);
							moveListeningTarget = target;
						} else if (target != moveListeningTarget) {
							printRemoveListener(moveListeningTarget,
									"MOUSEMOVE"); 
							moveListeningTarget
									.removeMouseMoveListener(mouseMoveListener);
							printAddListener(target, "MOUSEMOVE"); 
							target.addMouseMoveListener(mouseMoveListener);
							moveListeningTarget = target;