From f8dd3a1491743d441eb560d939a798d160270445 Mon Sep 17 00:00:00 2001 From: Kranken Date: Sun, 1 Feb 2015 16:41:39 +0100 Subject: [PATCH] Fixed a bug when showing and hiding drafted cards This commit fixes the following bug: 1) Draft a couple of cards in draft mode 2) Hide a card 3) Show all cards 4) Hide another card Here both cards got hidden, this commit makes sure only the card in 4) gets hidden --- .../java/mage/client/draft/DraftPanel.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/draft/DraftPanel.java b/Mage.Client/src/main/java/mage/client/draft/DraftPanel.java index e1dfaf0231b..573a1b8be86 100644 --- a/Mage.Client/src/main/java/mage/client/draft/DraftPanel.java +++ b/Mage.Client/src/main/java/mage/client/draft/DraftPanel.java @@ -382,10 +382,7 @@ public class DraftPanel extends javax.swing.JPanel { menuItem.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - // Add the card to the hidden cards - cardsHidden.add(cardIdPopupMenu); - pickedCardsShown.remove(cardIdPopupMenu); - draftPicks.loadCards(CardsViewUtil.convertSimple(pickedCardsShown), bigCard, null); + hideThisCard(cardIdPopupMenu); } }); @@ -393,11 +390,20 @@ public class DraftPanel extends javax.swing.JPanel { } + private void hideThisCard(UUID card) { + // Add the card to the hidden cards + cardsHidden.add(card); + pickedCardsShown.remove(card); + draftPicks.loadCards(CardsViewUtil.convertSimple(pickedCardsShown), bigCard, null); + } private void showAgainAllHiddenCards() { - // show again all hidden cards + // Add back the hidden cards to the shown set + for (UUID card : cardsHidden) { + pickedCardsShown.put(card, pickedCards.get(card)); + } cardsHidden.clear(); - draftPicks.loadCards(CardsViewUtil.convertSimple(pickedCards), bigCard, null); + draftPicks.loadCards(CardsViewUtil.convertSimple(pickedCardsShown), bigCard, null); } /** This method is called from within the constructor to