# Copyright 2022 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("//third_party/jni_zero/jni_zero.gni") java_cpp_enum("autofill_generated_enums") { sources = [ "//chrome/browser/android/preferences/autofill/settings_navigation_helper.h", "//chrome/browser/autofill/android/android_autofill_availability_status.h", "//chrome/browser/autofill/android/autofill_profile_bridge.h", "//chrome/browser/autofill/android/save_update_address_profile_prompt_mode.h", ] } # Minimal Java library for the AutofillThirdPartyModeContentProvider which will # be included in the base module. android_library("third_party_provider_java") { sources = [ "java/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProvider.java" ] deps = [ "//base:base_java", "//base:base_shared_preferences_java", "//chrome/browser/preferences:java", "//third_party/androidx:androidx_annotation_annotation_java", ] } android_library("java") { sources = [ "java/src/org/chromium/chrome/browser/autofill/AddressNormalizerFactory.java", "java/src/org/chromium/chrome/browser/autofill/AutofillAddress.java", "java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java", "java/src/org/chromium/chrome/browser/autofill/AutofillEditorBase.java", "java/src/org/chromium/chrome/browser/autofill/AutofillImageFetcher.java", "java/src/org/chromium/chrome/browser/autofill/AutofillImageFetcherFactory.java", "java/src/org/chromium/chrome/browser/autofill/AutofillImageFetcherUtils.java", "java/src/org/chromium/chrome/browser/autofill/AutofillProfileBridge.java", "java/src/org/chromium/chrome/browser/autofill/AutofillUiUtils.java", "java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java", "java/src/org/chromium/chrome/browser/autofill/PersonalDataManagerFactory.java", "java/src/org/chromium/chrome/browser/autofill/PhoneNumberUtil.java", "java/src/org/chromium/chrome/browser/autofill/SaveUpdateAddressProfilePrompt.java", "java/src/org/chromium/chrome/browser/autofill/SaveUpdateAddressProfilePromptController.java", "java/src/org/chromium/chrome/browser/autofill/SubKeyRequesterFactory.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/AutofillAiSaveUpdateEntityPrompt.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/AutofillAiSaveUpdateEntityPromptController.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/EntityAttributeUpdateDetails.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/EntityDataManager.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/EntityDataManagerFactory.java", "java/src/org/chromium/chrome/browser/autofill/editors/address/AddressEditorCoordinator.java", "java/src/org/chromium/chrome/browser/autofill/editors/address/AddressEditorMediator.java", "java/src/org/chromium/chrome/browser/autofill/editors/address/EditorDialogView.java", "java/src/org/chromium/chrome/browser/autofill/editors/address/EditorDialogViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/editors/address/EditorProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorCoordinator.java", "java/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorMediator.java", "java/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorView.java", "java/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditTextNoAutofillView.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditorComponentsProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditorComponentsUtil.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditorComponentsViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditorDialogToolbar.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditorObserverForTest.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/EditorViewBase.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/date_field/DateFieldProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/date_field/DateFieldValidator.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/date_field/DateFieldView.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/date_field/DateFieldViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/DropdownFieldAdapter.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/DropdownFieldProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/DropdownFieldView.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/DropdownFieldViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/HintedDropDownAdapter.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/field/EditorFieldValidator.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/field/FieldProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/field/FieldView.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/text_field/TextFieldProperties.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/text_field/TextFieldView.java", "java/src/org/chromium/chrome/browser/autofill/editors/common/text_field/TextFieldViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/helpers/FaviconHelper.java", "java/src/org/chromium/chrome/browser/autofill/settings/AutofillHelpMenuProvider.java", "java/src/org/chromium/chrome/browser/autofill/settings/PersonalContextSettingsLauncher.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/AutofillAiPreference.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsCoordinator.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsFragment.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsMediator.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsProperties.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/settings/options/RadioButtonGroupThirdPartyPreference.java", "java/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextCoordinator.java", "java/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextFragment.java", "java/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextMediator.java", "java/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextNoticePreference.java", "java/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextProperties.java", "java/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextViewBinder.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetBridge.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetContent.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetCoordinator.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetMediator.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetProperties.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetView.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetViewBinder.java", ] resources_package = "org.chromium.chrome.browser.autofill" deps = [ ":java_resources", ":third_party_provider_java", "//base:base_java", "//build/android:build_java", "//chrome/android:chrome_app_java_resources", "//chrome/browser/device_reauth/android:java", "//chrome/browser/feedback/android:factory_java", "//chrome/browser/feedback/android:java", "//chrome/browser/feedback/android:java_resources", "//chrome/browser/flags:java", "//chrome/browser/language/android:java_resources", "//chrome/browser/preferences:java", "//chrome/browser/profiles/android:java", "//chrome/browser/settings:java", "//chrome/browser/signin/services/android:java", "//chrome/browser/sync/android:java", "//chrome/browser/ui/android/edge_to_edge:java", "//chrome/browser/ui/android/favicon:java", "//chrome/browser/util:java", "//components/android_autofill/browser:java", "//components/autofill/android:autofill_features_java", "//components/autofill/android:autofill_java", "//components/autofill/android:autofill_java_resources", "//components/autofill/android:autofill_payments_java_resources", "//components/autofill/android:main_autofill_java", "//components/autofill/android:payments_interfaces_java", "//components/autofill/core/browser/data_model/payments:mojo_bindings_java", "//components/browser_ui/bottomsheet/android:java", "//components/browser_ui/settings/android:java", "//components/browser_ui/styles/android:java", "//components/browser_ui/styles/android:java_resources", "//components/browser_ui/util/android:java", "//components/browser_ui/widget/android:java", "//components/browser_ui/widget/android:java_resources", "//components/device_reauth:device_reauth_java_enums", "//components/embedder_support/android:simple_factory_key_java", "//components/favicon/android:java", "//components/image_fetcher:java", "//components/payments/mojom:mojom_java", "//components/prefs/android:java", "//components/signin/public/android:java", "//components/sync/android:sync_java", "//components/user_prefs/android:java", "//content/public/android:content_full_java", "//third_party/android_deps:guava_android_java", "//third_party/android_deps:material_design_java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_annotation_annotation_jvm_java", "//third_party/androidx:androidx_appcompat_appcompat_java", "//third_party/androidx:androidx_appcompat_appcompat_resources_java", "//third_party/androidx:androidx_browser_browser_java", "//third_party/androidx:androidx_core_core_java", "//third_party/androidx:androidx_fragment_fragment_java", "//third_party/androidx:androidx_interpolator_interpolator_java", "//third_party/androidx:androidx_lifecycle_lifecycle_common_java", "//third_party/androidx:androidx_lifecycle_lifecycle_livedata_core_java", "//third_party/androidx:androidx_preference_preference_java", "//third_party/androidx:androidx_vectordrawable_vectordrawable_java", "//third_party/jni_zero:jni_zero_java", "//ui/accessibility:ax_base_java", "//ui/android:ui_no_recycler_view_java", "//ui/android:ui_utils_java", "//url:gurl_java", ] public_deps = [ "//components/autofill/android:autofill_java" ] srcjar_deps = [ ":autofill_generated_enums", ":jni_headers", "//chrome/browser/ui/autofill:autofill_ai_ui_java_enums", ] } android_library("test_support_java") { testonly = true sources = [ "java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderTestUtils.java" ] deps = [ ":java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/jni_zero:jni_zero_java", ] srcjar_deps = [ ":jni_test_headers" ] } generate_jni("jni_headers") { sources = [ "java/src/org/chromium/chrome/browser/autofill/AddressNormalizerFactory.java", "java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java", "java/src/org/chromium/chrome/browser/autofill/AutofillImageFetcher.java", "java/src/org/chromium/chrome/browser/autofill/AutofillImageFetcherFactory.java", "java/src/org/chromium/chrome/browser/autofill/AutofillProfileBridge.java", "java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java", "java/src/org/chromium/chrome/browser/autofill/PhoneNumberUtil.java", "java/src/org/chromium/chrome/browser/autofill/SaveUpdateAddressProfilePrompt.java", "java/src/org/chromium/chrome/browser/autofill/SaveUpdateAddressProfilePromptController.java", "java/src/org/chromium/chrome/browser/autofill/SubKeyRequesterFactory.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/AutofillAiSaveUpdateEntityPrompt.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/AutofillAiSaveUpdateEntityPromptController.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/EntityAttributeUpdateDetails.java", "java/src/org/chromium/chrome/browser/autofill/autofill_ai/EntityDataManager.java", "java/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetBridge.java", ] } android_resources("java_resources") { deps = [ "//components/browser_ui/settings/android:java_resources", "//components/strings:components_strings_grd", "//ui/android:ui_java_resources", ] sources = [ "java/res/drawable-night/autofill_wallet_reminder_notice_illustration.xml", "java/res/drawable/account_box.xml", "java/res/drawable/autofill_editor_notice_background.xml", "java/res/drawable/autofill_wallet_reminder_notice_illustration.xml", "java/res/drawable/calendar_month_24dp.xml", "java/res/drawable/finance.xml", "java/res/drawable/google_24dp.xml", "java/res/drawable/insight_spark.xml", "java/res/drawable/personal_recommendations.xml", "java/res/drawable/store_locally_tooltip_background.xml", "java/res/layout/autofill_ai_attribute_info.xml", "java/res/layout/autofill_ai_attribute_info_with_edit_button.xml", "java/res/layout/autofill_ai_preference.xml", "java/res/layout/autofill_ai_save_entity_prompt.xml", "java/res/layout/autofill_ai_settings_info_item.xml", "java/res/layout/autofill_editor_base.xml", "java/res/layout/autofill_editor_base_buttons.xml", "java/res/layout/autofill_editor_dialog.xml", "java/res/layout/autofill_editor_dialog_dropdown.xml", "java/res/layout/autofill_editor_dialog_non_editable_textview.xml", "java/res/layout/autofill_editor_dialog_notice.xml", "java/res/layout/autofill_editor_dialog_textview.xml", "java/res/layout/autofill_editor_toolbar_icon.xml", "java/res/layout/autofill_local_card_editor.xml", "java/res/layout/autofill_local_iban_editor.xml", "java/res/layout/autofill_migrate_address_profile_prompt.xml", "java/res/layout/autofill_personal_context_expandable_notice.xml", "java/res/layout/autofill_save_address_profile_prompt.xml", "java/res/layout/autofill_update_address_profile_prompt.xml", "java/res/layout/autofill_vcn_enroll_bottom_sheet_content.xml", "java/res/layout/autofill_wallet_reminder_notice_bottom_sheet.xml", "java/res/layout/radio_button_group_third_party_preference.xml", "java/res/menu/prefeditor_editor_menu.xml", "java/res/values/dimens.xml", "java/res/values/ids.xml", "java/res/xml/autofill_and_passwords_preferences.xml", "java/res/xml/autofill_options_preferences.xml", "java/res/xml/autofill_personal_context_preferences.xml", ] } generate_jni("jni_test_headers") { sources = [ "java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderTestUtils.java" ] } android_library("test_java") { testonly = true resources_package = "org.chromium.chrome.browser.autofill" sources = [ "javatest/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProviderIntegrationTest.java", "javatest/src/org/chromium/chrome/browser/autofill/SaveUpdateAddressProfilePromptRenderTest.java", "javatest/src/org/chromium/chrome/browser/autofill/autofill_ai/AutofillAiSaveUpdateEntityPromptRenderTest.java", "javatest/src/org/chromium/chrome/browser/autofill/editors/address/AddressEditorRenderTest.java", "javatest/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/DropdownFieldViewTest.java", "javatest/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsRenderTest.java", "javatest/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextSettingsRenderTest.java", "javatest/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetRenderTest.java", ] deps = [ ":java", ":third_party_provider_java", "//base:base_java", "//base:base_java_test_support", "//chrome/android:chrome_java", "//chrome/android:chrome_test_util_java", "//chrome/android/javatests:chrome_test_java_helper", "//chrome/browser/feedback/android:java", "//chrome/browser/flags:java", "//chrome/browser/profiles/android:java", "//chrome/browser/signin/services/android:java", "//chrome/browser/sync/android:java", "//chrome/browser/ui/android/night_mode:night_mode_java_test_support", "//chrome/browser/util:java", "//chrome/test/android:chrome_java_integration_test_support", "//components/autofill/android:autofill_features_java", "//components/autofill/android:main_autofill_java", "//components/browser_ui/bottomsheet/android:java", "//components/browser_ui/bottomsheet/android/test:java", "//components/signin/public/android:java", "//components/sync/android:sync_java", "//content/public/test/android:content_java_test_support", "//third_party/android_deps:material_design_java", "//third_party/androidx:androidx_test_core_java", "//third_party/androidx:androidx_test_rules_java", "//third_party/androidx:androidx_test_runner_java", "//third_party/hamcrest:hamcrest_java", "//third_party/jni_zero:jni_zero_java", "//third_party/junit", "//third_party/mockito:mockito_java", "//ui/android:ui_full_java", "//ui/android:ui_java_test_support", "//ui/android:ui_utils_java", ] } robolectric_library("junit") { resources_package = "org.chromium.chrome.browser.autofill" sources = [ "junit/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProviderTest.java", "junit/src/org/chromium/chrome/browser/autofill/SaveUpdateAddressProfilePromptTest.java", "junit/src/org/chromium/chrome/browser/autofill/autofill_ai/AutofillAiSaveUpdateEntityPromptTest.java", "junit/src/org/chromium/chrome/browser/autofill/autofill_ai/EntityDataManagerTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/address/AddressEditorTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorModuleTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/autofill_ai/EntityEditorViewTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/common/date_field/DateFieldViewTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/common/dropdown_field/DropdownFieldViewUnitTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/common/text_field/TextFieldViewUnitTest.java", "junit/src/org/chromium/chrome/browser/autofill/editors/utils/TestUtils.java", "junit/src/org/chromium/chrome/browser/autofill/settings/options/AutofillOptionsTest.java", "junit/src/org/chromium/chrome/browser/autofill/settings/personal_context/AutofillPersonalContextTest.java", "junit/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetBridgeTest.java", "junit/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetContentTest.java", "junit/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetMediatorTest.java", "junit/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetModuleTest.java", "junit/src/org/chromium/chrome/browser/autofill/wallet_reminder_notice/AutofillWalletReminderNoticeBottomSheetViewTest.java", ] deps = [ ":java", ":java_resources", ":third_party_provider_java", "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", "//chrome/android:chrome_java", "//chrome/browser/device_reauth/android:java", "//chrome/browser/feedback/android:factory_java", "//chrome/browser/feedback/android:java", "//chrome/browser/flags:java", "//chrome/browser/preferences:java", "//chrome/browser/profiles/android:java", "//chrome/browser/settings:java", "//chrome/browser/settings:search_java", "//chrome/browser/signin/services/android:java", "//chrome/browser/sync/android:java", "//chrome/test/android:chrome_java_unit_test_support", "//components/autofill/android:autofill_ai_test_utils_java", "//components/autofill/android:autofill_features_java", "//components/autofill/android:main_autofill_java", "//components/browser_ui/bottomsheet/android:factory_java", "//components/browser_ui/bottomsheet/android:java", "//components/browser_ui/bottomsheet/android:manager_java", "//components/browser_ui/settings/android:java", "//components/browser_ui/styles/android:java", "//components/browser_ui/widget/android:java", "//components/device_reauth:device_reauth_java_enums", "//components/prefs/android:java", "//components/signin/public/android:java", "//components/sync/android:sync_java", "//components/user_prefs/android:java", "//content/public/android:content_full_java", "//google_apis/gaia/android:java", "//third_party/android_deps:material_design_java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_appcompat_appcompat_java", "//third_party/androidx:androidx_core_core_java", "//third_party/androidx:androidx_fragment_fragment_java", "//third_party/androidx:androidx_fragment_fragment_testing_java", "//third_party/androidx:androidx_lifecycle_lifecycle_common_java", "//third_party/androidx:androidx_lifecycle_lifecycle_runtime_java", "//third_party/androidx:androidx_preference_preference_java", "//third_party/androidx:androidx_recyclerview_recyclerview_java", "//third_party/androidx:androidx_test_core_java", "//third_party/androidx:androidx_test_ext_junit_java", "//third_party/androidx:androidx_test_runner_java", "//third_party/google-truth:google_truth_java", "//third_party/hamcrest:hamcrest_java", "//third_party/jni_zero:jni_zero_java", "//third_party/junit", "//third_party/mockito:mockito_java", "//ui/accessibility:ax_base_java", "//ui/accessibility:ui_accessibility_test_support_java", "//ui/android:ui_full_java", "//ui/android:ui_java_test_support", ] }