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+'
  • ';