blob: 429fec3864af43c50a95a0818504ada80060e2bd [file] [log] [blame]
Tommy Nyquist46725ca2024-01-10 23:38:021# Copyright 2024 The Chromium Authors
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5if (is_android) {
6 import("//build/config/android/config.gni")
7 import("//build/config/android/rules.gni")
8 import("//third_party/jni_zero/jni_zero.gni")
9}
10
11if (is_android) {
12 android_library("factory_java") {
13 srcjar_deps = [ ":jni_headers" ]
14 sources = [ "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingServiceFactory.java" ]
15
16 deps = [
Hailey Wangfdb703b32024-04-18 21:55:2817 ":ui_delegate_java",
Tommy Nyquist46725ca2024-01-10 23:38:0218 "//base:base_java",
19 "//build/android:build_java",
20 "//chrome/browser/profiles/android:java",
21 "//components/data_sharing/public:public_java",
22 "//third_party/androidx:androidx_annotation_annotation_java",
23 "//third_party/jni_zero:jni_zero_java",
24 ]
25 }
26
Hailey Wang7a5701c2024-02-22 23:06:2027 android_resources("java_resources") {
28 sources = [
Hailey Wang13d252b42024-02-28 23:38:3629 "android/java/res/drawable/round_image_filled.xml",
Hailey Wangd9889552024-04-11 22:17:0630 "android/java/res/layout/data_sharing_invitation_dialog_footer.xml",
Hailey Wang7a5701c2024-02-22 23:06:2031 "android/java/res/layout/shared_image_tiles.xml",
Hailey Wang13d252b42024-02-28 23:38:3632 "android/java/res/layout/shared_image_tiles_count.xml",
Hailey Wang7a5701c2024-02-22 23:06:2033 "android/java/res/layout/shared_image_tiles_icon.xml",
34 "android/java/res/values/dimens.xml",
35 ]
36 }
37
38 android_library("java") {
39 resources_package = "org.chromium.chrome.browser.data_sharing"
40 sources = [
Hailey Wangfdb703b32024-04-18 21:55:2841 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingInvitationDialogCoordinator.java",
42 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingInvitationDialogMediator.java",
43 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingNotificationManager.java",
Hailey Wangfdb703b32024-04-18 21:55:2844 "android/java/src/org/chromium/chrome/browser/data_sharing/SharedImageTilesCoordinator.java",
45 "android/java/src/org/chromium/chrome/browser/data_sharing/SharedImageTilesMediator.java",
46 "android/java/src/org/chromium/chrome/browser/data_sharing/SharedImageTilesProperties.java",
47 "android/java/src/org/chromium/chrome/browser/data_sharing/SharedImageTilesViewBinder.java",
Hailey Wang7a5701c2024-02-22 23:06:2048 ]
49
50 deps = [
51 ":java_resources",
Hailey Wang477d71582024-04-04 20:16:3852 "//base:base_java",
Hailey Wangfdb703b32024-04-18 21:55:2853 "//base:base_java",
Hailey Wang477d71582024-04-04 20:16:3854 "//chrome/browser/android/intents:java",
Hailey Wangfe729972024-04-01 23:58:0955 "//chrome/browser/notifications:java",
Hailey Wangfdb703b32024-04-18 21:55:2856 "//chrome/browser/profiles/android:java",
57 "//chrome/browser/tab:java",
Hailey Wang13d252b42024-02-28 23:38:3658 "//chrome/browser/ui/android/strings:ui_strings_grd",
Hailey Wangfe729972024-04-01 23:58:0959 "//components/browser_ui/notifications/android:java",
60 "//components/browser_ui/styles/android:java_resources",
Hailey Wang7a5701c2024-02-22 23:06:2061 "//third_party/android_sdk:android_window_extensions_java",
Hailey Wangfdb703b32024-04-18 21:55:2862 "//third_party/androidx:androidx_annotation_annotation_java",
Hailey Wang7a5701c2024-02-22 23:06:2063 "//ui/android:ui_no_recycler_view_java",
64 ]
Hailey Wangfdb703b32024-04-18 21:55:2865
66 public_deps = [ ":ui_delegate_java" ]
67 }
68
69 android_library("ui_delegate_java") {
70 sources = [
71 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingUIDelegate.java",
72 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingUIDelegateImpl.java",
Ritika Gupta061326b2024-04-29 21:36:4373 "android/java/src/org/chromium/chrome/browser/data_sharing/MemberPickerListenerImpl.java",
Hailey Wangfdb703b32024-04-18 21:55:2874 "android/java/src/org/chromium/chrome/browser/data_sharing/configs/AvatarConfig.java",
75 "android/java/src/org/chromium/chrome/browser/data_sharing/configs/GroupMemberConfig.java",
76 "android/java/src/org/chromium/chrome/browser/data_sharing/configs/MemberPickerConfig.java",
77 ]
78
79 deps = [
80 "//base:base_java",
81 "//chrome/browser/profiles/android:java",
82 "//chrome/browser/tab:java",
83 "//third_party/androidx:androidx_annotation_annotation_java",
84 ]
Ritika Gupta23d5e012024-04-26 00:43:3285 if (defined(enable_data_sharing_internal) && enable_data_sharing_internal) {
Ritika Gupta061326b2024-04-29 21:36:4386 jar_excluded_patterns = [
87 "*/DataSharingUIDelegateImpl.class",
88 "*/MemberPickerListenerImpl.class",
89 ]
Ritika Gupta23d5e012024-04-26 00:43:3290 }
Hailey Wang7a5701c2024-02-22 23:06:2091 }
92
Hailey Wangfe729972024-04-01 23:58:0993 robolectric_library("junit") {
Hailey Wangfdb703b32024-04-18 21:55:2894 sources = [ "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingNotificationManagerUnitTest.java" ]
Hailey Wangfe729972024-04-01 23:58:0995 deps = [
96 ":java",
97 "//base:base_java",
98 "//base:base_junit_test_support",
99 "//chrome/browser/notifications:java",
100 "//components/browser_ui/notifications/android:java",
101 "//third_party/android_deps:robolectric_all_java",
102 "//third_party/junit:junit",
103 "//third_party/mockito:mockito_java",
104 ]
105 }
106
Tommy Nyquist46725ca2024-01-10 23:38:02107 android_library("javatests") {
108 testonly = true
109
Hailey Wangd9889552024-04-11 22:17:06110 sources = [
Hailey Wangfdb703b32024-04-18 21:55:28111 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingInvitationDialogTest.java",
Hailey Wangd9889552024-04-11 22:17:06112 "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingServiceFactoryTest.java",
113 ]
Tommy Nyquist46725ca2024-01-10 23:38:02114 deps = [
115 "//base:base_java",
116 "//base:base_java_test_support",
117 "//chrome/browser/data_sharing:factory_java",
118 "//chrome/browser/flags:java",
119 "//chrome/browser/profiles/android:java",
120 "//chrome/test/android:chrome_java_integration_test_support",
121 "//components/data_sharing/public:public_java",
Hailey Wangd9889552024-04-11 22:17:06122 "//content/public/test/android:content_java_test_support",
Tommy Nyquist46725ca2024-01-10 23:38:02123 "//third_party/androidx:androidx_test_runner_java",
124 "//third_party/hamcrest:hamcrest_core_java",
125 "//third_party/hamcrest:hamcrest_library_java",
126 "//third_party/junit:junit",
Hailey Wangd9889552024-04-11 22:17:06127 "//third_party/mockito:mockito_java",
128 "//ui/android:ui_java",
129 "//ui/android:ui_java_test_support",
Tommy Nyquist46725ca2024-01-10 23:38:02130 ]
131 }
132
133 generate_jni("jni_headers") {
134 sources = [ "android/java/src/org/chromium/chrome/browser/data_sharing/DataSharingServiceFactory.java" ]
135 }
136}