| # Copyright 2020 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") |
| |
| source_set("android") { |
| sources = [ |
| "features.cc", |
| "features.h", |
| "notification_feature_map.cc", |
| ] |
| deps = [ |
| ":notification_jni_headers", |
| "//base", |
| ] |
| } |
| |
| android_library("java") { |
| sources = [ |
| "java/src/org/chromium/components/browser_ui/notifications/AsyncNotificationManagerProxyImpl.java", |
| "java/src/org/chromium/components/browser_ui/notifications/BaseNotificationManagerProxy.java", |
| "java/src/org/chromium/components/browser_ui/notifications/BaseNotificationManagerProxyFactory.java", |
| "java/src/org/chromium/components/browser_ui/notifications/BitmapUtils.java", |
| "java/src/org/chromium/components/browser_ui/notifications/ForegroundServiceUtils.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationManagerProxy.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationManagerProxyImpl.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationMetadata.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationWrapper.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationWrapperBuilder.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationWrapperCompatBuilder.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationWrapperStandardBuilder.java", |
| "java/src/org/chromium/components/browser_ui/notifications/PendingIntentProvider.java", |
| "java/src/org/chromium/components/browser_ui/notifications/PendingNotificationTask.java", |
| "java/src/org/chromium/components/browser_ui/notifications/StatusBarNotificationAdaptor.java", |
| "java/src/org/chromium/components/browser_ui/notifications/ThrottlingNotificationScheduler.java", |
| "java/src/org/chromium/components/browser_ui/notifications/channels/ChannelDefinitions.java", |
| "java/src/org/chromium/components/browser_ui/notifications/channels/ChannelsInitializer.java", |
| ] |
| |
| deps = [ |
| ":utils_java", |
| "//base:base_java", |
| "//build/android:build_java", |
| "//components/browser_ui/util/android:java", |
| "//third_party/androidx:androidx_annotation_annotation_java", |
| "//third_party/androidx:androidx_core_core_java", |
| "//third_party/androidx:androidx_media_media_java", |
| "//third_party/jni_zero:jni_zero_java", |
| "//ui/android:ui_java", |
| ] |
| } |
| |
| generate_jni("notification_jni_headers") { |
| sources = [ "java/src/org/chromium/components/browser_ui/notifications/NotificationFeatureMap.java" ] |
| } |
| |
| android_library("utils_java") { |
| sources = [ |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationFeatureMap.java", |
| "java/src/org/chromium/components/browser_ui/notifications/NotificationProxyUtils.java", |
| ] |
| |
| deps = [ |
| "//base:base_java", |
| "//build/android:build_java", |
| "//third_party/androidx:androidx_annotation_annotation_java", |
| "//third_party/androidx:androidx_core_core_java", |
| "//third_party/jni_zero:jni_zero_java", |
| ] |
| |
| srcjar_deps = [ ":notification_jni_headers" ] |
| } |
| |
| android_library("test_support_java") { |
| testonly = true |
| |
| sources = [ "java/src/org/chromium/components/browser_ui/notifications/MockNotificationManagerProxy.java" ] |
| deps = [ |
| ":java", |
| "//base:base_java", |
| "//content/public/test/android:content_java_test_support", |
| "//third_party/androidx:androidx_annotation_annotation_java", |
| ] |
| } |