mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-12 08:48:39 +00:00
Merge branch 'master' into 'master'
[Mobile] Crash Fix on Loading New Game Closes #2046 See merge request core-developers/forge!6043
This commit is contained in:
@@ -44,7 +44,7 @@ public class LoadGameMenu extends FPopupMenu {
|
|||||||
private void initializeScreen() {
|
private void initializeScreen() {
|
||||||
if (screen == null) { //don't initialize screen until it's opened the first time
|
if (screen == null) { //don't initialize screen until it's opened the first time
|
||||||
try {
|
try {
|
||||||
screen = screenClass.newInstance();
|
screen = screenClass.getConstructor().newInstance();
|
||||||
screen.setHeaderCaption(Localizer.getInstance().getMessage("lblLoadGame") + " - " + item.getText());
|
screen.setHeaderCaption(Localizer.getInstance().getMessage("lblLoadGame") + " - " + item.getText());
|
||||||
}
|
}
|
||||||
catch (Exception e) {
|
catch (Exception e) {
|
||||||
@@ -59,7 +59,8 @@ public class LoadGameMenu extends FPopupMenu {
|
|||||||
}
|
}
|
||||||
private void open(boolean replaceBackScreen) {
|
private void open(boolean replaceBackScreen) {
|
||||||
initializeScreen();
|
initializeScreen();
|
||||||
Forge.openScreen(screen, replaceBackScreen);
|
if (screen != null)
|
||||||
|
Forge.openScreen(screen, replaceBackScreen);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAsBackScreen(boolean replace) {
|
public void setAsBackScreen(boolean replace) {
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ public class NewGameMenu extends FPopupMenu {
|
|||||||
private void initializeScreen() {
|
private void initializeScreen() {
|
||||||
if (screen == null) { //don't initialize screen until it's opened the first time
|
if (screen == null) { //don't initialize screen until it's opened the first time
|
||||||
try {
|
try {
|
||||||
screen = screenClass.newInstance();
|
screen = screenClass.getConstructor().newInstance();
|
||||||
screen.setHeaderCaption(localizer.getMessageorUseDefault("lblNewGame", "New Game") + " - " + item.getText());
|
screen.setHeaderCaption(localizer.getMessageorUseDefault("lblNewGame", "New Game") + " - " + item.getText());
|
||||||
}
|
}
|
||||||
catch (Exception e) {
|
catch (Exception e) {
|
||||||
@@ -65,7 +65,8 @@ public class NewGameMenu extends FPopupMenu {
|
|||||||
}
|
}
|
||||||
private void open(boolean replaceBackScreen) {
|
private void open(boolean replaceBackScreen) {
|
||||||
initializeScreen();
|
initializeScreen();
|
||||||
Forge.openScreen(screen, replaceBackScreen);
|
if (screen != null)
|
||||||
|
Forge.openScreen(screen, replaceBackScreen);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAsBackScreen(boolean replace) {
|
public void setAsBackScreen(boolean replace) {
|
||||||
@@ -83,10 +84,11 @@ public class NewGameMenu extends FPopupMenu {
|
|||||||
preferredScreen = NewGameScreen.valueOf(prefs.getPref(FPref.NEW_GAME_SCREEN));
|
preferredScreen = NewGameScreen.valueOf(prefs.getPref(FPref.NEW_GAME_SCREEN));
|
||||||
}
|
}
|
||||||
catch (Exception ex) {
|
catch (Exception ex) {
|
||||||
ex.printStackTrace();
|
if (NewGameScreen.Constructed != null) { //if this is null it means newgamescreen is not initialized
|
||||||
preferredScreen = NewGameScreen.Constructed;
|
preferredScreen = NewGameScreen.Constructed;
|
||||||
prefs.setPref(FPref.NEW_GAME_SCREEN, preferredScreen.name());
|
prefs.setPref(FPref.NEW_GAME_SCREEN, preferredScreen.name());
|
||||||
prefs.save();
|
prefs.save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user