Skip to content

Commit

Permalink
[WebLayer M79] Merge weblayer changes since 92763f8
Browse files Browse the repository at this point in the history
Bug: 1026050
Change-Id: I0471104c8466e2eb47c5e285881cbde25cd30ba7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1922701
Reviewed-by: Clark DuVall <cduvall@chromium.org>
Cr-Commit-Position: refs/branch-heads/3945@{#729}
Cr-Branched-From: e4635ff-refs/heads/master@{#706915}
  • Loading branch information
clarkduvall committed Nov 20, 2019
1 parent 63c4a4b commit 757c57e
Show file tree
Hide file tree
Showing 131 changed files with 1,945 additions and 402 deletions.
3 changes: 3 additions & 0 deletions BUILD.gn
Expand Up @@ -199,6 +199,9 @@ group("gn_all") {
"//weblayer/shell:weblayer_shell",
"//weblayer/test:weblayer_browsertests",
]
if (is_android) {
deps += [ "//weblayer/browser/android/javatests:weblayer_instrumentation_test_apk" ]
}
}

if (!is_ios && !is_android) {
Expand Down
31 changes: 23 additions & 8 deletions android_webview/BUILD.gn
Expand Up @@ -17,6 +17,7 @@ import("//components/spellcheck/spellcheck_build_features.gni")
import("//tools/grit/repack.gni")
import("//tools/resources/generate_resource_whitelist.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
import("//weblayer/variables.gni")

if (enable_resource_whitelist_generation) {
system_webview_pak_whitelist =
Expand Down Expand Up @@ -134,7 +135,6 @@ repack("repack_pack") {
"$root_gen_dir/content/content_resources.pak",
"$root_gen_dir/net/net_resources.pak",
"$root_gen_dir/third_party/blink/public/resources/blink_resources.pak",
"$root_gen_dir/weblayer/weblayer_resources.pak",
"$target_gen_dir/aw_resources.pak",
"$target_gen_dir/components_resources.pak",
"$target_gen_dir/mojo_bindings_resources.pak",
Expand All @@ -148,14 +148,18 @@ repack("repack_pack") {
"//content:resources",
"//net:net_resources",
"//third_party/blink/public:resources",
"//weblayer:resources",
]
output = "$target_gen_dir/resources.pak"

if (enable_resource_whitelist_generation) {
repack_whitelist = system_webview_pak_whitelist
deps += [ ":system_webview_pak_whitelist" ]
}

if (webview_includes_weblayer) {
sources += [ "$root_gen_dir/weblayer/weblayer_resources.pak" ]
deps += [ "//weblayer:resources" ]
}
}

repack("repack_100_percent") {
Expand Down Expand Up @@ -408,11 +412,15 @@ source_set("webview_entry_point") {
deps = [
":common",
"//base",
"//weblayer:weblayer_lib",
]
sources = [
"lib/webview_entry_point.cc",
]

if (webview_includes_weblayer) {
defines = [ "WEBVIEW_INCLUDES_WEBLAYER" ]
deps += [ "//weblayer:weblayer_lib" ]
}
}

shared_library("libwebviewchromium") {
Expand Down Expand Up @@ -521,12 +529,16 @@ source_set("common") {
"//gpu/command_buffer/service",
"//gpu/ipc:gl_in_process_context",
"//ui/events:gesture_detection",
"//weblayer:weblayer_lib",
]

if (enable_gwp_asan) {
deps += [ "//components/gwp_asan/client" ]
}

if (webview_includes_weblayer) {
defines = [ "WEBVIEW_INCLUDES_WEBLAYER" ]
deps += [ "//weblayer:weblayer_lib" ]
}
}

java_group("android_webview_java") {
Expand Down Expand Up @@ -675,17 +687,20 @@ android_library("browser_java") {
"//third_party/android_deps:androidx_annotation_annotation_java",
"//third_party/blink/public:blink_headers_java",
"//ui/android:ui_java",

# These are needed for WebLayer.
"//components/viz/service:service_java",
"//weblayer/browser/java",
]
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]

if (enable_spellcheck) {
deps += [ "//components/spellcheck/browser/android:java" ]
}

if (webview_includes_weblayer) {
deps += [
"//components/viz/service:service_java",
"//weblayer/browser/java",
]
}

srcjar_deps = [
"//android_webview/browser:browser_enums",
"//components/safe_browsing/db:sb_threat_values",
Expand Down
6 changes: 6 additions & 0 deletions android_webview/lib/webview_entry_point.cc
Expand Up @@ -5,16 +5,22 @@
#include "android_webview/lib/webview_jni_onload.h"
#include "base/android/jni_android.h"
#include "base/android/library_loader/library_loader_hooks.h"

#if defined(WEBVIEW_INCLUDES_WEBLAYER)
#include "weblayer/app/jni_onload.h"
#endif

namespace {

bool NativeInit(base::android::LibraryProcessType library_process_type) {
switch (library_process_type) {
#if defined(WEBVIEW_INCLUDES_WEBLAYER)
case base::android::PROCESS_WEBLAYER:
case base::android::PROCESS_WEBLAYER_CHILD:
return weblayer::OnJNIOnLoadInit();
break;
#endif

default:
return android_webview::OnJNIOnLoadInit();
}
Expand Down
11 changes: 6 additions & 5 deletions android_webview/system_webview_apk_tmpl.gni
Expand Up @@ -32,14 +32,15 @@ template("system_webview_apk_tmpl") {
"//android_webview/glue",
"//android_webview/support_library:support_lib_glue_java",
"//base:base_java",
"//weblayer:locale_pak_assets",
]

target_sdk_version = android_sdk_version
locale_config_java_packages = [
webview_locale_config_java_package,
weblayer_locale_config_java_package,
]
locale_config_java_packages = [ webview_locale_config_java_package ]

if (webview_includes_weblayer) {
deps += [ "//weblayer:locale_pak_assets" ]
locale_config_java_packages += [ weblayer_locale_config_java_package ]
}

if (!defined(alternative_android_sdk_dep)) {
alternative_android_sdk_dep = webview_framework_dep
Expand Down
8 changes: 7 additions & 1 deletion android_webview/variables.gni
Expand Up @@ -2,6 +2,8 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//weblayer/variables.gni")

system_webview_android_manifest =
"$root_gen_dir/android_webview/system_webview_apk/AndroidManifest.xml"
trichrome_webview_android_manifest =
Expand All @@ -10,7 +12,11 @@ trichrome_webview_android_manifest =
upstream_only_webview_deps = [
"//android_webview:platform_service_bridge_upstream_implementation_java",
"//android_webview:system_webview_resources",
"//weblayer/browser/java:gms_bridge_upstream_impl_java",
]

if (webview_includes_weblayer) {
upstream_only_webview_deps +=
[ "//weblayer/browser/java:gms_bridge_upstream_impl_java" ]
}

webview_locale_config_java_package = "org.chromium.android_webview"
1 change: 1 addition & 0 deletions base/trace_event/builtin_categories.h
Expand Up @@ -143,6 +143,7 @@
X("vk") \
X("wayland") \
X("webaudio") \
X("weblayer") \
X("WebCore") \
X("webrtc") \
X("xr") \
Expand Down
32 changes: 19 additions & 13 deletions chrome/android/BUILD.gn
Expand Up @@ -28,6 +28,7 @@ import("//third_party/protobuf/proto_library.gni")
import("//tools/resources/generate_resource_whitelist.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
import("//ui/android/features.gni")
import("//weblayer/variables.gni")
import("channel.gni")
import("java_sources.gni")
import("static_initializers.gni")
Expand Down Expand Up @@ -1353,14 +1354,15 @@ if (current_toolchain == default_toolchain) {

additional_extra_paks = []
if (_is_monochrome) {
additional_extra_paks += [
"$root_gen_dir/android_webview/aw_resources.pak",
"$root_gen_dir/weblayer/weblayer_resources.pak",
]
deps += [
"//android_webview:generate_aw_resources",
"//weblayer:resources",
]
additional_extra_paks +=
[ "$root_gen_dir/android_webview/aw_resources.pak" ]
deps += [ "//android_webview:generate_aw_resources" ]

if (webview_includes_weblayer) {
additional_extra_paks +=
[ "$root_gen_dir/weblayer/weblayer_resources.pak" ]
deps += [ "//weblayer:resources" ]
}
}
if (!dfmify_dev_ui) {
additional_extra_paks +=
Expand Down Expand Up @@ -1409,10 +1411,10 @@ if (current_toolchain == default_toolchain) {
":${_variant}_paks",
]
if (_is_monochrome) {
deps += [
"//android_webview:locale_pak_assets",
"//weblayer:locale_pak_assets",
]
deps += [ "//android_webview:locale_pak_assets" ]
if (webview_includes_weblayer) {
deps += [ "//weblayer:locale_pak_assets" ]
}
}
}
}
Expand Down Expand Up @@ -1442,9 +1444,13 @@ template("libmonochrome_apk_or_bundle_tmpl") {
"//android_webview:common",
"//components/about_ui:about_ui_android",
"//components/crash/android:crashpad_main",
"//weblayer:weblayer_lib",
]

if (webview_includes_weblayer) {
defines = [ "WEBVIEW_INCLUDES_WEBLAYER" ]
deps += [ "//weblayer:weblayer_lib" ]
}

if (enable_vr) {
deps += [ "//chrome/browser/android/vr:module_factory" ]
}
Expand Down
6 changes: 5 additions & 1 deletion chrome/android/chrome_public_apk_tmpl.gni
Expand Up @@ -345,8 +345,12 @@ template("monochrome_public_common_apk_or_module_tmpl") {
locale_config_java_packages = [
"org.chromium.chrome.browser",
webview_locale_config_java_package,
weblayer_locale_config_java_package,
]

if (webview_includes_weblayer) {
locale_config_java_packages += [ weblayer_locale_config_java_package ]
}

if (android_64bit_target_cpu) {
# Build //android_webview:monochrome with the opposite bitness that
# Chrome runs in.
Expand Down
7 changes: 7 additions & 0 deletions chrome/browser/android/monochrome_entry_point.cc
Expand Up @@ -7,7 +7,10 @@
#include "base/android/library_loader/library_loader_hooks.h"
#include "base/bind.h"
#include "chrome/app/android/chrome_jni_onload.h"

#if defined(WEBVIEW_INCLUDES_WEBLAYER)
#include "weblayer/app/jni_onload.h"
#endif

namespace {

Expand All @@ -21,10 +24,14 @@ bool NativeInit(base::android::LibraryProcessType library_process_type) {
case base::android::PROCESS_CHILD:
return android::OnJNIOnLoadInit();
break;

#if defined(WEBVIEW_INCLUDES_WEBLAYER)
case base::android::PROCESS_WEBLAYER:
case base::android::PROCESS_WEBLAYER_CHILD:
return weblayer::OnJNIOnLoadInit();
break;
#endif

default:
NOTREACHED();
return false;
Expand Down
2 changes: 1 addition & 1 deletion testing/buildbot/gn_isolate_map.pyl
Expand Up @@ -3063,7 +3063,7 @@
"type": "console_test_launcher",
},
"weblayer_instrumentation_test_apk": {
"label": "//weblayer/shell/android:weblayer_instrumentation_test_apk",
"label": "//weblayer/browser/android/javatests:weblayer_instrumentation_test_apk",
"type": "console_test_launcher",
},
"weblayer_shell": {
Expand Down
21 changes: 18 additions & 3 deletions weblayer/BUILD.gn
Expand Up @@ -142,6 +142,8 @@ jumbo_static_library("weblayer_lib") {
"browser/content_browser_client_impl.h",
"browser/file_select_helper.cc",
"browser/file_select_helper.h",
"browser/i18n_util.cc",
"browser/i18n_util.h",
"browser/isolated_world_ids.h",
"browser/navigation_controller_impl.cc",
"browser/navigation_controller_impl.h",
Expand Down Expand Up @@ -170,6 +172,7 @@ jumbo_static_library("weblayer_lib") {
"common/weblayer_paths.cc",
"common/weblayer_paths.h",
"public/download_delegate.h",
"public/error_page_delegate.h",
"public/fullscreen_delegate.h",
"public/main.h",
"public/navigation.h",
Expand All @@ -190,12 +193,17 @@ jumbo_static_library("weblayer_lib") {
if (is_android) {
# TODO(timvolodine): move this to safe_browsing/
sources += [
"browser/devtools_manager_delegate_android.cc",
"browser/devtools_manager_delegate_android.h",
"browser/devtools_server_android.cc",
"browser/devtools_server_android.h",
"browser/safe_browsing/safe_browsing_service.cc",
"browser/safe_browsing/safe_browsing_service.h",
"browser/safe_browsing/safe_browsing_ui_manager.cc",
"browser/safe_browsing/safe_browsing_ui_manager.h",
"browser/safe_browsing/url_checker_delegate_impl.cc",
"browser/safe_browsing/url_checker_delegate_impl.h",
"browser/weblayer_impl_android.cc",
]
}

Expand All @@ -216,10 +224,10 @@ jumbo_static_library("weblayer_lib") {
"//cc",
"//components/crash/content/app",
"//components/crash/content/browser",
"//components/resources",
"//components/security_interstitials/content:security_interstitial_page",
"//components/security_interstitials/content/renderer:security_interstitial_page_controller",
"//components/security_interstitials/core",
"//components/version_info",
"//components/web_cache/browser",
"//content:resources",
"//content/app/resources",
Expand All @@ -236,6 +244,7 @@ jumbo_static_library("weblayer_lib") {
"//services/network/public/mojom",
"//services/service_manager/embedder:embedder_result_codes",
"//skia",
"//third_party/blink/public/common",
"//third_party/blink/public/strings",
"//third_party/icu",
"//ui/base",
Expand All @@ -260,10 +269,14 @@ jumbo_static_library("weblayer_lib") {

if (is_android) {
sources += [
"common/crash_reporter_client.cc",
"common/crash_reporter_client.h",
"common/crash_reporter/crash_keys.cc",
"common/crash_reporter/crash_keys.h",
"common/crash_reporter/crash_reporter_client.cc",
"common/crash_reporter/crash_reporter_client.h",
]
deps += [
"//android_webview:generate_aw_resources",
"//android_webview:generate_aw_strings",
"//components/crash/android:crashpad_main",
"//components/safe_browsing",
"//components/safe_browsing/android:remote_database_manager",
Expand Down Expand Up @@ -313,6 +326,8 @@ jumbo_static_library("weblayer_lib") {
"browser/content_view_render_view.h",
"browser/download_callback_proxy.cc",
"browser/download_callback_proxy.h",
"browser/error_page_callback_proxy.cc",
"browser/error_page_callback_proxy.h",
"browser/fullscreen_callback_proxy.cc",
"browser/fullscreen_callback_proxy.h",
"browser/new_tab_callback_proxy.cc",
Expand Down
2 changes: 1 addition & 1 deletion weblayer/LAST_MERGED_REVISION
@@ -1 +1 @@
92763f8044de2849ff587d8bffb8e620abf33331
70a9baeea89b79f827107542b7aaf4f9e4479366

0 comments on commit 757c57e

Please sign in to comment.