Merge pull request #8773 from kevlahnota/master4

fix NoSuchMethodError on older Android
This commit is contained in:
kevlahnota
2025-09-24 13:57:46 +08:00
committed by GitHub
2 changed files with 8 additions and 6 deletions

View File

@@ -294,8 +294,8 @@ public final class ConquestData {
commandersUsingCard.append("\n").append(CardTranslation.getTranslatedName(commander.getName())); commandersUsingCard.append("\n").append(CardTranslation.getTranslatedName(commander.getName()));
} }
} }
// Android API StringBuilder isEmpty() is unavailable. https://developer.android.com/reference/java/lang/StringBuilder
if (!commandersUsingCard.isEmpty()) { if (commandersUsingCard.length() != 0) {
SOptionPane.showMessageDialog(Localizer.getInstance().getMessage("lblCommandersCardCannotBeExiledByCard", CardTranslation.getTranslatedName(card.getName()), commandersUsingCard), title, SOptionPane.INFORMATION_ICON); SOptionPane.showMessageDialog(Localizer.getInstance().getMessage("lblCommandersCardCannotBeExiledByCard", CardTranslation.getTranslatedName(card.getName()), commandersUsingCard), title, SOptionPane.INFORMATION_ICON);
return false; return false;
} }

View File

@@ -147,11 +147,13 @@ public class ConquestUtil {
} }
//Move editions of cards already in the deck to the front. //Move editions of cards already in the deck to the front.
Map<CardEdition, Integer> editionStats = currentDeck.getAllCardsInASinglePool().getCardEditionStatistics(true); Map<CardEdition, Integer> editionStats = currentDeck.getAllCardsInASinglePool().getCardEditionStatistics(true);
// use flatMap instead of mapMulti for Android 13 and below
//https://developer.android.com/reference/java/util/stream/Stream#mapMulti
List<CardEdition> out = planes.stream() List<CardEdition> out = planes.stream()
.<CardEdition>mapMulti((p, c) -> p.getEditions().forEach(c)) .flatMap(p -> p.getEditions().stream())
.filter(CardEdition::hasBasicLands) .filter(CardEdition::hasBasicLands)
.sorted(Comparator.comparing(e -> editionStats.getOrDefault(e, 0))) .sorted(Comparator.comparing(e -> editionStats.getOrDefault(e, 0)))
.collect(Collectors.toList()); .collect(Collectors.toList());
return out; return out;
} }