[Bundles] Streamline interface ModuleInstallUi.FailureUiListener.
Previously interface ModuleInstallUi.FailureUiListener has two
callbacks: {onRetry(), onCancel()}. This CL merges the callbacks to
onFailureResponse(), which takes a |retry| param to distinguish the two
cases. This results in a slight savings in method counts (4 right now).
Bug: 927131
Change-Id: I2965906f033fc05920657ea4cb1cd7424bc8a86c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1763640
Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
Reviewed-by: Tibor Goldschwendt <tiborg@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#689153}
diff --git a/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantModuleEntryProvider.java b/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantModuleEntryProvider.java
index 40715b8..1b84713 100644
--- a/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantModuleEntryProvider.java
+++ b/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantModuleEntryProvider.java
@@ -87,13 +87,12 @@
ModuleInstallUi ui = new ModuleInstallUi(tab, R.string.autofill_assistant_module_title,
new ModuleInstallUi.FailureUiListener() {
@Override
- public void onRetry() {
- loadDynamicModuleWithUi(tab, callback);
- }
-
- @Override
- public void onCancel() {
- callback.onResult(null);
+ public void onFailureUiResponse(boolean retry) {
+ if (retry) {
+ loadDynamicModuleWithUi(tab, callback);
+ } else {
+ callback.onResult(null);
+ }
}
});
// Shows toast informing user about install start.
diff --git a/chrome/android/features/vr/java/src/org/chromium/chrome/browser/vr/VrModuleProvider.java b/chrome/android/features/vr/java/src/org/chromium/chrome/browser/vr/VrModuleProvider.java
index 39580529..130f83d 100644
--- a/chrome/android/features/vr/java/src/org/chromium/chrome/browser/vr/VrModuleProvider.java
+++ b/chrome/android/features/vr/java/src/org/chromium/chrome/browser/vr/VrModuleProvider.java
@@ -128,15 +128,11 @@
}
@Override
- public void onRetry() {
- if (mNativeVrModuleProvider != 0) {
+ public void onFailureUiResponse(boolean retry) {
+ if (mNativeVrModuleProvider == 0) return;
+ if (retry) {
installModule(mTab);
- }
- }
-
- @Override
- public void onCancel() {
- if (mNativeVrModuleProvider != 0) {
+ } else {
nativeOnInstalledModule(mNativeVrModuleProvider, false);
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/modules/ModuleInstallUi.java b/chrome/android/java/src/org/chromium/chrome/browser/modules/ModuleInstallUi.java
index 588b097..f9f1eca 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/modules/ModuleInstallUi.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/modules/ModuleInstallUi.java
@@ -24,14 +24,12 @@
/** Listener for when the user interacts with the install failure UI. */
public interface FailureUiListener {
- /** Called if the user wishes to retry installing the module. */
- void onRetry();
-
/**
- * Called if the failure UI has been dismissed and the user does not want to retry
- * installing the module.
+ * Called when the user makes a decision to handle the failure, either to retry installing
+ * the module or to cancel installing the module by dismissing the UI.
+ * @param retry Whether user decides to retry installing the module.
*/
- void onCancel();
+ void onFailureUiResponse(boolean retry);
}
/*
@@ -89,24 +87,20 @@
Context context = mTab.getActivity();
if (context == null) {
// Tab is detached. Cancel.
- if (mFailureUiListener != null) mFailureUiListener.onCancel();
+ if (mFailureUiListener != null) mFailureUiListener.onFailureUiResponse(false);
return;
}
SimpleConfirmInfoBarBuilder.Listener listener = new SimpleConfirmInfoBarBuilder.Listener() {
@Override
public void onInfoBarDismissed() {
- if (mFailureUiListener != null) mFailureUiListener.onCancel();
+ if (mFailureUiListener != null) mFailureUiListener.onFailureUiResponse(false);
}
@Override
public boolean onInfoBarButtonClicked(boolean isPrimary) {
if (mFailureUiListener != null) {
- if (isPrimary) {
- mFailureUiListener.onRetry();
- } else {
- mFailureUiListener.onCancel();
- }
+ mFailureUiListener.onFailureUiResponse(isPrimary);
}
return false;
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/vr/ArCoreInstallUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/vr/ArCoreInstallUtils.java
index ef51870..2c3aaf3 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/vr/ArCoreInstallUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/vr/ArCoreInstallUtils.java
@@ -69,16 +69,14 @@
}
@Override
- public void onRetry() {
+ public void onFailureUiResponse(boolean retry) {
if (mNativeArCoreInstallUtils == 0) return;
- requestInstallArModule(mTab);
- }
-
- @Override
- public void onCancel() {
- if (mNativeArCoreInstallUtils == 0) return;
- ArCoreInstallUtilsJni.get().onRequestInstallArModuleResult(
- mNativeArCoreInstallUtils, false);
+ if (retry) {
+ requestInstallArModule(mTab);
+ } else {
+ ArCoreInstallUtilsJni.get().onRequestInstallArModuleResult(
+ mNativeArCoreInstallUtils, false);
+ }
}
@CalledByNative
@@ -124,7 +122,7 @@
} else {
ui.showInstallFailureUi();
// early exit - user will be offered a choice to retry & install flow will
- // continue from onRetry / onCancel
+ // continue from onFailureUiResponse().
return;
}
}
diff --git a/docs/android_dynamic_feature_modules.md b/docs/android_dynamic_feature_modules.md
index 49e438e..13cfb93 100644
--- a/docs/android_dynamic_feature_modules.md
+++ b/docs/android_dynamic_feature_modules.md
@@ -680,13 +680,12 @@
R.string.foo_module_title,
new ModuleInstallUi.FailureUiListener() {
@Override
- public void onRetry() {
- installModuleWithUi(tab, onFinishedListener);
- }
-
- @Override
- public void onCancel() {
- onFinishedListener.onFinished(false);
+ public void onFailureUiResponse(retry) {
+ if (retry) {
+ installModuleWithUi(tab, onFinishedListener);
+ } else {
+ onFinishedListener.onFinished(false);
+ }
}
});
// At the time of writing, shows toast informing user about install start.