}
});
// fake mouse down event on widget
MouseDownEvent mouseEvent = new MouseDownEvent() {
@Override
public int getClientX() {
return absoluteLeft;
}
@Override
public int getClientY() {
return absoluteTop;
}
@Override
public int getNativeButton() {
return NativeEvent.BUTTON_LEFT;
}
@Override
public int getRelativeX(com.google.gwt.dom.client.Element target) {
return getClientX() - target.getAbsoluteLeft()
+ target.getScrollLeft()
+ target.getOwnerDocument().getScrollLeft();
}
@Override
public int getRelativeY(com.google.gwt.dom.client.Element target) {
return getClientY() - target.getAbsoluteTop()
+ target.getScrollTop()
+ target.getOwnerDocument().getScrollTop();
}
@Override
public Object getSource() {
return hiddenAvatar;
}
@Override
public boolean isControlKeyDown() {
return false;
}
@Override
public boolean isMetaKeyDown() {
return false;
}
};
mouseEvent.setRelativeElement(element);
hiddenAvatar.fireEvent(mouseEvent);
}