diff --git a/mobile/android/base/GeckoApp.java b/mobile/android/base/GeckoApp.java index 213aa947b77a..13bde1fd2809 100644 --- a/mobile/android/base/GeckoApp.java +++ b/mobile/android/base/GeckoApp.java @@ -1725,7 +1725,35 @@ private void initialize() { passedUri = "about:empty"; } - sGeckoThread = new GeckoThread(intent, passedUri, mRestoreMode); + if (sGeckoThread == null) { + sGeckoThread = new GeckoThread(intent, passedUri, mRestoreMode); + } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(R.string.ics_dumbness_title); + builder.setMessage(R.string.ics_dumbness_message); + builder.setPositiveButton(R.string.ics_dumbness_ok, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + final String ACTION = "android.intent.action.MAIN"; + final String PACKAGE = "com.android.settings"; + final String CLASS = PACKAGE + ".DevelopmentSettings"; + Intent intent = new Intent(ACTION); + intent.setComponent(new ComponentName(PACKAGE, CLASS)); + startActivity(intent); + } + }); + builder.setNegativeButton(R.string.button_cancel, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + } + }); + AlertDialog dialog = builder.create(); + dialog.setOnDismissListener(new DialogInterface.OnDismissListener() { + public void onDismiss(DialogInterface dialog) { + System.exit(0); + } + }); + dialog.show(); + } + if (!ACTION_DEBUG.equals(action) && checkAndSetLaunchState(LaunchState.Launching, LaunchState.Launched)) { sGeckoThread.start(); diff --git a/mobile/android/base/locales/en-US/android_strings.dtd b/mobile/android/base/locales/en-US/android_strings.dtd index 9f0132726d4f..d01257eb0476 100644 --- a/mobile/android/base/locales/en-US/android_strings.dtd +++ b/mobile/android/base/locales/en-US/android_strings.dtd @@ -125,3 +125,7 @@ + + + Developer options."> + diff --git a/mobile/android/base/strings.xml.in b/mobile/android/base/strings.xml.in index c5f2785c3d46..0cb81531ccaa 100644 --- a/mobile/android/base/strings.xml.in +++ b/mobile/android/base/strings.xml.in @@ -147,4 +147,10 @@ @bookmarks_aboutHome@ about:home + + + &ics_dumbness_title; + &ics_dumbness_message; + &ics_dumbness_ok; +