remove chart as listener on leaderboard's selection provider when the chart is closed;

otherwise it keeps popping up and reloading after subsequent leaderboard selection changes
This commit is contained in:
Axel Uhl committed 2012-01-17 22:12:50 +01:00
1 parent 691e4c87ef
commit b2b21189c7
1 file changed
+3 -6
@@ -23,7 +23,7 @@ import com.sap.sailing.server.api.RaceIdentifier;
public class CompareCompetitorsChartDialog extends DialogBox {
private Anchor closeAnchor;
public CompareCompetitorsChartDialog(SailingServiceAsync sailingService, CompetitorSelectionProvider competitorSelectionProvider,
public CompareCompetitorsChartDialog(SailingServiceAsync sailingService, final CompetitorSelectionProvider competitorSelectionProvider,
RaceIdentifier[] races, StringMessages stringConstants, ErrorReporter errorReporter) {
super(false);
final MultiChartPanel ccp = new MultiChartPanel(sailingService, competitorSelectionProvider, races,
@@ -62,9 +62,10 @@ public class CompareCompetitorsChartDialog extends DialogBox {
}
}
});
addCloseHandler(new ClickHandler() {
closeAnchor.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
competitorSelectionProvider.removeCompetitorSelectionChangeListener(ccp);
hide();
}
});
@@ -75,8 +76,4 @@ public class CompareCompetitorsChartDialog extends DialogBox {
}
});
}
public void addCloseHandler(ClickHandler handler) {
closeAnchor.addClickHandler(handler);
}
}