mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-06 02:52:22 +00:00
Merge branch 'bug4480'
This commit is contained in:
commit
b74d7994ea
1 file changed
+24
-1
+24
-1
@@ -2,12 +2,16 @@ package com.sap.sailing.gwt.ui.client.shared.racemap;
|
||||
|
||||
import com.google.gwt.event.shared.HandlerRegistration;
|
||||
import com.google.gwt.maps.client.events.click.ClickMapHandler;
|
||||
import com.google.gwt.maps.client.events.mousedown.MouseDownMapEvent;
|
||||
import com.google.gwt.maps.client.events.mousedown.MouseDownMapHandler;
|
||||
import com.google.gwt.maps.client.events.mousemove.MouseMoveMapEvent;
|
||||
import com.google.gwt.maps.client.events.mousemove.MouseMoveMapHandler;
|
||||
import com.google.gwt.maps.client.events.mouseout.MouseOutMapEvent;
|
||||
import com.google.gwt.maps.client.events.mouseout.MouseOutMapHandler;
|
||||
import com.google.gwt.maps.client.events.mouseover.MouseOverMapEvent;
|
||||
import com.google.gwt.maps.client.events.mouseover.MouseOverMapHandler;
|
||||
import com.google.gwt.maps.client.events.mouseup.MouseUpMapEvent;
|
||||
import com.google.gwt.maps.client.events.mouseup.MouseUpMapHandler;
|
||||
import com.google.gwt.maps.client.overlays.Polyline;
|
||||
import com.google.gwt.maps.client.overlays.PolylineOptions;
|
||||
|
||||
@@ -17,6 +21,7 @@ public class Hoverline {
|
||||
|
||||
private final Polyline hoverline;
|
||||
private final PolylineOptions options;
|
||||
protected boolean doNotProcessMouseMoveOut;
|
||||
|
||||
public Hoverline(final Polyline polyline, PolylineOptions polylineOptions, final RaceMap map) {
|
||||
this.options = PolylineOptions.newInstance();
|
||||
@@ -41,10 +46,28 @@ public class Hoverline {
|
||||
hoverline.setOptions(options);
|
||||
}
|
||||
});
|
||||
|
||||
//Workaround for bug4480 (chrome does fire mouseOutMove on mouseclick)
|
||||
hoverline.addMouseDownHandler(new MouseDownMapHandler() {
|
||||
@Override
|
||||
public void onEvent(MouseDownMapEvent event) {
|
||||
doNotProcessMouseMoveOut = true;
|
||||
}
|
||||
});
|
||||
|
||||
hoverline.addMouseUpHandler(new MouseUpMapHandler() {
|
||||
@Override
|
||||
public void onEvent(MouseUpMapEvent event) {
|
||||
doNotProcessMouseMoveOut = false;
|
||||
}
|
||||
});
|
||||
|
||||
hoverline.addMouseOutMoveHandler(new MouseOutMapHandler() {
|
||||
@Override
|
||||
public void onEvent(MouseOutMapEvent event) {
|
||||
hoverline.setVisible(false);
|
||||
if (!doNotProcessMouseMoveOut) {
|
||||
hoverline.setVisible(false);
|
||||
}
|
||||
}
|
||||
});
|
||||
map.getMap().addMouseMoveHandler(new MouseMoveMapHandler() {
|
||||
|
||||
Reference in new issue
Block a user