# 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. if (is_android) { import("//build/config/android/config.gni") import("//build/config/android/rules.gni") import("//chrome/browser/buildflags.gni") import("//third_party/jni_zero/jni_zero.gni") source_set("lens") { public = [ "android/lens_prefs.h" ] } generate_jni("jni_headers") { sources = [ "java/src/org/chromium/chrome/browser/lens/LensSupportStatusHelper.java", ] } source_set("impl") { sources = [ "android/lens_policy_utils.cc", "android/lens_prefs.cc", ] public_deps = [ ":lens", "//chrome/browser:browser_public_dependencies", ] deps = [ ":jni_headers", "//chrome/android:jni_headers", "//components/policy/core/common:common_constants", "//components/prefs", ] } android_library("java") { sources = [ "java/src/org/chromium/chrome/browser/lens/LensController.java" ] deps = [ ":java_resources", "//base:base_java", "//base:service_loader_java", "//chrome/browser/contextmenu:java", "//chrome/browser/ui/android/strings:ui_strings_grd", "//components/embedder_support/android:context_menu_java", "//third_party/androidx:androidx_annotation_annotation_java", "//ui/android:ui_java", ] public_deps = [ ":delegate_java", ":util_java", ] resources_package = "org.chromium.chrome.browser.lens" } android_library("delegate_java") { sources = [ "java/src/org/chromium/chrome/browser/lens/LensControllerDelegate.java", ] deps = [ ":java_resources", ":util_java", "//base:base_java", "//chrome/browser/contextmenu:java", "//chrome/browser/ui/android/strings:ui_strings_grd", "//components/embedder_support/android:context_menu_java", "//third_party/androidx:androidx_annotation_annotation_java", "//ui/android:ui_java", ] resources_package = "org.chromium.chrome.browser.lens" } android_library("util_java") { sources = [ "java/src/org/chromium/chrome/browser/lens/LensEntryPoint.java", "java/src/org/chromium/chrome/browser/lens/LensIdentityUtils.java", "java/src/org/chromium/chrome/browser/lens/LensIntentParams.java", "java/src/org/chromium/chrome/browser/lens/LensMetrics.java", "java/src/org/chromium/chrome/browser/lens/LensQueryParams.java", "java/src/org/chromium/chrome/browser/lens/LensQueryResult.java", "java/src/org/chromium/chrome/browser/lens/LensSupportStatusHelper.java", ] deps = [ "//base:base_java", "//build/android:build_java", "//chrome/browser/flags:java", "//chrome/browser/gsa:java", "//chrome/browser/profiles/android:java", "//chrome/browser/search_engines/android:java", "//chrome/browser/signin/services/android:java", "//components/search_engines/android:java", "//components/signin/public/android:java", "//content/public/android:content_java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/jni_zero:jni_zero_java", ] } android_resources("java_resources") { sources = [ "java/res/drawable/lens_icon.xml" ] } robolectric_library("junit") { sources = [ "java/src/org/chromium/chrome/browser/lens/LensControllerTest.java", "java/src/org/chromium/chrome/browser/lens/LensSupportStatusHelperUnitTest.java", ] deps = [ ":java", ":util_java", "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", "//chrome/browser/flags:java", "//chrome/browser/gsa:java", "//chrome/browser/profiles/android:java", "//chrome/browser/search_engines/android:java", "//components/search_engines/android:java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/junit", "//third_party/mockito:mockito_java", ] } } source_set("lens_identity_delegation_helper") { sources = [ "lens_identity_delegation_helper.cc", "lens_identity_delegation_helper.h", ] deps = [ "//base", "//build:branding_buildflags", "//chrome/browser/lens/sapisid", "//chrome/browser/profiles:profile", "//components/signin/public/identity_manager", "//content/public/browser", "//google_apis/common", ] } source_set("unit_tests") { testonly = true sources = [ "lens_identity_delegation_helper_unittest.cc" ] deps = [ ":lens_identity_delegation_helper", "//base", "//base/test:test_support", "//build:branding_buildflags", "//chrome/test:test_support", "//components/signin/public/identity_manager:test_support", "//content/public/browser", "//content/test:test_support", "//testing/gtest", ] }