# Copyright 2019 The Chromium Authors. All rights reserved.
# 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")

source_set("android") {
  sources = [
    "content_capture_receiver_manager_android.cc",
    "content_capture_receiver_manager_android.h",
  ]
  deps = [
    ":jni_headers",
    "//components/content_capture/browser",
  ]
}

android_library("java") {
  deps = [
    "//base:base_java",
    # "//content/public/android:content_java",
  ]
  java_files = [
    "java/src/org/chromium/components/content_capture/ContentCaptureConsumer.java",
    "java/src/org/chromium/components/content_capture/ContentCaptureData.java",
    "java/src/org/chromium/components/content_capture/ContentCaptureReceiverManager.java",
    "java/src/org/chromium/components/content_capture/FrameSession.java",
  ]
}

generate_jni("jni_headers") {
  sources = [
    "java/src/org/chromium/components/content_capture/ContentCaptureData.java",
    "java/src/org/chromium/components/content_capture/ContentCaptureReceiverManager.java",
  ]
  jni_package = "content_capture"
}
