diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CAllDecks.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CAllDecks.java index cdba02d66be..4c37556eb85 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CAllDecks.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CAllDecks.java @@ -1,8 +1,12 @@ package forge.screens.deckeditor.controllers; +import forge.deck.DeckBase; import forge.deck.DeckProxy; import forge.gui.framework.ICDoc; +import forge.item.InventoryItem; +import forge.itemmanager.DeckManager; import forge.itemmanager.ItemManagerConfig; +import forge.screens.deckeditor.CDeckEditorUI; import forge.screens.deckeditor.views.VAllDecks; /** @@ -39,6 +43,20 @@ public enum CAllDecks implements ICDoc { */ @Override public void update() { - view.getLstDecks().setup(ItemManagerConfig.CONSTRUCTED_DECKS); + DeckManager deckManager = view.getLstDecks(); + deckManager.setup(ItemManagerConfig.CONSTRUCTED_DECKS); + if (deckManager.getSelectedIndex() == 0) { + // This may be default and so requiring potential update! + ACEditorBase editorCtrl = + CDeckEditorUI.SINGLETON_INSTANCE.getCurrentEditorController(); + if (editorCtrl != null) { + String currentDeckName = editorCtrl.getDeckController().getModelName(); + if (currentDeckName != null && currentDeckName.length() > 0) { + DeckProxy deckProxy = deckManager.stringToItem(currentDeckName); + if (deckProxy != null && !deckManager.getSelectedItem().equals(deckProxy)) + view.getLstDecks().setSelectedItem(deckProxy); + } + } + } } } diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/views/VAllDecks.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/views/VAllDecks.java index 6a6db784619..1a35fed8ca5 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/views/VAllDecks.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/views/VAllDecks.java @@ -86,8 +86,10 @@ public enum VAllDecks implements IVDoc { parentBody.add(new ItemManagerContainer(lstDecks), "push, grow"); String preferredDeck = DeckPreferences.getCurrentDeck(); DeckProxy deckProxy = lstDecks.stringToItem(preferredDeck); - if (deckProxy != null) + if (deckProxy != null) { lstDecks.editDeck(deckProxy); + lstDecks.setSelectedItem(deckProxy); + } } //========== Retrieval methods