From 87d81f02bf3bc8c51d4889333bd81c57de574d07 Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Wed, 26 Nov 2014 23:01:13 +0100 Subject: [PATCH] Only load on demand --- .../java/io/bitsquare/gui/main/trade/TradeView.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/bitsquare/gui/main/trade/TradeView.java b/src/main/java/io/bitsquare/gui/main/trade/TradeView.java index fda199dd53..7b8d5303fa 100644 --- a/src/main/java/io/bitsquare/gui/main/trade/TradeView.java +++ b/src/main/java/io/bitsquare/gui/main/trade/TradeView.java @@ -118,9 +118,10 @@ public abstract class TradeView extends ActivatableView { private View loadView(Class viewClass) { TabPane tabPane = root; - View view = viewLoader.load(viewClass); + View view; - if (view instanceof OfferBookView && offerBookView == null) { + if (viewClass == OfferBookView.class && offerBookView == null) { + view = viewLoader.load(viewClass); // Offerbook must not be cached by ViewLoader as we use 2 instances for sell and buy screens. final Tab tab = new Tab(direction == Direction.BUY ? "Buy Bitcoin" : "Sell Bitcoin"); tab.setClosable(false); @@ -159,7 +160,8 @@ public abstract class TradeView extends ActivatableView { return offerBookView; } - else if (view instanceof CreateOfferView && createOfferView == null) { + else if (viewClass == CreateOfferView.class && createOfferView == null) { + view = viewLoader.load(viewClass); // CreateOffer and TakeOffer must not be cached by ViewLoader as we cannot use a view multiple times // in different graphs createOfferView = (CreateOfferView) view; @@ -172,7 +174,8 @@ public abstract class TradeView extends ActivatableView { tabPane.getSelectionModel().select(tab); return createOfferView; } - else if (view instanceof TakeOfferView && takeOfferView == null && offer != null) { + else if (viewClass == TakeOfferView.class && takeOfferView == null && offer != null) { + view = viewLoader.load(viewClass); // CreateOffer and TakeOffer must not be cached by ViewLoader as we cannot use a view multiple times // in different graphs takeOfferView = (TakeOfferView) view;