Commit 716938a8 authored by Luciano Pacheco's avatar Luciano Pacheco Committed by Commit Bot

Reland: Audio Player: Add generate_grd() and grit() for JS Modules

Reland of CL:2503909, I've tested locally as described in
crbug.com/1144470#c3 and it's fixed. The change to fix is here:
https://chromium-review.googlesource.com/c/chromium/src/+/2519177/2..3

Add a new PAK file for resources in Files app and companion apps like
Audio Player, to host the generated JS modules.

Change ChromeComponentExtensionResourceManager to also load the
resources from this new PAK file.  This was refactored to not depend on
file_manager_resource_util.h any longer, which allowed to remove this
util.

Rename Audio Player optimize_webu() to "build" to follow the convention.

This is a preparation for converting these apps to JS modules.

Bug: 1133186, 1030998, 1144470
Change-Id: Ic803e5f071cde0ac31713578a6f17e74a07c5465
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2519177Reviewed-by: default avatarJeremie Boulic <jboulic@chromium.org>
Reviewed-by: default avatardpapad <dpapad@chromium.org>
Reviewed-by: default avatarKaran Bhatia <karandeepb@chromium.org>
Commit-Queue: Luciano Pacheco <lucmult@chromium.org>
Cr-Commit-Position: refs/heads/master@{#825256}
parent 7e541959
...@@ -1066,7 +1066,8 @@ static_library("extensions") { ...@@ -1066,7 +1066,8 @@ static_library("extensions") {
"//ui/base/ime/chromeos", "//ui/base/ime/chromeos",
"//ui/chromeos", "//ui/chromeos",
"//ui/chromeos/events", "//ui/chromeos/events",
"//ui/file_manager", "//ui/file_manager:file_manager_gen_resources",
"//ui/file_manager:resources",
"//ui/ozone", "//ui/ozone",
"//ui/views", "//ui/views",
] ]
......
...@@ -27,8 +27,8 @@ ...@@ -27,8 +27,8 @@
#include "chrome/browser/browser_process.h" #include "chrome/browser/browser_process.h"
#include "chrome/browser/chromeos/file_manager/file_manager_string_util.h" #include "chrome/browser/chromeos/file_manager/file_manager_string_util.h"
#include "third_party/ink/grit/ink_resources.h" #include "third_party/ink/grit/ink_resources.h"
#include "ui/file_manager/file_manager_resource_util.h" #include "ui/file_manager/grit/file_manager_gen_resources_map.h"
#include "ui/file_manager/grit/file_manager_resources.h" #include "ui/file_manager/grit/file_manager_resources_map.h"
#endif #endif
#if BUILDFLAG(ENABLE_PDF) #if BUILDFLAG(ENABLE_PDF)
...@@ -92,11 +92,10 @@ ChromeComponentExtensionResourceManager::Data::Data() { ...@@ -92,11 +92,10 @@ ChromeComponentExtensionResourceManager::Data::Data() {
AddComponentResourceEntries(kExtraComponentExtensionResources, AddComponentResourceEntries(kExtraComponentExtensionResources,
base::size(kExtraComponentExtensionResources)); base::size(kExtraComponentExtensionResources));
#if defined(OS_CHROMEOS) #if defined(OS_CHROMEOS)
size_t file_manager_resource_size; // Add Files app JS modules resources.
const GritResourceMap* file_manager_resources = AddComponentResourceEntries(kFileManagerResources, kFileManagerResourcesSize);
file_manager::GetFileManagerResources(&file_manager_resource_size); AddComponentResourceEntries(kFileManagerGenResources,
AddComponentResourceEntries(file_manager_resources, kFileManagerGenResourcesSize);
file_manager_resource_size);
// ResourceBundle and g_browser_process are not always initialized in unit // ResourceBundle and g_browser_process are not always initialized in unit
// tests. // tests.
......
...@@ -187,6 +187,7 @@ template("chrome_extra_paks") { ...@@ -187,6 +187,7 @@ template("chrome_extra_paks") {
"$root_gen_dir/chromeos/chromeos_scanning_app_resources.pak", "$root_gen_dir/chromeos/chromeos_scanning_app_resources.pak",
"$root_gen_dir/chromeos/connectivity_diagnostics_resources.pak", "$root_gen_dir/chromeos/connectivity_diagnostics_resources.pak",
"$root_gen_dir/third_party/ink/ink_resources.pak", "$root_gen_dir/third_party/ink/ink_resources.pak",
"$root_gen_dir/ui/file_manager/file_manager_gen_resources.pak",
"$root_gen_dir/ui/file_manager/file_manager_resources.pak", "$root_gen_dir/ui/file_manager/file_manager_resources.pak",
] ]
deps += [ deps += [
...@@ -210,6 +211,7 @@ template("chrome_extra_paks") { ...@@ -210,6 +211,7 @@ template("chrome_extra_paks") {
"//chromeos/resources:print_management_resources", "//chromeos/resources:print_management_resources",
"//chromeos/resources:scanning_app_resources", "//chromeos/resources:scanning_app_resources",
"//third_party/ink:ink_resources", "//third_party/ink:ink_resources",
"//ui/file_manager:file_manager_gen_resources",
"//ui/file_manager:resources", "//ui/file_manager:resources",
] ]
......
...@@ -625,6 +625,10 @@ ...@@ -625,6 +625,10 @@
"ui/chromeos/ui_chromeos_strings.grd": { "ui/chromeos/ui_chromeos_strings.grd": {
"messages": [3660], "messages": [3660],
}, },
"<(SHARED_INTERMEDIATE_DIR)/ui/file_manager/file_manager_gen_resources.grd": {
"META": {"sizes": {"includes": [200]}},
"includes": [3670],
},
"ui/file_manager/file_manager_resources.grd": { "ui/file_manager/file_manager_resources.grd": {
"includes": [3680], "includes": [3680],
}, },
......
...@@ -2,9 +2,11 @@ ...@@ -2,9 +2,11 @@
# Use of this source code is governed by a BSD-style license that can be # Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file. # found in the LICENSE file.
import("//chrome/common/features.gni")
import("//third_party/closure_compiler/compile_js.gni") import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/grit_rule.gni") import("//tools/grit/grit_rule.gni")
import("//tools/grit/preprocess_grit.gni") import("//tools/grit/preprocess_grit.gni")
import("//ui/webui/resources/tools/generate_grd.gni")
grit("resources") { grit("resources") {
source = "file_manager_resources.grd" source = "file_manager_resources.grd"
...@@ -18,12 +20,9 @@ grit("resources") { ...@@ -18,12 +20,9 @@ grit("resources") {
} }
component("file_manager") { component("file_manager") {
sources = [ sources = [ "file_manager_export.h" ]
"file_manager_export.h",
"file_manager_resource_util.cc",
"file_manager_resource_util.h",
]
public_deps = [ public_deps = [
":file_manager_gen_resources",
":resources", ":resources",
"//base", "//base",
] ]
...@@ -101,3 +100,47 @@ preprocess_grit("preprocess_generated") { ...@@ -101,3 +100,47 @@ preprocess_grit("preprocess_generated") {
deps = [ "//ui/file_manager/base/js:modulize" ] deps = [ "//ui/file_manager/base/js:modulize" ]
} }
grd_prefix = "file_manager_gen"
generated_grd = "$target_gen_dir/${grd_prefix}_resources.grd"
generate_grd("build_grd") {
out_grd = generated_grd
input_files_base_dir =
rebase_path("$target_gen_dir/preprocessed", root_gen_dir)
input_files = [ "../audio_player/js/main.m.rollup.js" ]
resource_path_rewrites =
[ "../audio_player/js/main.m.rollup.js|audio_player/js/main.m.js" ]
deps = [ "//ui/file_manager/audio_player/js:build" ]
}
# Resources for the JS modules.
grit("file_manager_gen_resources") {
grit_flags = [
"-E",
"root_gen_dir=" + rebase_path(root_gen_dir, root_build_dir),
"-E",
"root_src_dir=" + rebase_path(root_gen_dir, root_build_dir),
]
defines = chrome_grit_defines
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
defines +=
[ "SHARED_INTERMEDIATE_DIR=" + rebase_path(root_gen_dir, root_build_dir) ]
source = generated_grd
deps = [ ":build_grd" ]
outputs = [
"grit/file_manager_gen_resources.h",
"grit/file_manager_gen_resources_map.cc",
"grit/file_manager_gen_resources_map.h",
"file_manager_gen_resources.pak",
]
output_dir = "$root_gen_dir/ui/file_manager"
}
...@@ -80,7 +80,7 @@ preprocess_folder = ...@@ -80,7 +80,7 @@ preprocess_folder =
rebase_path("$target_gen_dir/../../preprocessed/audio_player/js", rebase_path("$target_gen_dir/../../preprocessed/audio_player/js",
root_build_dir) root_build_dir)
optimize_webui("audio_player_bundle") { optimize_webui("build") {
host = "audio_player" host = "audio_player"
input = preprocess_folder input = preprocess_folder
...@@ -92,5 +92,6 @@ optimize_webui("audio_player_bundle") { ...@@ -92,5 +92,6 @@ optimize_webui("audio_player_bundle") {
":main.m", ":main.m",
"//ui/file_manager:preprocess_generated", "//ui/file_manager:preprocess_generated",
"//ui/file_manager:preprocess_static", "//ui/file_manager:preprocess_static",
"//ui/webui/resources:preprocess",
] ]
} }
// Copyright 2014 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.
#include "ui/file_manager/file_manager_resource_util.h"
#include "base/check.h"
#include "ui/file_manager/grit/file_manager_resources_map.h"
namespace file_manager {
const GritResourceMap* GetFileManagerResources(size_t* size) {
DCHECK(size);
*size = kFileManagerResourcesSize;
return kFileManagerResources;
}
} // namespace keyboard
// Copyright 2014 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.
#ifndef UI_FILE_MANAGER_FILE_MANAGER_RESOURCE_UTIL_H_
#define UI_FILE_MANAGER_FILE_MANAGER_RESOURCE_UTIL_H_
#include <stddef.h>
#include "ui/file_manager/file_manager_export.h"
struct GritResourceMap;
namespace file_manager {
// Get the list of resources. |size| is populated with the number of resources
// in the returned array.
FILE_MANAGER_EXPORT const GritResourceMap* GetFileManagerResources(
size_t* size);
} // namespace file_manager
#endif // UI_FILE_MANAGER_FILE_MANAGER_RESOURCE_UTIL_H_
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