# Copyright 2021 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/android/rules.gni") import("//build/config/locales.gni") import("//third_party/jni_zero/jni_zero.gni") android_aidl("autofill_aidl") { import_include = [ "java/src" ] sources = [ "java/src/org/chromium/components/autofill_public/IAutofillHintsService.aidl", "java/src/org/chromium/components/autofill_public/IViewTypeCallback.aidl", "java/src/org/chromium/components/autofill_public/ViewType.aidl", ] } android_library("java") { srcjar_deps = [ ":autofill_aidl", ":jni_headers", ] deps = [ ":features_java", "//base:base_java", "//base/version_info/android:version_constants_java", "//build/android:build_java", "//components/autofill/android:autofill_java", "//components/autofill/core/common/mojom:mojo_types_java", "//content/public/android:content_java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/jni_zero:jni_zero_java", "//ui/android:ui_no_recycler_view_java", ] sources = [ "java/src/org/chromium/components/autofill/AutofillHintsService.java", "java/src/org/chromium/components/autofill/AutofillManagerWrapper.java", "java/src/org/chromium/components/autofill/AutofillProvider.java", "java/src/org/chromium/components/autofill/AutofillProviderUMA.java", "java/src/org/chromium/components/autofill/AutofillRequest.java", "java/src/org/chromium/components/autofill/AutofillSelectionMenuItemHelper.java", "java/src/org/chromium/components/autofill/FormData.java", "java/src/org/chromium/components/autofill/FormFieldData.java", "java/src/org/chromium/components/autofill/PrefillRequest.java", "java/src/org/chromium/components/autofill/SparseArrayWithWorkaround.java", "java/src/org/chromium/components/autofill_public/ViewType.java", ] } generate_jni("jni_headers") { sources = [ "java/src/org/chromium/components/autofill/AutofillProvider.java", "java/src/org/chromium/components/autofill/FormData.java", "java/src/org/chromium/components/autofill/FormFieldData.java", ] } android_library("features_java") { srcjar_deps = [ ":jni_headers_features" ] sources = [ "java/src/org/chromium/components/autofill/AndroidAutofillFeatures.java", ] deps = [ ":features", "//base:base_java", "//build/android:build_java", "//third_party/jni_zero:jni_zero_java", ] } static_library("features") { sources = [ "android_autofill_features.cc", "android_autofill_features.h", ] deps = [ ":jni_headers_features", "//base", ] } generate_jni("jni_headers_features") { sources = [ "java/src/org/chromium/components/autofill/AndroidAutofillFeatures.java", ] } static_library("android") { sources = [ "android_autofill_bridge_factory.cc", "android_autofill_bridge_factory.h", "autofill_provider_android.cc", "autofill_provider_android.h", "autofill_provider_android_bridge.h", "autofill_provider_android_bridge_impl.cc", "autofill_provider_android_bridge_impl.h", "form_data_android.cc", "form_data_android.h", "form_data_android_bridge.h", "form_data_android_bridge_impl.cc", "form_data_android_bridge_impl.h", "form_field_data_android.cc", "form_field_data_android.h", "form_field_data_android_bridge.h", "form_field_data_android_bridge_impl.cc", "form_field_data_android_bridge_impl.h", ] public_deps = [ ":browser" ] deps = [ ":features", ":jni_headers", "//components/autofill/android:keyboard_suppressor", "//components/autofill/content/browser", "//components/password_manager/core/browser/form_parsing", "//content/public/browser", "//third_party/jni_zero", "//ui/android", ] } static_library("browser") { sources = [ "android_autofill_manager.cc", "android_autofill_manager.h", "autofill_provider.cc", "autofill_provider.h", "form_event_logger_weblayer_android.cc", "form_event_logger_weblayer_android.h", ] public_deps = [ "//components/autofill/core/browser" ] deps = [ "//components/autofill/content/browser", "//content/public/browser", ] } source_set("unit_tests") { testonly = true sources = [ "autofill_provider_android_unittest.cc", "form_data_android_unittest.cc", "form_event_logger_weblayer_android_unittest.cc", "form_field_data_android_unittest.cc", ] deps = [ ":android", ":browser", ":features", ":test_support", "//components/autofill/content/browser:test_support", "//content/test:test_support", "//testing/gmock", "//testing/gtest", ] } source_set("test_support") { testonly = true sources = [ "autofill_provider_android_test_api.h", "form_data_android_test_api.h", "mock_form_data_android_bridge.cc", "mock_form_data_android_bridge.h", "mock_form_field_data_android_bridge.cc", "mock_form_field_data_android_bridge.h", "test_autofill_provider.cc", "test_autofill_provider.h", ] public_deps = [ ":android", ":browser", ] deps = [ "//content/public/browser", "//testing/gmock", ] }