diff --git a/mobile/res/values/strings.xml b/mobile/res/values/strings.xml
index 0dbabb95..d486e60e 100644
--- a/mobile/res/values/strings.xml
+++ b/mobile/res/values/strings.xml
@@ -44,6 +44,8 @@
Nice for tablets, looks awful on smartphones
Force https
Disabling may improve performance
+ Press back button twice to exit
+ Avoids accidental exits
Developer options
Enable developer mode
If enabled, all IITC sources will be loaded from external storage of the Android device.
diff --git a/mobile/res/xml/preferences.xml b/mobile/res/xml/preferences.xml
index 3d96a98e..a4b14c02 100644
--- a/mobile/res/xml/preferences.xml
+++ b/mobile/res/xml/preferences.xml
@@ -50,6 +50,11 @@
android:title="@string/pref_force_https"
android:summary="@string/pref_force_https_sum"
android:defaultValue="true" />
+
dialogStack = new ArrayList();
+ private SharedPreferences sharedPref;
// Used for custom back stack handling
private ArrayList backStack = new ArrayList();
private boolean backStack_push = true;
private int currentPane = android.R.id.home;
+ private boolean back_button_pressed = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -78,7 +81,7 @@ public class IITC_Mobile extends Activity {
actionBar.setHomeButtonEnabled(true);
// do something if user changed something in the settings
- SharedPreferences sharedPref = PreferenceManager
+ sharedPref = PreferenceManager
.getDefaultSharedPreferences(this);
listener = new OnSharedPreferenceChangeListener() {
@Override
@@ -104,6 +107,10 @@ public class IITC_Mobile extends Activity {
// no iitc reload needed here
return;
}
+ // no reload needed
+ if (key.equals("pref_press_twice_to_exit"))
+ return;
+
reload_needed = true;
}
};
@@ -285,7 +292,19 @@ public class IITC_Mobile extends Activity {
// Pop last item from backStack and pretend the relevant menu item was clicked
backStackPop();
} else {
- super.onBackPressed();
+ if (back_button_pressed || !sharedPref.getBoolean("pref_press_twice_to_exit", false))
+ super.onBackPressed();
+ else {
+ back_button_pressed = true;
+ Toast.makeText(this, "Press twice to exit", Toast.LENGTH_SHORT).show();
+ // reset back button after 2 seconds
+ new Handler().postDelayed(new Runnable() {
+ @Override
+ public void run() {
+ back_button_pressed=false;
+ }
+ }, 2000);
+ }
}
}
@@ -369,6 +388,8 @@ public class IITC_Mobile extends Activity {
actionBar.setTitle(getString(R.string.app_name));
backStack.clear();
setActionBarHomeEnabledWithUp(false);
+ // iitc starts on map after reload
+ currentPane = android.R.id.home;
this.loadUrl(intel_url);
return true;
case R.id.toggle_fullscreen:
diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java b/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java
index 94d948fa..5912002d 100644
--- a/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java
+++ b/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java
@@ -147,9 +147,9 @@ public class IITC_WebViewClient extends WebViewClient {
@Override
public void onPageFinished(WebView view, String url) {
if (url.contains("accounts.google.com")) {
- Log.d("iitcm", "reload after login");
+ Log.d("iitcm", "reload after login/logout");
IITC_Mobile main_activity = ((IITC_Mobile) context);
- main_activity.loadUrl(main_activity.intel_url);
+ main_activity.handleMenuItemSelected(R.id.reload_button);
return;
}
super.onPageFinished(view, url);
diff --git a/plugins/bookmarks-by-zaso.user.js b/plugins/bookmarks-by-zaso.user.js
index b8396a9b..56c06303 100644
--- a/plugins/bookmarks-by-zaso.user.js
+++ b/plugins/bookmarks-by-zaso.user.js
@@ -303,12 +303,18 @@
// If it's a map
if(typeList == 'bkmrk_maps'){
if(bkmrk['label']==''){ label = bkmrk['latlng']+' ['+bkmrk['z']+']'; }
- btn_link = ''+label+'';
+ if (!window.isSmartphone())
+ btn_link = ''+label+'';
+ else
+ btn_link = ''+label+'';
}
// If it's a portal
else if(typeList == 'bkmrk_portals'){
var guid = bkmrk['guid'];
- var btn_link = ''+label+'';
+ if (!window.isSmartphone())
+ var btn_link = ''+label+'';
+ else
+ var btn_link = ''+label+'';
}
// Create the bookmark
elementTemp += ''+btn_remove+btn_link+'';