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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java

Issue 2836443002: No rate limit for canMakePayment() on localhost and file://. (Closed)
Patch Set: Comments Created 3 years, 8 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
Index: chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java b/chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java
index b253f41dfa923fe3a787a68b5bcdf4957fa75f69..50f0757202f797f8b91bccf9094a33d0ea883b29 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java
@@ -85,27 +85,12 @@ public class AndroidPaymentAppFinder implements ManifestVerifyCallback {
private final Map<String, AndroidPaymentApp> mResult;
/**
- * Whether payment apps are required to have an intent filter with a single PAY action and no
- * additional data, i.e., whether payments apps are required to show up in "Autofill and
- * Payments" settings.
- */
- private final boolean mRequireShowInSettings;
-
- /**
- * The intent filter for a single PAY action and no additional data. Used to filter out payment
- * apps that don't show up in "Autofill and Payments" settings.
- */
- private final Intent mSettingsLookup;
-
- /**
* Finds native Android payment apps.
*
* @param webContents The web contents that invoked the web payments API.
* @param methods The list of payment methods requested by the merchant. For
* example, "https://bobpay.com", "https://android.com/pay",
* "basic-card".
- * @param requireShowInSettings Whether payment apps are required to show up in "autofill and
- * Payments" settings.
* @param downloader The manifest downloader.
* @param parser The manifest parser.
* @param packageManagerDelegate The package information retriever.
@@ -113,18 +98,16 @@ public class AndroidPaymentAppFinder implements ManifestVerifyCallback {
* all Android payment apps have been found.
*/
public static void find(WebContents webContents, Set<String> methods,
- boolean requireShowInSettings, PaymentManifestDownloader downloader,
- PaymentManifestParser parser, PackageManagerDelegate packageManagerDelegate,
- PaymentAppCreatedCallback callback) {
- new AndroidPaymentAppFinder(webContents, methods, requireShowInSettings, downloader, parser,
- packageManagerDelegate, callback)
+ PaymentManifestDownloader downloader, PaymentManifestParser parser,
+ PackageManagerDelegate packageManagerDelegate, PaymentAppCreatedCallback callback) {
+ new AndroidPaymentAppFinder(
+ webContents, methods, downloader, parser, packageManagerDelegate, callback)
.findAndroidPaymentApps();
}
private AndroidPaymentAppFinder(WebContents webContents, Set<String> methods,
- boolean requireShowInSettings, PaymentManifestDownloader downloader,
- PaymentManifestParser parser, PackageManagerDelegate packageManagerDelegate,
- PaymentAppCreatedCallback callback) {
+ PaymentManifestDownloader downloader, PaymentManifestParser parser,
+ PackageManagerDelegate packageManagerDelegate, PaymentAppCreatedCallback callback) {
mWebContents = webContents;
mQueryBasicCard = methods.contains(BASIC_CARD_PAYMENT_METHOD);
mPaymentMethods = new HashSet<>();
@@ -157,8 +140,6 @@ public class AndroidPaymentAppFinder implements ManifestVerifyCallback {
ChromeActivity activity = ChromeActivity.fromWebContents(mWebContents);
mIsIncognito = activity != null && activity.getCurrentTabModel() != null
&& activity.getCurrentTabModel().isIncognito();
- mRequireShowInSettings = requireShowInSettings;
- mSettingsLookup = new Intent(AndroidPaymentApp.ACTION_PAY);
}
private void findAndroidPaymentApps() {
@@ -276,10 +257,6 @@ public class AndroidPaymentAppFinder implements ManifestVerifyCallback {
String packageName = resolveInfo.activityInfo.packageName;
AndroidPaymentApp app = mResult.get(packageName);
if (app == null) {
- if (mRequireShowInSettings) {
- mSettingsLookup.setPackage(packageName);
- if (mPackageManagerDelegate.resolveActivity(mSettingsLookup) == null) return;
- }
CharSequence label = mPackageManagerDelegate.getAppLabel(resolveInfo);
if (TextUtils.isEmpty(label)) {
Log.d(TAG,

Powered by Google App Engine
This is Rietveld 408576698