From 61af57d7ba5fc1f60e2ebf835ff6d233fb87c42d Mon Sep 17 00:00:00 2001 From: drdev Date: Wed, 26 Nov 2014 20:26:33 +0000 Subject: [PATCH] Fix to ensure cards in stack not linked to stack aren't checked twice --- .../src/main/java/forge/view/arcane/PlayArea.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/forge-gui-desktop/src/main/java/forge/view/arcane/PlayArea.java b/forge-gui-desktop/src/main/java/forge/view/arcane/PlayArea.java index d32152763b1..9db70383f82 100644 --- a/forge-gui-desktop/src/main/java/forge/view/arcane/PlayArea.java +++ b/forge-gui-desktop/src/main/java/forge/view/arcane/PlayArea.java @@ -556,9 +556,11 @@ public class PlayArea extends CardPanelContainer implements CardPanelMouseListen } //if panel can't do anything with card selection, try selecting previous panel in stack if (stack != null) { - int index = stack.indexOf(panel); - if (index < stack.size() - 1 && selectCard(stack.get(index + 1), triggerEvent, selectOtherCardsInStack)) { - return true; + for (int i = stack.indexOf(panel) + 1; i < stack.size(); i++) { //looping forward since panels stored in reverse order + CardPanel p = stack.get(i); + if (p.getStack() == stack && selectCard(stack.get(i), triggerEvent, selectOtherCardsInStack)) { + return true; + } } } //as a last resort try to select attached panels not in stack