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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java

Issue 2110543004: Move JNI bindings for url_formatter from chrome to //components/url_formatter (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser.payments; 5 package org.chromium.chrome.browser.payments;
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.graphics.Bitmap; 8 import android.graphics.Bitmap;
9 import android.os.Handler; 9 import android.os.Handler;
10 import android.text.TextUtils; 10 import android.text.TextUtils;
11 11
12 import org.chromium.base.Callback; 12 import org.chromium.base.Callback;
13 import org.chromium.base.Log; 13 import org.chromium.base.Log;
14 import org.chromium.base.VisibleForTesting; 14 import org.chromium.base.VisibleForTesting;
15 import org.chromium.base.metrics.RecordHistogram; 15 import org.chromium.base.metrics.RecordHistogram;
16 import org.chromium.chrome.R; 16 import org.chromium.chrome.R;
17 import org.chromium.chrome.browser.autofill.PersonalDataManager; 17 import org.chromium.chrome.browser.autofill.PersonalDataManager;
18 import org.chromium.chrome.browser.autofill.PersonalDataManager.AutofillProfile; 18 import org.chromium.chrome.browser.autofill.PersonalDataManager.AutofillProfile;
19 import org.chromium.chrome.browser.favicon.FaviconHelper; 19 import org.chromium.chrome.browser.favicon.FaviconHelper;
20 import org.chromium.chrome.browser.payments.ui.Completable; 20 import org.chromium.chrome.browser.payments.ui.Completable;
21 import org.chromium.chrome.browser.payments.ui.LineItem; 21 import org.chromium.chrome.browser.payments.ui.LineItem;
22 import org.chromium.chrome.browser.payments.ui.PaymentInformation; 22 import org.chromium.chrome.browser.payments.ui.PaymentInformation;
23 import org.chromium.chrome.browser.payments.ui.PaymentOption; 23 import org.chromium.chrome.browser.payments.ui.PaymentOption;
24 import org.chromium.chrome.browser.payments.ui.PaymentRequestUI; 24 import org.chromium.chrome.browser.payments.ui.PaymentRequestUI;
25 import org.chromium.chrome.browser.payments.ui.SectionInformation; 25 import org.chromium.chrome.browser.payments.ui.SectionInformation;
26 import org.chromium.chrome.browser.payments.ui.ShoppingCart; 26 import org.chromium.chrome.browser.payments.ui.ShoppingCart;
27 import org.chromium.chrome.browser.profiles.Profile; 27 import org.chromium.chrome.browser.profiles.Profile;
28 import org.chromium.chrome.browser.util.UrlUtilities;
29 import org.chromium.components.safejson.JsonSanitizer; 28 import org.chromium.components.safejson.JsonSanitizer;
29 import org.chromium.components.url_formatter.UrlFormatter;
30 import org.chromium.content_public.browser.WebContents; 30 import org.chromium.content_public.browser.WebContents;
31 import org.chromium.mojo.system.MojoException; 31 import org.chromium.mojo.system.MojoException;
32 import org.chromium.mojom.payments.PaymentComplete; 32 import org.chromium.mojom.payments.PaymentComplete;
33 import org.chromium.mojom.payments.PaymentDetails; 33 import org.chromium.mojom.payments.PaymentDetails;
34 import org.chromium.mojom.payments.PaymentErrorReason; 34 import org.chromium.mojom.payments.PaymentErrorReason;
35 import org.chromium.mojom.payments.PaymentItem; 35 import org.chromium.mojom.payments.PaymentItem;
36 import org.chromium.mojom.payments.PaymentMethodData; 36 import org.chromium.mojom.payments.PaymentMethodData;
37 import org.chromium.mojom.payments.PaymentOptions; 37 import org.chromium.mojom.payments.PaymentOptions;
38 import org.chromium.mojom.payments.PaymentRequest; 38 import org.chromium.mojom.payments.PaymentRequest;
39 import org.chromium.mojom.payments.PaymentRequestClient; 39 import org.chromium.mojom.payments.PaymentRequestClient;
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 public PaymentRequestImpl(Activity context, WebContents webContents, 175 public PaymentRequestImpl(Activity context, WebContents webContents,
176 PaymentRequestDismissObserver dismissObserver) { 176 PaymentRequestDismissObserver dismissObserver) {
177 assert context != null; 177 assert context != null;
178 assert webContents != null; 178 assert webContents != null;
179 assert dismissObserver != null; 179 assert dismissObserver != null;
180 180
181 mContext = context; 181 mContext = context;
182 mDismissObserver = dismissObserver; 182 mDismissObserver = dismissObserver;
183 mMerchantName = webContents.getTitle(); 183 mMerchantName = webContents.getTitle();
184 // The feature is available only in secure context, so it's OK to not sh ow HTTPS. 184 // The feature is available only in secure context, so it's OK to not sh ow HTTPS.
185 mOrigin = UrlUtilities.formatUrlForSecurityDisplay(webContents.getVisibl eUrl(), false); 185 mOrigin = UrlFormatter.formatUrlForSecurityDisplay(webContents.getVisibl eUrl(), false);
186 186
187 final FaviconHelper faviconHelper = new FaviconHelper(); 187 final FaviconHelper faviconHelper = new FaviconHelper();
188 faviconHelper.getLocalFaviconImageForURL(Profile.getLastUsedProfile(), 188 faviconHelper.getLocalFaviconImageForURL(Profile.getLastUsedProfile(),
189 webContents.getVisibleUrl(), 189 webContents.getVisibleUrl(),
190 mContext.getResources().getDimensionPixelSize(R.dimen.payments_f avicon_size), 190 mContext.getResources().getDimensionPixelSize(R.dimen.payments_f avicon_size),
191 new FaviconHelper.FaviconImageCallback() { 191 new FaviconHelper.FaviconImageCallback() {
192 @Override 192 @Override
193 public void onFaviconAvailable(Bitmap bitmap, String iconUrl ) { 193 public void onFaviconAvailable(Bitmap bitmap, String iconUrl ) {
194 faviconHelper.destroy(); 194 faviconHelper.destroy();
195 if (bitmap == null) return; 195 if (bitmap == null) return;
(...skipping 899 matching lines...) Expand 10 before | Expand all | Expand 10 after
1095 private void recordAbortReasonHistogram(int abortReason) { 1095 private void recordAbortReasonHistogram(int abortReason) {
1096 assert abortReason < PaymentRequestMetrics.ABORT_REASON_MAX; 1096 assert abortReason < PaymentRequestMetrics.ABORT_REASON_MAX;
1097 if (mHasRecordedAbortReason) return; 1097 if (mHasRecordedAbortReason) return;
1098 1098
1099 mHasRecordedAbortReason = true; 1099 mHasRecordedAbortReason = true;
1100 RecordHistogram.recordEnumeratedHistogram( 1100 RecordHistogram.recordEnumeratedHistogram(
1101 "PaymentRequest.CheckoutFunnel.Aborted", abortReason, 1101 "PaymentRequest.CheckoutFunnel.Aborted", abortReason,
1102 PaymentRequestMetrics.ABORT_REASON_MAX); 1102 PaymentRequestMetrics.ABORT_REASON_MAX);
1103 } 1103 }
1104 } 1104 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698