Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1760)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java

Issue 2354833002: Web Share: Show a warning prompt when share is used from incognito. (Closed)
Patch Set: Remove unused local variable. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
index 80ebc63b65b530d71261e8a977b688a36258ec4f..0ecf63c354b1d882bb9b612ad407d175f433e30e 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
@@ -364,17 +364,37 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat
}
}
+ /**
+ * Shows an alert dialog prompting the user to leave incognito mode.
+ *
+ * @param activity The {@link Activity} to launch the dialog from.
+ * @param onAccept Will be called when the user chooses to leave incognito.
+ * @param onCancel Will be called when the user declines to leave incognito.
+ */
+ public static void showLeaveIncognitoWarningDialog(Activity activity,
+ final OnClickListener onAccept, final OnCancelListener onCancel) {
+ new AlertDialog.Builder(activity, R.style.AlertDialogTheme)
+ .setTitle(R.string.external_app_leave_incognito_warning_title)
+ .setMessage(R.string.external_app_leave_incognito_warning)
+ .setPositiveButton(R.string.ok, onAccept)
+ .setNegativeButton(R.string.cancel, new OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ onCancel.onCancel(dialog);
+ }
+ })
+ .setOnCancelListener(onCancel)
+ .show();
+ }
+
@Override
public void startIncognitoIntent(final Intent intent, final String referrerUrl,
final String fallbackUrl, final Tab tab, final boolean needsToCloseTab) {
Context context = tab.getWindowAndroid().getContext().get();
if (!(context instanceof Activity)) return;
- Activity activity = (Activity) context;
- new AlertDialog.Builder(activity, R.style.AlertDialogTheme)
- .setTitle(R.string.external_app_leave_incognito_warning_title)
- .setMessage(R.string.external_app_leave_incognito_warning)
- .setPositiveButton(R.string.ok, new OnClickListener() {
+ showLeaveIncognitoWarningDialog((Activity) context,
+ new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
startActivity(intent);
@@ -383,20 +403,13 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat
closeTab(tab);
}
}
- })
- .setNegativeButton(R.string.cancel, new OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- loadIntent(intent, referrerUrl, fallbackUrl, tab, needsToCloseTab, true);
- }
- })
- .setOnCancelListener(new OnCancelListener() {
+ },
+ new OnCancelListener() {
@Override
public void onCancel(DialogInterface dialog) {
loadIntent(intent, referrerUrl, fallbackUrl, tab, needsToCloseTab, true);
}
- })
- .show();
+ });
}
@Override
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698