diff --git a/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java b/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java index d88b05f1ded..f4a8bba7681 100644 --- a/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java +++ b/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java @@ -323,6 +323,8 @@ public abstract class VCardDisplayArea extends VDisplayArea implements ActivateH @Override public boolean tap(float x, float y, int count) { + if (count > 1) //prevent double choice lists or activate handle + return false; if (renderedCardContains(x, y)) { ThreadUtil.invokeInGameThread(new Runnable() { //must invoke in game thread in case a dialog needs to be shown @Override diff --git a/forge-gui/src/main/java/forge/player/HumanCostDecision.java b/forge-gui/src/main/java/forge/player/HumanCostDecision.java index 10465f5805f..71fd421e317 100644 --- a/forge-gui/src/main/java/forge/player/HumanCostDecision.java +++ b/forge-gui/src/main/java/forge/player/HumanCostDecision.java @@ -1176,7 +1176,8 @@ public class HumanCostDecision extends CostDecisionMakerBase { else if (ability.getTargets() != null && ability.getTargets().isTargetingAnyCard() && ability.getTargets().size() == 1) cardView = CardView.get(ability.getTargetCard()); else if (cardView.getZone() == null || cardView.getZone().isHidden()) { - cardView = CardView.getCardForUi(ImageUtil.getPaperCardFromImageKey(cardView.getCurrentState().getImageKey())); + if (!cardView.hasAlternateState()) //don't override if it has alternatestate since it maybe showing alternate view + cardView = CardView.getCardForUi(ImageUtil.getPaperCardFromImageKey(cardView.getCurrentState().getImageKey())); } return controller.getGui().confirm(cardView, message.replaceAll("\n", " ")); } else {