| OLD | NEW |
| 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.autofill; | 5 package org.chromium.chrome.browser.autofill; |
| 6 | 6 |
| 7 import android.content.Context; | |
| 8 | |
| 9 import org.chromium.base.annotations.CalledByNative; | 7 import org.chromium.base.annotations.CalledByNative; |
| 10 import org.chromium.base.annotations.JNINamespace; | 8 import org.chromium.base.annotations.JNINamespace; |
| 11 import org.chromium.content_public.browser.WebContents; | 9 import org.chromium.content_public.browser.WebContents; |
| 12 | 10 |
| 13 /** Native bridge for credit card scanner. */ | 11 /** Native bridge for credit card scanner. */ |
| 14 @JNINamespace("autofill") | 12 @JNINamespace("autofill") |
| 15 public class CreditCardScannerBridge implements CreditCardScanner.Delegate { | 13 public class CreditCardScannerBridge implements CreditCardScanner.Delegate { |
| 16 private final long mNativeScanner; | 14 private final long mNativeScanner; |
| 17 private final CreditCardScanner mScanner; | 15 private final CreditCardScanner mScanner; |
| 18 | 16 |
| 19 @CalledByNative | 17 @CalledByNative |
| 20 private static CreditCardScannerBridge create( | 18 private static CreditCardScannerBridge create(long nativeScanner, WebContent
s webContents) { |
| 21 long nativeScanner, Context context, WebContents webContents) { | 19 return new CreditCardScannerBridge(nativeScanner, webContents); |
| 22 return new CreditCardScannerBridge(nativeScanner, context, webContents); | |
| 23 } | 20 } |
| 24 | 21 |
| 25 private CreditCardScannerBridge(long nativeScanner, Context context, WebCont
ents webContents) { | 22 private CreditCardScannerBridge(long nativeScanner, WebContents webContents)
{ |
| 26 mNativeScanner = nativeScanner; | 23 mNativeScanner = nativeScanner; |
| 27 mScanner = CreditCardScanner.create(context, webContents, this); | 24 mScanner = CreditCardScanner.create(webContents, this); |
| 28 } | 25 } |
| 29 | 26 |
| 30 @CalledByNative | 27 @CalledByNative |
| 31 private boolean canScan() { | 28 private boolean canScan() { |
| 32 return mScanner.canScan(); | 29 return mScanner.canScan(); |
| 33 } | 30 } |
| 34 | 31 |
| 35 @CalledByNative | 32 @CalledByNative |
| 36 private void scan() { | 33 private void scan() { |
| 37 mScanner.scan(); | 34 mScanner.scan(); |
| 38 } | 35 } |
| 39 | 36 |
| 40 @Override | 37 @Override |
| 41 public void onScanCancelled() { | 38 public void onScanCancelled() { |
| 42 nativeScanCancelled(mNativeScanner); | 39 nativeScanCancelled(mNativeScanner); |
| 43 } | 40 } |
| 44 | 41 |
| 45 @Override | 42 @Override |
| 46 public void onScanCompleted( | 43 public void onScanCompleted( |
| 47 String cardHolderName, String cardNumber, int expirationMonth, int e
xpirationYear) { | 44 String cardHolderName, String cardNumber, int expirationMonth, int e
xpirationYear) { |
| 48 nativeScanCompleted( | 45 nativeScanCompleted( |
| 49 mNativeScanner, cardHolderName, cardNumber, expirationMonth, exp
irationYear); | 46 mNativeScanner, cardHolderName, cardNumber, expirationMonth, exp
irationYear); |
| 50 } | 47 } |
| 51 | 48 |
| 52 private native void nativeScanCancelled(long nativeCreditCardScannerViewAndr
oid); | 49 private native void nativeScanCancelled(long nativeCreditCardScannerViewAndr
oid); |
| 53 private native void nativeScanCompleted(long nativeCreditCardScannerViewAndr
oid, | 50 private native void nativeScanCompleted(long nativeCreditCardScannerViewAndr
oid, |
| 54 String cardHolderName, String cardNumber, int expirationMonth, int e
xpirationYear); | 51 String cardHolderName, String cardNumber, int expirationMonth, int e
xpirationYear); |
| 55 } | 52 } |
| OLD | NEW |