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 |