diff --git a/mobile/res/layout/dialog_progressbar.xml b/mobile/res/layout/dialog_progressbar.xml
new file mode 100644
index 00000000..88191be7
--- /dev/null
+++ b/mobile/res/layout/dialog_progressbar.xml
@@ -0,0 +1,6 @@
+
+
diff --git a/mobile/src/com/cradle/iitc_mobile/DeviceAccountLogin.java b/mobile/src/com/cradle/iitc_mobile/DeviceAccountLogin.java
index b000ee3d..9b2a8d03 100644
--- a/mobile/src/com/cradle/iitc_mobile/DeviceAccountLogin.java
+++ b/mobile/src/com/cradle/iitc_mobile/DeviceAccountLogin.java
@@ -72,6 +72,11 @@ public class DeviceAccountLogin implements AccountManagerCallback {
mWebView = webView;
mAccountManager = AccountManager.get(activity);
mAccountAdapter = new AccountAdapter();
+
+ mProgressbar = new AlertDialog.Builder(mActivity)
+ .setCancelable(false)
+ .setView(mActivity.getLayoutInflater().inflate(R.layout.dialog_progressbar, null))
+ .create();
}
private void displayAccountList() {
@@ -89,10 +94,6 @@ public class DeviceAccountLogin implements AccountManagerCallback {
}
private void startAuthentication() {
- mProgressbar = new AlertDialog.Builder(mActivity)
- .setCancelable(false)
- .setView(mActivity.getLayoutInflater().inflate(R.layout.dialog_progressbar, null))
- .create();
mProgressbar.show();
mAccountManager.getAuthToken(mAccount, mAuthToken, null, mActivity, this, null);
@@ -107,8 +108,7 @@ public class DeviceAccountLogin implements AccountManagerCallback {
@Override
public void run(AccountManagerFuture value) {
- if (mProgressbar != null)
- mProgressbar.hide();
+ mProgressbar.hide();
try {
Intent launch = (Intent) value.getResult().get(AccountManager.KEY_INTENT);
diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java
index 09c079e7..da5c3711 100644
--- a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java
+++ b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java
@@ -2,7 +2,13 @@ package com.cradle.iitc_mobile;
import java.io.IOException;
-import com.cradle.iitc_mobile.R;
+import android.app.ActionBar;
+import android.app.Activity;
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.content.res.Configuration;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
@@ -13,17 +19,12 @@ import android.os.Bundle;
import android.os.Handler;
import android.os.StrictMode;
import android.preference.PreferenceManager;
-import android.app.ActionBar;
-import android.app.Activity;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
-import android.content.res.Configuration;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
+import android.view.Window;
import android.view.WindowManager;
+import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.widget.Toast;
@@ -47,12 +48,25 @@ public class IITC_Mobile extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ requestWindowFeature(Window.FEATURE_PROGRESS);
+
// TODO build an async task for url.openStream() in IITC_WebViewClient
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
.permitAll().build();
StrictMode.setThreadPolicy(policy);
setContentView(R.layout.activity_main);
iitc_view = (IITC_WebView) findViewById(R.id.iitc_webview);
+ iitc_view.setWebChromeClient(new WebChromeClient()
+ {
+ @Override
+ public void onProgressChanged(WebView view, int newProgress) {
+ super.onProgressChanged(view, newProgress);
+
+ // maximum for newProgress is 100
+ // maximum for setProgress is 10,000
+ setProgress(newProgress * 100);
+ }
+ });
// fetch actionbar, set display flags, title and enable home button
actionBar = this.getActionBar();