# Copyright 2015 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/config.gni") import("//build/config/android/rules.gni") source_set("native") { deps = [ ":native_jni", "//android_webview/common:version", "//base", "//base/third_party/dynamic_annotations:dynamic_annotations", "//cc:cc", "//components/autofill/content/browser:browser", "//components/devtools_http_handler:devtools_http_handler", "//components/web_contents_delegate_android:web_contents_delegate_android", "//content/public/common", "//device/battery:mojo_bindings", "//media/base/android:android", "//net", "//skia", "//storage/browser", "//storage/common", "//third_party/boringssl", "//ui/base", "//ui/gfx", "//ui/gfx/geometry:geometry", ] include_dirs = [ "//skia/config", "//third_party/protobuf", ] sources = [ "android_protocol_handler.cc", "android_protocol_handler.h", "android_webview_jni_registrar.cc", "android_webview_jni_registrar.h", "aw_autofill_client.cc", "aw_autofill_client.h", "aw_browser_dependency_factory.cc", "aw_browser_dependency_factory.h", "aw_contents.cc", "aw_contents.h", "aw_contents_background_thread_client.cc", "aw_contents_background_thread_client.h", "aw_contents_client_bridge.cc", "aw_contents_client_bridge.h", "aw_contents_io_thread_client_impl.cc", "aw_contents_io_thread_client_impl.h", "aw_contents_lifecycle_notifier.cc", "aw_contents_lifecycle_notifier.h", "aw_contents_statics.cc", "aw_contents_statics.h", "aw_debug.cc", "aw_debug.h", "aw_dev_tools_server.cc", "aw_dev_tools_server.h", "aw_form_database.cc", "aw_form_database.h", "aw_http_auth_handler.cc", "aw_http_auth_handler.h", "aw_locale_manager_impl.cc", "aw_locale_manager_impl.h", "aw_media_url_interceptor.cc", "aw_media_url_interceptor.h", "aw_message_port_service_impl.cc", "aw_message_port_service_impl.h", "aw_metrics_switch.cc", "aw_metrics_switch.h", "aw_pdf_exporter.cc", "aw_pdf_exporter.h", "aw_picture.cc", "aw_picture.h", "aw_quota_manager_bridge_impl.cc", "aw_quota_manager_bridge_impl.h", "aw_resource.cc", "aw_resource.h", "aw_settings.cc", "aw_settings.h", "aw_web_contents_delegate.cc", "aw_web_contents_delegate.h", "aw_web_contents_view_delegate.cc", "aw_web_contents_view_delegate.h", "aw_web_preferences_populater_impl.cc", "aw_web_preferences_populater_impl.h", "aw_web_resource_response_impl.cc", "aw_web_resource_response_impl.h", "cookie_manager.cc", "cookie_manager.h", "input_stream_impl.cc", "input_stream_impl.h", "java_browser_view_renderer_helper.cc", "java_browser_view_renderer_helper.h", "net_init_native_callback.cc", "permission/aw_permission_request.cc", "permission/aw_permission_request.h", "permission/aw_permission_request_delegate.cc", "permission/aw_permission_request_delegate.h", "permission/media_access_permission_request.cc", "permission/media_access_permission_request.h", "permission/permission_request_handler.cc", "permission/permission_request_handler.h", "permission/permission_request_handler_client.cc", "permission/permission_request_handler_client.h", "permission/simple_permission_request.cc", "permission/simple_permission_request.h", "state_serializer.cc", "state_serializer.h", "token_binding_manager_bridge.cc", "token_binding_manager_bridge.h", ] if (enable_video_hole) { deps += [ "//components/external_video_surface:external_video_surface" ] } libs = [ "jnigraphics" ] } generate_jni("native_jni") { sources = [ "../java/src/org/chromium/android_webview/AndroidProtocolHandler.java", "../java/src/org/chromium/android_webview/AwAutofillClient.java", "../java/src/org/chromium/android_webview/AwContents.java", "../java/src/org/chromium/android_webview/AwContentsBackgroundThreadClient.java", "../java/src/org/chromium/android_webview/AwContentsClientBridge.java", "../java/src/org/chromium/android_webview/AwContentsIoThreadClient.java", "../java/src/org/chromium/android_webview/AwContentsLifecycleNotifier.java", "../java/src/org/chromium/android_webview/AwContentsStatics.java", "../java/src/org/chromium/android_webview/AwCookieManager.java", "../java/src/org/chromium/android_webview/AwDebug.java", "../java/src/org/chromium/android_webview/AwDevToolsServer.java", "../java/src/org/chromium/android_webview/AwFormDatabase.java", "../java/src/org/chromium/android_webview/AwHttpAuthHandler.java", "../java/src/org/chromium/android_webview/AwMessagePortService.java", "../java/src/org/chromium/android_webview/AwMetricsServiceClient.java", "../java/src/org/chromium/android_webview/AwPdfExporter.java", "../java/src/org/chromium/android_webview/AwPicture.java", "../java/src/org/chromium/android_webview/AwQuotaManagerBridge.java", "../java/src/org/chromium/android_webview/AwResource.java", "../java/src/org/chromium/android_webview/AwSettings.java", "../java/src/org/chromium/android_webview/AwTokenBindingManager.java", "../java/src/org/chromium/android_webview/AwWebContentsDelegate.java", "../java/src/org/chromium/android_webview/AwWebResourceResponse.java", "../java/src/org/chromium/android_webview/InputStreamUtil.java", "../java/src/org/chromium/android_webview/JavaBrowserViewRendererHelper.java", "../java/src/org/chromium/android_webview/permission/AwPermissionRequest.java", ] jni_package = "android_webview" deps = [ ":cancellation_signal_android_jar_jni_headers", ] } generate_jar_jni("cancellation_signal_android_jar_jni_headers") { classes = [ "android/os/CancellationSignal.class" ] jni_package = "android_webview" } java_cpp_enum("aw_permission_request_resource") { sources = [ "permission/aw_permission_request.h", ] }