Commit 9a3d48bd authored by rbpotter's avatar rbpotter Committed by Commit Bot

Nearby Share: Generate grdps for shared resources and mojo

Generate grdps for shared resources and mojo resources from
c/b/r/nearby_share, instead of preprocessing and directly including
the shared resources from OS settings.

This will also simplify the process of moving the nearby shared dialog
to use preprocessing and autogeneration.

Bug: 1132403
Change-Id: I0a4f77604aafc5ab95b89125edc08ffe7ee53152
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2505967Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Reviewed-by: default avatardpapad <dpapad@chromium.org>
Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#822783}
parent def9d641
...@@ -3,10 +3,44 @@ ...@@ -3,10 +3,44 @@
# found in the LICENSE file. # found in the LICENSE file.
import("//third_party/closure_compiler/compile_js.gni") import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/preprocess_grit.gni")
import("//tools/polymer/html_to_js.gni") import("//tools/polymer/html_to_js.gni")
import("//ui/webui/resources/tools/generate_grd.gni")
assert(is_chromeos, "Nearby Share is CrOS only") assert(is_chromeos, "Nearby Share is CrOS only")
preprocess_mojo_manifest = "preprocessed_mojo_manifest.json"
preprocess_folder = "preprocessed"
generate_grd("build_mojo_grdp") {
grd_prefix = "nearby_share"
out_grd = "$target_gen_dir/${grd_prefix}_mojo_resources.grdp"
deps = [ ":preprocess_mojo" ]
manifest_files = [ "$target_gen_dir/$preprocess_mojo_manifest" ]
resource_path_rewrites = [
"chrome/browser/ui/webui/nearby_share/nearby_share.mojom-lite.js|mojo/nearby_share.mojom-lite.js",
"chrome/browser/ui/webui/nearby_share/public/mojom/nearby_share_settings.mojom-lite.js|mojo/nearby_share_settings.mojom-lite.js",
"chromeos/services/nearby/public/mojom/nearby_share_target_types.mojom-lite.js|mojo/nearby_share_target_types.mojom-lite.js",
]
}
# Mojo files, for generating grdp
preprocess_grit("preprocess_mojo") {
deps = [
"//chrome/browser/ui/webui/nearby_share:mojom_js",
"//chrome/browser/ui/webui/nearby_share/public/mojom:mojom_js__generator",
"//chromeos/services/nearby/public/mojom:mojom_js",
]
in_folder = "$root_gen_dir"
out_folder = "$target_gen_dir/$preprocess_folder"
out_manifest = "$target_gen_dir/$preprocess_mojo_manifest"
in_files = [
"chrome/browser/ui/webui/nearby_share/nearby_share.mojom-lite.js",
"chrome/browser/ui/webui/nearby_share/public/mojom/nearby_share_settings.mojom-lite.js",
"chromeos/services/nearby/public/mojom/nearby_share_target_types.mojom-lite.js",
]
}
js_type_check("closure_compile") { js_type_check("closure_compile") {
is_polymer3 = true is_polymer3 = true
closure_flags = closure_flags =
......
...@@ -3,10 +3,72 @@ ...@@ -3,10 +3,72 @@
# found in the LICENSE file. # found in the LICENSE file.
import("//third_party/closure_compiler/compile_js.gni") import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/preprocess_grit.gni")
import("//tools/polymer/polymer.gni") import("//tools/polymer/polymer.gni")
import("//ui/webui/resources/tools/generate_grd.gni")
import("//ui/webui/resources/tools/js_modulizer.gni") import("//ui/webui/resources/tools/js_modulizer.gni")
import("./nearby_shared.gni") import("./nearby_shared.gni")
os_settings_dir = "$root_gen_dir/chrome/browser/resources/settings/chromeos"
preprocess_v2_manifest = "preprocessed_v2_manifest.json"
preprocess_v3_manifest = "preprocessed_v3_manifest.json"
generate_grd("build_v2_grdp") {
grd_prefix = "nearby_share"
out_grd = "$target_gen_dir/${grd_prefix}_resources_v2.grdp"
deps = [ ":preprocess_v2" ]
manifest_files = [ "$target_gen_dir/$preprocess_v2_manifest" ]
resource_path_prefix = "shared"
}
generate_grd("build_v3_grdp") {
grd_prefix = "nearby_share"
out_grd = "$target_gen_dir/${grd_prefix}_resources_v3.grdp"
deps = [ ":preprocess_v3" ]
manifest_files = [ "$target_gen_dir/$preprocess_v3_manifest" ]
resource_path_prefix = "shared"
}
preprocess_grit("preprocess_v2") {
in_folder = "./"
out_folder = "$os_settings_dir/preprocess_v2/shared"
out_manifest = "$target_gen_dir/$preprocess_v2_manifest"
in_files = [
"nearby_contact_manager.html",
"nearby_contact_manager.js",
"nearby_contact_visibility.html",
"nearby_contact_visibility.js",
"nearby_onboarding_page.html",
"nearby_onboarding_page.js",
"nearby_page_template.html",
"nearby_page_template.js",
"nearby_share_settings.html",
"nearby_share_settings.js",
"nearby_share_settings_behavior.html",
"nearby_share_settings_behavior.js",
"nearby_shared_icons.html",
"nearby_visibility_page.html",
"nearby_visibility_page.js",
]
}
preprocess_grit("preprocess_v3") {
deps = [ ":polymer3_elements" ]
in_folder = "$target_gen_dir"
out_folder = "$os_settings_dir/preprocess_v3/shared"
out_manifest = "$target_gen_dir/$preprocess_v3_manifest"
in_files = [
"nearby_contact_manager.m.js",
"nearby_contact_visibility.m.js",
"nearby_onboarding_page.m.js",
"nearby_page_template.m.js",
"nearby_share_settings.m.js",
"nearby_share_settings_behavior.m.js",
"nearby_shared_icons.m.js",
"nearby_visibility_page.m.js",
]
}
js_type_check("closure_compile") { js_type_check("closure_compile") {
deps = [ deps = [
":nearby_contact_manager", ":nearby_contact_manager",
......
...@@ -16,10 +16,8 @@ preprocess_folder_v2 = "preprocess_v2" ...@@ -16,10 +16,8 @@ preprocess_folder_v2 = "preprocess_v2"
preprocess_folder_v3 = "preprocess_v3" preprocess_folder_v3 = "preprocess_v3"
preprocess_v2_manifest = "preprocessed_v2_manifest.json" preprocess_v2_manifest = "preprocessed_v2_manifest.json"
preprocess_nearby_v2_manifest = "preprocessed_nearby_v2_manifest.json"
preprocess_v3_manifest = "preprocessed_manifest.json" preprocess_v3_manifest = "preprocessed_manifest.json"
preprocess_gen_v3_manifest = "preprocessed_gen_manifest.json" preprocess_gen_v3_manifest = "preprocessed_gen_manifest.json"
preprocess_nearby_v3_manifest = "preprocessed_nearby_v3_manifest.json"
preprocess_external_mojo_manifest = "preprocessed_external_mojo_manifest.json" preprocess_external_mojo_manifest = "preprocessed_external_mojo_manifest.json"
preprocess_mojo_manifest = "preprocessed_mojo_manifest.json" preprocess_mojo_manifest = "preprocessed_mojo_manifest.json"
...@@ -67,8 +65,8 @@ if (optimize_webui) { ...@@ -67,8 +65,8 @@ if (optimize_webui) {
deps = [ deps = [
":preprocess_mojo_v2", ":preprocess_mojo_v2",
":preprocess_nearby_v2",
":preprocess_v2", ":preprocess_v2",
"../../nearby_share/shared:preprocess_v2",
] ]
} }
...@@ -89,9 +87,9 @@ if (optimize_webui) { ...@@ -89,9 +87,9 @@ if (optimize_webui) {
deps = [ deps = [
":preprocess_gen_v3", ":preprocess_gen_v3",
":preprocess_mojo_v3", ":preprocess_mojo_v3",
":preprocess_nearby_v3",
":preprocess_v3", ":preprocess_v3",
"../../../../../ui/webui/resources:preprocess", "../../../../../ui/webui/resources:preprocess",
"../../nearby_share/shared:preprocess_v3",
] ]
excludes = [ excludes = [
"chrome://resources/mojo/chromeos/services/cellular_setup/public/mojom/cellular_setup.mojom-lite.js", "chrome://resources/mojo/chromeos/services/cellular_setup/public/mojom/cellular_setup.mojom-lite.js",
...@@ -211,9 +209,14 @@ generate_grd("build_grd") { ...@@ -211,9 +209,14 @@ generate_grd("build_grd") {
"images/icon_add_circle.svg", "images/icon_add_circle.svg",
"images/icon_add_wifi.svg", "images/icon_add_wifi.svg",
"images/icon_add_cellular.svg", "images/icon_add_cellular.svg",
"../../nearby_share/shared/nearby_share_pulse_animation.json",
] ]
input_files_base_dir = rebase_path(".", "//") input_files_base_dir = rebase_path(".", "//")
deps = [ ":preprocess_external_mojo" ] deps = [
":preprocess_external_mojo",
"../../nearby_share:build_mojo_grdp",
]
grdp_files = [ "$root_gen_dir/chrome/browser/resources/nearby_share/nearby_share_mojo_resources.grdp" ]
manifest_files = [ "$target_gen_dir/$preprocess_external_mojo_manifest" ] manifest_files = [ "$target_gen_dir/$preprocess_external_mojo_manifest" ]
resource_path_rewrites = [ resource_path_rewrites = [
"os_settings_v3.html|chromeos/os_settings_v3.html", "os_settings_v3.html|chromeos/os_settings_v3.html",
...@@ -221,6 +224,7 @@ generate_grd("build_grd") { ...@@ -221,6 +224,7 @@ generate_grd("build_grd") {
"ui/gfx/image/mojom/image.mojom-lite.js|app-management/image.mojom-lite.js", "ui/gfx/image/mojom/image.mojom-lite.js|app-management/image.mojom-lite.js",
"chrome/browser/ui/webui/app_management/app_management.mojom-lite.js|app-management/app_management.mojom-lite.js", "chrome/browser/ui/webui/app_management/app_management.mojom-lite.js|app-management/app_management.mojom-lite.js",
"components/services/app_service/public/mojom/types.mojom-lite.js|app-management/types.mojom-lite.js", "components/services/app_service/public/mojom/types.mojom-lite.js|app-management/types.mojom-lite.js",
"../../nearby_share/shared/nearby_share_pulse_animation.json|nearby_share_pulse_animation.json",
] ]
if (optimize_webui) { if (optimize_webui) {
...@@ -244,15 +248,17 @@ generate_grd("build_grd") { ...@@ -244,15 +248,17 @@ generate_grd("build_grd") {
deps += [ deps += [
":preprocess_gen_v3", ":preprocess_gen_v3",
":preprocess_mojo_v3", ":preprocess_mojo_v3",
":preprocess_nearby_v2",
":preprocess_nearby_v3",
":preprocess_v2", ":preprocess_v2",
":preprocess_v3", ":preprocess_v3",
"../../nearby_share/shared:build_v2_grdp",
"../../nearby_share/shared:build_v3_grdp",
]
grdp_files += [
"$root_gen_dir/chrome/browser/resources/nearby_share/shared/nearby_share_resources_v2.grdp",
"$root_gen_dir/chrome/browser/resources/nearby_share/shared/nearby_share_resources_v3.grdp",
] ]
manifest_files += [ manifest_files += [
"$target_gen_dir/$preprocess_gen_v3_manifest", "$target_gen_dir/$preprocess_gen_v3_manifest",
"$target_gen_dir/$preprocess_nearby_v2_manifest",
"$target_gen_dir/$preprocess_nearby_v3_manifest",
"$target_gen_dir/$preprocess_v2_manifest", "$target_gen_dir/$preprocess_v2_manifest",
"$target_gen_dir/$preprocess_v3_manifest", "$target_gen_dir/$preprocess_v3_manifest",
"$target_gen_dir/$preprocess_mojo_manifest", "$target_gen_dir/$preprocess_mojo_manifest",
...@@ -979,46 +985,6 @@ preprocess_grit("preprocess_v2") { ...@@ -979,46 +985,6 @@ preprocess_grit("preprocess_v2") {
] ]
} }
preprocess_grit("preprocess_nearby_v2") {
in_folder = "../../nearby_share/"
out_folder = "$target_gen_dir/$preprocess_folder_v2"
out_manifest = "$target_gen_dir/$preprocess_nearby_v2_manifest"
in_files = [
"shared/nearby_contact_manager.html",
"shared/nearby_contact_manager.js",
"shared/nearby_contact_visibility.html",
"shared/nearby_contact_visibility.js",
"shared/nearby_onboarding_page.html",
"shared/nearby_onboarding_page.js",
"shared/nearby_page_template.html",
"shared/nearby_page_template.js",
"shared/nearby_share_settings.html",
"shared/nearby_share_settings.js",
"shared/nearby_share_settings_behavior.html",
"shared/nearby_share_settings_behavior.js",
"shared/nearby_shared_icons.html",
"shared/nearby_visibility_page.html",
"shared/nearby_visibility_page.js",
]
}
preprocess_grit("preprocess_nearby_v3") {
deps = [ "//chrome/browser/resources/nearby_share/shared:polymer3_elements" ]
in_folder = get_path_info("../../nearby_share/", "gen_dir")
out_folder = "$target_gen_dir/$preprocess_folder_v3"
out_manifest = "$target_gen_dir/$preprocess_nearby_v3_manifest"
in_files = [
"shared/nearby_contact_manager.m.js",
"shared/nearby_contact_visibility.m.js",
"shared/nearby_onboarding_page.m.js",
"shared/nearby_page_template.m.js",
"shared/nearby_share_settings.m.js",
"shared/nearby_share_settings_behavior.m.js",
"shared/nearby_shared_icons.m.js",
"shared/nearby_visibility_page.m.js",
]
}
group("closure_compile") { group("closure_compile") {
deps = [ deps = [
":deep_linking_behavior", ":deep_linking_behavior",
......
...@@ -353,6 +353,7 @@ polymer_modulizer("nearby_share_receive_dialog") { ...@@ -353,6 +353,7 @@ polymer_modulizer("nearby_share_receive_dialog") {
js_file = "nearby_share_receive_dialog.js" js_file = "nearby_share_receive_dialog.js"
html_file = "nearby_share_receive_dialog.html" html_file = "nearby_share_receive_dialog.html"
html_type = "dom-module" html_type = "dom-module"
migrated_imports = os_settings_migrated_imports
namespace_rewrites = namespace_rewrites =
os_settings_namespace_rewrites + nearby_shared_namespace_rewrites os_settings_namespace_rewrites + nearby_shared_namespace_rewrites
auto_imports = auto_imports =
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
<link rel="import" href="chrome://resources/cr_elements/cr_dialog/cr_dialog.html"> <link rel="import" href="chrome://resources/cr_elements/cr_dialog/cr_dialog.html">
<link rel="import" href="chrome://resources/cr_elements/cr_view_manager/cr_view_manager.html"> <link rel="import" href="chrome://resources/cr_elements/cr_view_manager/cr_view_manager.html">
<link rel="import" href="chrome://resources/html/assert.html"> <link rel="import" href="chrome://resources/html/assert.html">
<link rel="import" href="../../i18n_setup.html">
<link rel="import" href="../../shared/nearby_onboarding_page.html"> <link rel="import" href="../../shared/nearby_onboarding_page.html">
<link rel="import" href="../../shared/nearby_share_settings_behavior.html"> <link rel="import" href="../../shared/nearby_share_settings_behavior.html">
<link rel="import" href="../../shared/nearby_visibility_page.html"> <link rel="import" href="../../shared/nearby_visibility_page.html">
......
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
#include "chrome/browser/nearby_sharing/nearby_sharing_service_factory.h" #include "chrome/browser/nearby_sharing/nearby_sharing_service_factory.h"
#include "chrome/browser/nearby_sharing/nearby_sharing_service_impl.h" #include "chrome/browser/nearby_sharing/nearby_sharing_service_impl.h"
#include "chrome/browser/ui/webui/managed_ui_handler.h" #include "chrome/browser/ui/webui/managed_ui_handler.h"
#include "chrome/browser/ui/webui/nearby_share/shared_resources.h"
#include "chrome/browser/ui/webui/settings/chromeos/device_storage_handler.h" #include "chrome/browser/ui/webui/settings/chromeos/device_storage_handler.h"
#include "chrome/browser/ui/webui/settings/chromeos/os_settings_manager.h" #include "chrome/browser/ui/webui/settings/chromeos/os_settings_manager.h"
#include "chrome/browser/ui/webui/settings/chromeos/os_settings_manager_factory.h" #include "chrome/browser/ui/webui/settings/chromeos/os_settings_manager_factory.h"
...@@ -63,10 +62,6 @@ OSSettingsUI::OSSettingsUI(content::WebUI* web_ui) ...@@ -63,10 +62,6 @@ OSSettingsUI::OSSettingsUI(content::WebUI* web_ui)
std::make_unique<chromeos::settings::StorageHandler>(profile, std::make_unique<chromeos::settings::StorageHandler>(profile,
html_source)); html_source));
// We only need to register the mojo resources here because the rest are
// bundled or included in the grd.
RegisterNearbySharedMojoResources(html_source);
int default_resource = int default_resource =
base::FeatureList::IsEnabled(chromeos::features::kOsSettingsPolymer3) base::FeatureList::IsEnabled(chromeos::features::kOsSettingsPolymer3)
? IDR_OS_SETTINGS_OS_SETTINGS_V3_HTML ? IDR_OS_SETTINGS_OS_SETTINGS_V3_HTML
......
...@@ -1237,6 +1237,8 @@ var OSSettingsNearbyShareSubPageTest = class extends OSSettingsBrowserTest { ...@@ -1237,6 +1237,8 @@ var OSSettingsNearbyShareSubPageTest = class extends OSSettingsBrowserTest {
/** @override */ /** @override */
get extraLibraries() { get extraLibraries() {
return super.extraLibraries.concat([ return super.extraLibraries.concat([
'//ui/webui/resources/js/assert.js',
'//ui/webui/resources/js/util.js',
BROWSER_SETTINGS_PATH + '../test_browser_proxy.js', BROWSER_SETTINGS_PATH + '../test_browser_proxy.js',
BROWSER_SETTINGS_PATH + '../test_util.js', BROWSER_SETTINGS_PATH + '../test_util.js',
'../../nearby_share/shared/fake_nearby_share_settings.js', '../../nearby_share/shared/fake_nearby_share_settings.js',
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment