diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/EditMarkPositionPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/EditMarkPositionPanel.java index f6fc1d8bac9..2150b14a4d7 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/EditMarkPositionPanel.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/charts/EditMarkPositionPanel.java @@ -739,10 +739,7 @@ public class EditMarkPositionPanel extends AbstractRaceChart i } raceMap.unregisterAllCourseMarkInfoWindowClickHandlers(); } else { - if (currentFixPositionChooser != null) { - currentFixPositionChooser.cancel(); - currentFixPositionChooser = null; - } + cancelFixPositionChooserAndNotification(); marksPanel.deselectMark(); selectedMark = null; if (sideBySideComponentViewer != null) { @@ -758,6 +755,17 @@ public class EditMarkPositionPanel extends AbstractRaceChart i super.setVisible(visible); } + private void cancelFixPositionChooserAndNotification() { + if (currentFixPositionChooser != null) { + currentFixPositionChooser.cancel(); + currentFixPositionChooser = null; + if (notificationTimer.isRunning()) { + notificationTimer.run(); + notificationTimer.cancel(); + } + } + } + private void checkIfTracking(Runnable continuation) { if (nonTrackingWarningWasDisplayed) { continuation.run(); @@ -864,10 +872,7 @@ public class EditMarkPositionPanel extends AbstractRaceChart i private void selectMark(MarkDTO mark) { if (selectedMark != mark) { - if (currentFixPositionChooser != null) { - currentFixPositionChooser.cancel(); - currentFixPositionChooser = null; - } + cancelFixPositionChooserAndNotification(); } selectedMark = mark; if (selectedMark != null) {