diff --git a/forge-core/src/main/java/forge/util/FileUtil.java b/forge-core/src/main/java/forge/util/FileUtil.java
index 83ae71f9d48..3707564b5d7 100644
--- a/forge-core/src/main/java/forge/util/FileUtil.java
+++ b/forge-core/src/main/java/forge/util/FileUtil.java
@@ -80,6 +80,17 @@ public final class FileUtil {
return (dir.exists() && dir.isDirectory()) || dir.mkdirs();
}
+ public static boolean deleteDirectory(File dir) {
+ if (dir.isDirectory()) {
+ for (String filename : dir.list()) {
+ if (!deleteDirectory(new File(dir, filename))) {
+ return false;
+ }
+ }
+ }
+ return dir.delete();
+ }
+
/**
*
* writeFile.
diff --git a/forge-gui-android/AndroidManifest.xml b/forge-gui-android/AndroidManifest.xml
index dc10e30a132..261dd3db876 100644
--- a/forge-gui-android/AndroidManifest.xml
+++ b/forge-gui-android/AndroidManifest.xml
@@ -8,7 +8,8 @@
android:minSdkVersion="8"
android:targetSdkVersion="19" />
-
+
+
entries = zipFile.entries();
+ progressBar.reset();
+ progressBar.setPercentMode(true);
+ progressBar.setDescription("Unzipping resource files");
+ progressBar.setMaximum(zipFile.size());
+
+ int count = 0;
while (entries.hasMoreElements()) {
ZipEntry entry = (ZipEntry)entries.nextElement();
String path = ForgeConstants.ASSETS_DIR + entry.getName();
if (entry.isDirectory()) {
new File(path).mkdir();
+ progressBar.setValue(++count);
continue;
}
copyInputStream(zipFile.getInputStream(entry), new BufferedOutputStream(new FileOutputStream(path)));
+ progressBar.setValue(++count);
}
zipFile.close();
- fileDest.delete();
+ new File(destFile).delete();
}
catch (Exception e) {
- // TODO Auto-generated catch block
e.printStackTrace();
}
}
diff --git a/forge-gui-mobile/src/forge/assets/FSkin.java b/forge-gui-mobile/src/forge/assets/FSkin.java
index 1681fb5ac87..1b716763de0 100644
--- a/forge-gui-mobile/src/forge/assets/FSkin.java
+++ b/forge-gui-mobile/src/forge/assets/FSkin.java
@@ -284,9 +284,9 @@ public class FSkin {
//if skins directory doesn't exists, create a minimum directory containing skin files for the splash screen
FileUtil.ensureDirectoryExists(ForgeConstants.DEFAULT_SKINS_DIR);
final FileHandle defaultDir = Gdx.files.absolute(ForgeConstants.DEFAULT_SKINS_DIR);
- Gdx.files.internal("bg_splash.png").copyTo(defaultDir.child("bg_splash.png"));
- Gdx.files.internal("bg_texture.jpg").copyTo(defaultDir.child("bg_texture.jpg"));
- Gdx.files.internal("font1.ttf").copyTo(defaultDir.child("font1.ttf"));
+ Gdx.files.internal(ForgeConstants.SPLASH_BG_FILE).copyTo(defaultDir.child(ForgeConstants.SPLASH_BG_FILE));
+ Gdx.files.internal(ForgeConstants.TEXTURE_BG_FILE).copyTo(defaultDir.child(ForgeConstants.TEXTURE_BG_FILE));
+ Gdx.files.internal(ForgeConstants.FONT_FILE).copyTo(defaultDir.child(ForgeConstants.FONT_FILE));
mySkins.add("default");
needReloadAfterAssetsDownloaded = true; //flag that skins need to be reloaded after assets downloaded
}
diff --git a/forge-gui-mobile/src/forge/error/BugReportDialog.java b/forge-gui-mobile/src/forge/error/BugReportDialog.java
index 6f23fa026b8..44328d083f1 100644
--- a/forge-gui-mobile/src/forge/error/BugReportDialog.java
+++ b/forge-gui-mobile/src/forge/error/BugReportDialog.java
@@ -17,7 +17,7 @@ public class BugReportDialog extends FOptionPane {
private static boolean dialogShown;
public static void show(String title, String text, boolean showExitAppBtn) {
- if (dialogShown) { return; }
+ if (dialogShown || Forge.getCurrentScreen() == null) { return; } //don't allow showing if Forge not finished initializing yet
dialogShown = true;
BugReportDialog dialog = new BugReportDialog(title, text, showExitAppBtn);
diff --git a/forge-gui/src/main/java/forge/download/GuiDownloadService.java b/forge-gui/src/main/java/forge/download/GuiDownloadService.java
index b81f9dac86e..8133a9d5ecf 100644
--- a/forge-gui/src/main/java/forge/download/GuiDownloadService.java
+++ b/forge-gui/src/main/java/forge/download/GuiDownloadService.java
@@ -249,7 +249,7 @@ public abstract class GuiDownloadService implements Runnable {
conn.setInstanceFollowRedirects(false);
conn.connect();
- if (conn.getResponseCode() != 200) {
+ if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
conn.disconnect();
System.out.println("Skipped Download for: " + fileDest.getPath());
update(++iCard, fileDest);