assert !highlightingManagers.containsKey(viewItem.getViewItemID());
final HighlightingManager highlightingManager = new HighlightingManager(
hoverModel, viewItem.getResources());
Popup popup = getPopupManager(viewItem).getPopup();
popup.addDomHandler(new MouseOverHandler() {
@Override
public void onMouseOver(MouseOverEvent e) {
highlightingManager.setHighlighting(true);
}
}, MouseOverEvent.getType());
popup.addDomHandler(new MouseOutHandler() {
@Override
public void onMouseOut(MouseOutEvent event) {
highlightingManager.setHighlighting(false);
}
}, MouseOutEvent.getType());
popup.addHandler(new PopupOpacityChangedEventHandler() {
@Override
public void onOpacityChangeStarted(PopupOpacityChangedEvent event) {
if (event.getOpacity() == Opacity.TRANSPARENT) {
highlightingManager.setHighlighting(false);
}