Skip to content

Commit d6ff436

Browse files
authored
fix error reopening clone offer tab after changing tabs (#1930)
1 parent cfc62aa commit d6ff436

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

desktop/src/main/java/haveno/desktop/main/portfolio/PortfolioView.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ public class PortfolioView extends ActivatableView<TabPane, Void> {
6767
private boolean editOpenOfferViewOpen, cloneOpenOfferViewOpen;
6868
private OpenOffer openOffer;
6969
private OpenOffersView openOffersView;
70+
private boolean tabListChangeListenerAdded = false;
7071

7172
@Inject
7273
public PortfolioView(CachingViewLoader viewLoader, Navigation navigation, FailedTradesManager failedTradesManager) {
@@ -168,7 +169,10 @@ protected void activate() {
168169
root.getTabs().add(failedTradesTab);
169170

170171
root.getSelectionModel().selectedItemProperty().addListener(tabChangeListener);
171-
root.getTabs().addListener(tabListChangeListener);
172+
if (!tabListChangeListenerAdded) {
173+
root.getTabs().addListener(tabListChangeListener);
174+
tabListChangeListenerAdded = true; // add listener only once
175+
}
172176
navigation.addListener(navigationListener);
173177

174178
if (root.getSelectionModel().getSelectedItem() == openOffersTab)
@@ -194,7 +198,6 @@ else if (root.getSelectionModel().getSelectedItem() == editOpenOfferTab) {
194198
@Override
195199
protected void deactivate() {
196200
root.getSelectionModel().selectedItemProperty().removeListener(tabChangeListener);
197-
root.getTabs().removeListener(tabListChangeListener);
198201
navigation.removeListener(navigationListener);
199202
currentTab = null;
200203
}

0 commit comments

Comments
 (0)