diff --git a/mobile/res/menu/main.xml b/mobile/res/menu/main.xml index 47c39131..479e4446 100644 --- a/mobile/res/menu/main.xml +++ b/mobile/res/menu/main.xml @@ -87,4 +87,10 @@ android:showAsAction="never" android:title="@string/menu_debug"> + + \ No newline at end of file diff --git a/mobile/res/values/strings.xml b/mobile/res/values/strings.xml index 4fc12a40..f30f2efd 100644 --- a/mobile/res/values/strings.xml +++ b/mobile/res/values/strings.xml @@ -70,6 +70,9 @@ Enable developer mode If enabled, all IITC sources will be loaded from external storage of the Android device. Please copy all sources from $IITC_folder/build/mobile/ to /sdcard/IITC_Mobile/dev/. + Display advanced menu + In addition to the default IITC buttons the advanced menu + contains a debug pane plus an option to clear cookies Disable Splash Screen IITC source Load IITC main script from url or use local script. Currently used source: @@ -81,6 +84,7 @@ Faction Info Debug + Clear Cookies Search Choose account to login Login failed. diff --git a/mobile/res/xml/preferences.xml b/mobile/res/xml/preferences.xml index 62674c9b..49c89c40 100644 --- a/mobile/res/xml/preferences.xml +++ b/mobile/res/xml/preferences.xml @@ -72,6 +72,12 @@ android:summary="@string/pref_enable_dev_mode_sum" android:defaultValue="false" /> + + mDialogStack = new ArrayList(); private SharedPreferences mSharedPrefs; @@ -106,6 +108,12 @@ public class IITC_Mobile extends Activity { // no iitc reload needed here return; } + if (key.equals("pref_advanced_menu")) { + mAdvancedMenu = sharedPreferences.getBoolean("pref_advanced_menu", false); + invalidateOptionsMenu(); + // no reload needed + return; + } // no reload needed if (key.equals("pref_press_twice_to_exit") || key.equals("pref_share_selected_tab")) return; @@ -118,6 +126,9 @@ public class IITC_Mobile extends Activity { // enable/disable mDesktopMode mode on menu create and url load mDesktopMode = mSharedPrefs.getBoolean("pref_force_desktop", false); + // enable/disable advance menu + mAdvancedMenu = mSharedPrefs.getBoolean("pref_advanced_menu", false); + // Acquire a reference to the system Location Manager mLocMngr = (LocationManager) this .getSystemService(Context.LOCATION_SERVICE); @@ -438,7 +449,8 @@ public class IITC_Mobile extends Activity { searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); searchView.setIconifiedByDefault(false); // Do not iconify the widget; expand it by default // enable/disable mDesktopMode menu - enableDesktopUI(menu, mDesktopMode); + enableDesktopUI(menu); + enableAdvancedMenu(menu); return true; } @@ -508,6 +520,10 @@ public class IITC_Mobile extends Activity { case R.id.menu_debug: mIitcWebView.loadUrl("javascript: window.show('debug')"); return true; + case R.id.menu_clear_cookies: + CookieManager cm = CookieManager.getInstance(); + cm.removeAllCookie(); + return true; default: return false; } @@ -629,14 +645,14 @@ public class IITC_Mobile extends Activity { } // disable/enable some menu buttons... - public void enableDesktopUI(Menu menu, boolean desktop) { + public void enableDesktopUI(Menu menu) { MenuItem item; item = menu.findItem(R.id.menu_chat); - item.setVisible(!desktop); + item.setVisible(!mDesktopMode); item = menu.findItem(R.id.menu_info); - item.setVisible(!desktop); + item.setVisible(!mDesktopMode); item = menu.findItem(R.id.menu_debug); - item.setVisible(!desktop); + item.setVisible(!mDesktopMode); } // remove dialog and add it back again @@ -665,4 +681,12 @@ public class IITC_Mobile extends Activity { findViewById(R.id.imageLoading).setVisibility(View.VISIBLE); } } + + public void enableAdvancedMenu(Menu menu) { + MenuItem item; + item = menu.findItem(R.id.menu_debug); + item.setVisible(mAdvancedMenu); + item = menu.findItem(R.id.menu_clear_cookies); + item.setVisible(mAdvancedMenu); + } }