From 164464257caf07a78cffc958a58d7db1cd1ba07a Mon Sep 17 00:00:00 2001 From: pelya Date: Mon, 20 Sep 2010 15:26:48 +0300 Subject: [PATCH] Close the application if downloads failed, when user presses Back key --- project/src/DataDownloader.java | 4 ++++ project/src/MainActivity.java | 7 ++++++- project/src/Settings.java | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/project/src/DataDownloader.java b/project/src/DataDownloader.java index 110b2559a..973ab3d38 100644 --- a/project/src/DataDownloader.java +++ b/project/src/DataDownloader.java @@ -155,7 +155,10 @@ class DataDownloader extends Thread { if( downloadFiles[i].length() > 0 && Globals.OptionalDataDownload.length > i && Globals.OptionalDataDownload[i] ) if( ! DownloadDataFile(downloadFiles[i], "libsdl-DownloadFinished-" + String.valueOf(i) + ".flag") ) + { + DownloadFailed = true; return; + } } DownloadComplete = true; initParent(); @@ -446,6 +449,7 @@ class DataDownloader extends Thread public StatusWriter Status; public boolean DownloadComplete = false; + public boolean DownloadFailed = false; private MainActivity Parent; private String outFilesDir = null; } diff --git a/project/src/MainActivity.java b/project/src/MainActivity.java index d5961a8ed..089ae237d 100644 --- a/project/src/MainActivity.java +++ b/project/src/MainActivity.java @@ -100,8 +100,13 @@ public class MainActivity extends Activity { if( mGLView != null ) mGLView.nativeKey( keyCode, 1 ); else - if( keyCode == KeyEvent.KEYCODE_BACK && downloader != null && !downloader.DownloadComplete ) + if( keyCode == KeyEvent.KEYCODE_BACK && downloader != null ) + { + if( downloader.DownloadFailed ) + System.exit(1); + if( !downloader.DownloadComplete ) onStop(); + } return true; } diff --git a/project/src/Settings.java b/project/src/Settings.java index 9e4d461f6..b0fb79a41 100644 --- a/project/src/Settings.java +++ b/project/src/Settings.java @@ -111,7 +111,7 @@ class Settings public void run() { try { - Thread.sleep(1500); + Thread.sleep(2000); } catch( InterruptedException e ) {}; if( changeConfigAlert == null ) return;