diff --git a/forge-gui-mobile/src/forge/Forge.java b/forge-gui-mobile/src/forge/Forge.java index 23690be0a3e..8fdac55a2d3 100644 --- a/forge-gui-mobile/src/forge/Forge.java +++ b/forge-gui-mobile/src/forge/Forge.java @@ -128,6 +128,10 @@ public class Forge implements ApplicationListener { } } + public static boolean onHomeScreen() { + return screens.size() == 1; + } + public static void back() { if (screens.size() < 2) { exit(); //prompt to exit if attempting to go back from home screen diff --git a/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java b/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java index c60b6683cb3..b98aeb44c42 100644 --- a/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java +++ b/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java @@ -158,12 +158,18 @@ public class QuestMenu extends FPopupMenu implements IVQuestStats { decksScreen.refreshDecks(); if (reason == LaunchReason.LoadQuest) { Forge.back(); + if (Forge.onHomeScreen()) { //open duels screen if Load Quest screen was opening direct from home screen + Forge.openScreen(duelsScreen); + } } else { Forge.back(); if (Forge.getCurrentScreen() instanceof LoadQuestScreen) { Forge.back(); //remove LoadQuestScreen from screen stack } + if (Forge.onHomeScreen()) { //open duels screen if New Quest screen was opening direct from home screen + Forge.openScreen(duelsScreen); + } if (Forge.getCurrentScreen() != decksScreen) { Forge.openScreen(decksScreen); //open deck screen for new quest }