| Index: chrome/android/BUILD.gn
|
| diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
| index 27dad66c987819bfafad76c8d6373db6a362573c..124e34fb38315bcc072ec55bcf4fcc1e2ffcc378 100644
|
| --- a/chrome/android/BUILD.gn
|
| +++ b/chrome/android/BUILD.gn
|
| @@ -35,6 +35,8 @@ chrome_sync_shell_jinja_variables =
|
| default_chrome_public_jinja_variables +
|
| [ "manifest_package=org.chromium.chrome.sync_shell" ]
|
|
|
| +app_hooks_impl = "java/src/org/chromium/chrome/browser/AppHooksImpl.java"
|
| +
|
| if (enable_resource_whitelist_generation) {
|
| monochrome_resource_whitelist =
|
| "$target_gen_dir/monochrome_resource_whitelist.txt"
|
| @@ -150,6 +152,13 @@ java_strings_grd("chrome_strings_grd") {
|
| ]
|
| }
|
|
|
| +android_library("app_hooks_java") {
|
| + java_files = [ app_hooks_impl ]
|
| + deps = [
|
| + ":chrome_java",
|
| + ]
|
| +}
|
| +
|
| android_library("chrome_java") {
|
| deps = [
|
| ":chrome_java_resources",
|
| @@ -255,12 +264,16 @@ android_library("chrome_java") {
|
| android_manifest = chrome_public_android_manifest
|
|
|
| # From java_sources.gni.
|
| - java_files = chrome_java_sources
|
| + java_files = chrome_java_sources + [ app_hooks_impl ]
|
|
|
| if (enable_webvr) {
|
| java_files += chrome_vr_java_sources
|
| deps += [ "//third_party/gvr-android-sdk:gvr_common_java" ]
|
| }
|
| +
|
| + # Add the actual implementation where necessary so that downstream targets
|
| + # can provide their own implementations.
|
| + jar_excluded_patterns = [ "*/AppHooksImpl.class" ]
|
| }
|
|
|
| action("chrome_android_java_google_api_keys_srcjar") {
|
| @@ -312,6 +325,7 @@ junit_binary("chrome_junit_tests") {
|
| # From java_sources.gni.
|
| java_files = chrome_junit_test_java_sources
|
| deps = [
|
| + ":app_hooks_java",
|
| ":chrome_java",
|
| ":chrome_java_resources",
|
| "//base:base_java",
|
| @@ -382,6 +396,7 @@ android_library("chrome_test_java") {
|
| deps = [
|
| "//base:base_java",
|
| "//base:base_java_test_support",
|
| + "//chrome/android:app_hooks_java",
|
| "//chrome/android:chrome_java",
|
| "//chrome/android/webapk/libs/client:client_java",
|
| "//chrome/android/webapk/libs/common:common_java",
|
| @@ -476,6 +491,7 @@ android_library("chrome_test_vr_java") {
|
| deps = [
|
| "//base:base_java",
|
| "//base:base_java_test_support",
|
| + "//chrome/android:app_hooks_java",
|
| "//chrome/android:chrome_java",
|
| "//chrome/test/android:chrome_java_test_support",
|
| "//components/policy/android:policy_java",
|
| @@ -692,6 +708,7 @@ template("chrome_public_apk_tmpl_shared") {
|
| }
|
|
|
| deps += [
|
| + ":app_hooks_java",
|
| ":chrome_java",
|
| ":chrome_public_apk_resources",
|
| ":chrome_public_non_pak_assets",
|
| @@ -725,6 +742,7 @@ monochrome_public_apk_tmpl("monochrome_public_apk") {
|
|
|
| deps = [
|
| "//base:base_java",
|
| + "//chrome/android:app_hooks_java",
|
| "//chrome/android:chrome_java",
|
| "//chrome/android/java/templates:public_monochrome_java",
|
| ]
|
| @@ -816,6 +834,7 @@ android_library("chrome_sync_shell_test_apk_java") {
|
| deps = [
|
| "//base:base_java",
|
| "//base:base_java_test_support",
|
| + "//chrome/android:app_hooks_java",
|
| "//chrome/android:chrome_java",
|
| "//chrome/test/android:chrome_java_test_support",
|
| "//components/bookmarks/common/android:bookmarks_java",
|
|
|