diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-10-12 14:27:29 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-10-13 09:35:20 +0000 |
commit | c30a6232df03e1efbd9f3b226777b07e087a1122 (patch) | |
tree | e992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/chromeos/components/camera_app_ui | |
parent | 7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff) | |
download | qtwebengine-chromium-85-based.tar.gz |
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/chromeos/components/camera_app_ui')
13 files changed, 921 insertions, 0 deletions
diff --git a/chromium/chromeos/components/camera_app_ui/BUILD.gn b/chromium/chromeos/components/camera_app_ui/BUILD.gn new file mode 100644 index 00000000000..44365f15485 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/BUILD.gn @@ -0,0 +1,51 @@ +# Copyright 2020 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("//mojo/public/tools/bindings/mojom.gni") +import("//third_party/closure_compiler/compile_js.gni") + +assert(is_chromeos, "Camera App is Chrome OS only") + +static_library("camera_app_ui") { + sources = [ + "camera_app_helper_impl.cc", + "camera_app_helper_impl.h", + "camera_app_ui.cc", + "camera_app_ui.h", + "url_constants.cc", + "url_constants.h", + ] + + deps = [ + ":mojo_bindings", + ":mojo_bindings_js", + "//ash/public/cpp", + "//chromeos/components/web_applications", + "//chromeos/constants", + "//chromeos/resources:camera_app_resources", + "//chromeos/strings", + "//chromeos/system", + "//content/public/browser", + "//content/public/common", + "//media/capture:capture_lib", + "//mojo/public/cpp/bindings", + "//mojo/public/cpp/platform", + "//mojo/public/js:resources_grit", + "//ui/resources:webui_resources_grd_grit", + "//ui/webui", + ] +} + +group("closure_compile") { + testonly = true + deps = [ + "resources:closure_compile", + ] +} + +mojom("mojo_bindings") { + sources = [ "camera_app_helper.mojom" ] + + deps = [ "//components/arc/mojom:camera_intent" ] +} diff --git a/chromium/chromeos/components/camera_app_ui/camera_app_helper.mojom b/chromium/chromeos/components/camera_app_ui/camera_app_helper.mojom new file mode 100644 index 00000000000..73605b72f0f --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/camera_app_helper.mojom @@ -0,0 +1,64 @@ +// Copyright 2019 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. + +module chromeos_camera.mojom; + +import "components/arc/mojom/camera_intent.mojom"; + +// Interface for monitoring tablet mode state of device. The state is detected +// from Chrome browser process and is notified to Chrome Camera App in renderer +// process. +interface TabletModeMonitor { + // Updates with the latest changed tablet mode state. + Update(bool is_tablet_mode); +}; + +// Screen backlight state. +// Reference from ash/public/cpp/screen_backlight_type.h +enum ScreenState { + ON, + OFF, + OFF_AUTO, +}; + +// Interface for monitoring screen state of device. The state is detected from +// Chrome browser process and is notified to Chrome Camera App in renderer +// process. +interface ScreenStateMonitor { + // Updates with the latest changed screen state. + Update(ScreenState state); +}; + +// Interface for communication between Chrome Camera App (Remote) and Chrome +// (Receiver). +interface CameraAppHelper { + // Sends the captured result |data| for corresponding intent recognized by + // |intent_id| back to ARC. The handler should handle |data| and may notify + // the intent caller according to the intention of the |action|. |is_success| + // will be set to true if the ARC received the result and set to false for + // invalid input. + HandleCameraResult(uint32 intent_id, + arc.mojom.CameraIntentAction action, + array<uint8> data) => (bool is_success); + + // Checks if device is under tablet mode currently. + IsTabletMode() => (bool is_tablet_mode); + + // Triggers the begin of event tracing for given |event|. + StartPerfEventTrace(string event); + + // Triggers the end of event tracing for given |event|. + StopPerfEventTrace(string event); + + // Registers a TabletModeMonitor instance and returns the tablet mode + // initial state. Calling the Update() whenever the tablet mode state + // changes. + SetTabletMonitor(pending_remote<TabletModeMonitor> monitor) + => (bool is_tablet_mode); + + // Registers a ScreenStateMonitor instance and returns the initial screen + // state. Calling the Update() whenever the screen state changes. + SetScreenStateMonitor(pending_remote<ScreenStateMonitor> monitor) + => (ScreenState initial_state); +}; diff --git a/chromium/chromeos/components/camera_app_ui/resources/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/BUILD.gn new file mode 100644 index 00000000000..8dba78c89f1 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/BUILD.gn @@ -0,0 +1,248 @@ +# Copyright 2019 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. + +chrome_camera_app_dir = "$root_out_dir/resources/chromeos/camera" + +group("closure_compile") { + deps = [ "src/js:closure_compile" ] +} + +group("chrome_camera_app") { + # According to crbug.com/855747, we should list all the files we want to copy + # rather than list only the folders to avoid potential building issue and ease + # the difficulty to diagnose. + deps = [ "src/strings:camera_strings" ] + + data_deps = [ + ":chrome_camera_app_base", + ":chrome_camera_app_css", + ":chrome_camera_app_images", + ":chrome_camera_app_js", + ":chrome_camera_app_js_browser_proxy", + ":chrome_camera_app_js_device", + ":chrome_camera_app_js_lib", + ":chrome_camera_app_js_models", + ":chrome_camera_app_js_mojo", + ":chrome_camera_app_js_views", + ":chrome_camera_app_js_views_camera", + ":chrome_camera_app_mojo_generated", + ":chrome_camera_app_sounds", + ":chrome_camera_app_views", + ] +} + +copy("chrome_camera_app_base") { + sources = [ "src/manifest.json" ] + + outputs = [ "$chrome_camera_app_dir/{{source_file_part}}" ] +} + +copy("chrome_camera_app_css") { + sources = [ "src/css/main.css" ] + + outputs = [ "$chrome_camera_app_dir/css/{{source_file_part}}" ] +} + +copy("chrome_camera_app_images") { + sources = [ + "src/images/camera_app_icons_128.png", + "src/images/camera_app_icons_48.png", + "src/images/camera_button_fps_30.svg", + "src/images/camera_button_fps_60.svg", + "src/images/camera_button_grid_off.svg", + "src/images/camera_button_grid_on.svg", + "src/images/camera_button_mic_off.svg", + "src/images/camera_button_mic_on.svg", + "src/images/camera_button_mirror_off.svg", + "src/images/camera_button_mirror_on.svg", + "src/images/camera_button_settings.svg", + "src/images/camera_button_switch_device.svg", + "src/images/camera_button_switch_photo.svg", + "src/images/camera_button_switch_video.svg", + "src/images/camera_button_timer_off.svg", + "src/images/camera_button_timer_on_10s.svg", + "src/images/camera_button_timer_on_3s.svg", + "src/images/camera_focus_aim.svg", + "src/images/camera_intent_play_video.svg", + "src/images/camera_intent_result_cancel.svg", + "src/images/camera_intent_result_confirm.svg", + "src/images/camera_mode_photo.svg", + "src/images/camera_mode_portrait.svg", + "src/images/camera_mode_square.svg", + "src/images/camera_mode_video.svg", + "src/images/camera_shutter_photo_start.svg", + "src/images/camera_shutter_photo_start_active.svg", + "src/images/camera_shutter_photo_start_hover.svg", + "src/images/camera_shutter_photo_stop.svg", + "src/images/camera_shutter_photo_stop_hover.svg", + "src/images/camera_shutter_video_pause.svg", + "src/images/settings_button_back.svg", + "src/images/settings_button_expand.svg", + "src/images/settings_feedback.svg", + "src/images/settings_grid_type.svg", + "src/images/settings_help.svg", + "src/images/settings_resolution.svg", + "src/images/settings_timer_duration.svg", + "src/images/spinner.svg", + ] + + outputs = [ "$chrome_camera_app_dir/images/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js") { + sources = [ + "src/js/async_job_queue.js", + "src/js/background.js", + "src/js/background_ops.js", + "src/js/chrome_util.js", + "src/js/error.js", + "src/js/gallerybutton.js", + "src/js/intent.js", + "src/js/main.js", + "src/js/metrics.js", + "src/js/nav.js", + "src/js/perf.js", + "src/js/sound.js", + "src/js/state.js", + "src/js/toast.js", + "src/js/tooltip.js", + "src/js/type.js", + "src/js/util.js", + "src/js/waitable_event.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_browser_proxy") { + sources = [ + # TODO(b/129956426): Remove dependency used only in closure compiler check. + "src/js/browser_proxy/browser_proxy.js", + "src/js/browser_proxy/browser_proxy_interface.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/browser_proxy/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_device") { + sources = [ + "src/js/device/camera3_device_info.js", + "src/js/device/constraints_preferrer.js", + "src/js/device/device_info_updater.js", + "src/js/device/error.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/device/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_lib") { + sources = [ + "src/js/lib/analytics.js", + "src/js/lib/comlink.js", + "src/js/lib/ffmpeg.js", + "src/js/lib/ffmpeg.wasm", + ] + + outputs = [ "$chrome_camera_app_dir/js/lib/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_models") { + sources = [ + "src/js/models/async_writer.js", + "src/js/models/filenamer.js", + "src/js/models/filesystem.js", + "src/js/models/mp4_video_processor.js", + "src/js/models/nop_video_processor.js", + "src/js/models/result_saver.js", + "src/js/models/video_saver.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/models/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_mojo") { + sources = [ + "src/js/mojo/chrome_helper.js", + "src/js/mojo/device_operator.js", + "src/js/mojo/image_capture.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/mojo/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_views") { + sources = [ + "src/js/views/camera.js", + "src/js/views/camera_intent.js", + "src/js/views/dialog.js", + "src/js/views/settings.js", + "src/js/views/view.js", + "src/js/views/warning.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/views/{{source_file_part}}" ] +} + +copy("chrome_camera_app_js_views_camera") { + sources = [ + "src/js/views/camera/layout.js", + "src/js/views/camera/modes.js", + "src/js/views/camera/options.js", + "src/js/views/camera/preview.js", + "src/js/views/camera/recordtime.js", + "src/js/views/camera/review_result.js", + "src/js/views/camera/timertick.js", + ] + + outputs = [ "$chrome_camera_app_dir/js/views/camera/{{source_file_part}}" ] +} + +copy("chrome_camera_app_sounds") { + sources = [ + "src/sounds/record_end.ogg", + "src/sounds/record_pause.ogg", + "src/sounds/record_start.ogg", + "src/sounds/shutter.ogg", + "src/sounds/tick_final.ogg", + "src/sounds/tick_inc.ogg", + "src/sounds/tick_start.ogg", + ] + + outputs = [ "$chrome_camera_app_dir/sounds/{{source_file_part}}" ] +} + +copy("chrome_camera_app_views") { + sources = [ + "src/views/background.html", + "src/views/main.html", + ] + + outputs = [ "$chrome_camera_app_dir/views/{{source_file_part}}" ] +} + +copy("chrome_camera_app_mojo_generated") { + sources = [ + "$root_gen_dir/chromeos/components/camera_app_ui/camera_app_helper.mojom-lite.js", + "$root_gen_dir/components/arc/mojom/camera_intent.mojom-lite.js", + "$root_gen_dir/media/capture/mojom/image_capture.mojom-lite.js", + "$root_gen_dir/media/capture/video/chromeos/mojom/camera_app.mojom-lite.js", + "$root_gen_dir/media/capture/video/chromeos/mojom/camera_common.mojom-lite.js", + "$root_gen_dir/media/capture/video/chromeos/mojom/camera_metadata.mojom-lite.js", + "$root_gen_dir/media/capture/video/chromeos/mojom/camera_metadata_tags.mojom-lite.js", + "$root_gen_dir/mojo/public/js/mojo_bindings_lite.js", + "$root_gen_dir/mojo/public/mojom/base/time.mojom-lite.js", + "$root_gen_dir/third_party/blink/public/mojom/idle/idle_manager.mojom-lite.js", + "$root_gen_dir/ui/gfx/geometry/mojom/geometry.mojom-lite.js", + "$root_gen_dir/ui/gfx/range/mojom/range.mojom-lite.js", + ] + + deps = [ + "//chromeos/components/camera_app_ui:mojo_bindings_js", + "//media/capture/video/chromeos/mojom:cros_camera_js", + "//mojo/public/js:bindings_lite", + "//third_party/blink/public/mojom:mojom_platform_js", + ] + + outputs = [ "$chrome_camera_app_dir/js/mojo/{{source_file_part}}" ] +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/BUILD.gn new file mode 100644 index 00000000000..19cb7f9d981 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/BUILD.gn @@ -0,0 +1,158 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +group("closure_compile") { + deps = [ + ":compile_resources", + "browser_proxy:closure_compile", + "device:closure_compile", + "models:closure_compile", + "mojo:closure_compile", + "views:closure_compile", + ] +} + +js_type_check("compile_resources") { + deps = [ + ":async_job_queue", + ":background", + ":background_ops", + ":chrome_util", + ":error", + ":gallerybutton", + ":intent", + ":main", + ":metrics", + ":nav", + ":perf", + ":sound", + ":state", + ":toast", + ":tooltip", + ":type", + ":util", + ":waitable_event", + ] +} + +js_library("async_job_queue") { +} + +js_library("chrome_util") { +} + +js_library("error") { + deps = [ ":metrics" ] +} + +js_library("intent") { + deps = [ + ":chrome_util", + ":metrics", + ":type", + "mojo:chrome_helper", + ] +} + +js_library("gallerybutton") { + deps = [ + ":chrome_util", + "models:filesystem", + "models:result_saver", + "models:video_saver", + ] + externs_list = [ + "$externs_path/file_manager_private.js", + "$externs_path/file_system_provider.js", + ] +} + +js_library("metrics") { + deps = [ + ":state", + "externs:universal_analytics_api", + ] +} + +js_library("sound") { +} + +js_library("type") { +} + +js_library("main") { + deps = [ + ":background_ops", + ":chrome_util", + ":gallerybutton", + ":intent", + ":state", + ":type", + "device:constraints_preferrer", + "device:device_info_updater", + "views:camera", + "views:camera_intent", + "views:dialog", + "views:settings", + "views:warning", + ] +} + +js_library("nav") { + deps = [ + "mojo:device_operator", + "views:view", + ] +} + +js_library("perf") { +} + +js_library("state") { + deps = [ + ":perf", + ":type", + ] +} + +js_library("background") { + deps = [ + ":background_ops", + ":intent", + ] +} + +js_library("background_ops") { + deps = [ + ":chrome_util", + ":error", + ":intent", + ":perf", + ] +} + +js_library("toast") { + deps = [ ":util" ] +} + +js_library("tooltip") { + deps = [ ":chrome_util" ] +} + +js_library("util") { + deps = [ + ":state", + ":tooltip", + ":type", + "browser_proxy:browser_proxy", + "externs:w3c_api", + "mojo:chrome_helper", + ] + externs_list = [ "$externs_path/chrome_extensions.js" ] +} + +js_library("waitable_event") { +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/browser_proxy/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/browser_proxy/BUILD.gn new file mode 100644 index 00000000000..909b9b4aea2 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/browser_proxy/BUILD.gn @@ -0,0 +1,28 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +js_type_check("closure_compile") { + deps = [ ":browser_proxy" ] +} + +js_library("browser_proxy") { + deps = [ + "..:chrome_util", + "../mojo:chrome_helper", + ] + sources = [ + "browser_proxy.js", + "browser_proxy_interface.js", + "webui_browser_proxy.js", + ] + externs_list = [ + "../externs/chrome.js", + "$externs_path/chrome_extensions.js", + "$externs_path/file_manager_private.js", + "$externs_path/file_system_provider.js", + "$externs_path/metrics_private.js", + ] +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/device/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/device/BUILD.gn new file mode 100644 index 00000000000..f4b59b69732 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/device/BUILD.gn @@ -0,0 +1,44 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +js_type_check("closure_compile") { + deps = [ + ":camera3_device_info", + ":constraints_preferrer", + ":device_info_updater", + ":error", + ] +} + +js_library("camera3_device_info") { + deps = [ + "..:type", + "../mojo:image_capture", + ] +} + +js_library("constraints_preferrer") { + deps = [ + ":camera3_device_info", + "..:chrome_util", + "..:state", + "..:type", + "../browser_proxy:browser_proxy", + ] +} + +js_library("device_info_updater") { + deps = [ + ":camera3_device_info", + ":constraints_preferrer", + ":error", + "..:state", + "..:type", + ] +} + +js_library("error") { +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/externs/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/externs/BUILD.gn new file mode 100644 index 00000000000..cae1c53cb2d --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/externs/BUILD.gn @@ -0,0 +1,17 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +js_library("universal_analytics_api") { + sources = [] + + externs_list = [ "universal_analytics_api.js" ] +} + +js_library("w3c_api") { + sources = [] + + externs_list = [ "w3c_api.js" ] +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/lib/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/lib/BUILD.gn new file mode 100644 index 00000000000..67207741560 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/lib/BUILD.gn @@ -0,0 +1,13 @@ +# Copyright 2020 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("//third_party/closure_compiler/compile_js.gni") + +js_library("comlink") { + sources = [ "comlink.js" ] +} + +js_library("ffmpeg") { + sources = [ "ffmpeg.js" ] +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/models/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/models/BUILD.gn new file mode 100644 index 00000000000..87d69aee82c --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/models/BUILD.gn @@ -0,0 +1,44 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +js_type_check("closure_compile") { + deps = [ + ":filenamer", + ":filesystem", + ":result_saver", + ":video_saver", + ] +} + +js_library("filenamer") { +} + +js_library("filesystem") { + deps = [ + ":filenamer", + "../browser_proxy:browser_proxy", + ] +} + +js_library("result_saver") { +} + +js_library("video_saver") { + sources = [ + "async_writer.js", + "mp4_video_processor.js", + "nop_video_processor.js", + "video_saver.js", + ] + deps = [ + "..:async_job_queue", + "..:intent", + "..:waitable_event", + "../externs:w3c_api", + "../lib:comlink", + "../lib:ffmpeg", + ] +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/mojo/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/mojo/BUILD.gn new file mode 100644 index 00000000000..39e91ba7cb5 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/mojo/BUILD.gn @@ -0,0 +1,39 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +js_type_check("closure_compile") { + deps = [ + ":chrome_helper", + ":device_operator", + ":image_capture", + ] +} + +js_library("chrome_helper") { + deps = [ + "//chromeos/components/camera_app_ui:mojo_bindings_js_library_for_compile", + "//components/arc/mojom:camera_intent_js_library_for_compile", + "//third_party/blink/public/mojom:mojom_platform_js_library_for_compile", + ] + externs_list = [ "$externs_path/pending.js" ] +} + +js_library("device_operator") { + deps = [ + "..:type", + "//media/capture/video/chromeos/mojom:cros_camera_js_library_for_compile", + ] + externs_list = [ "$externs_path/pending.js" ] +} + +js_library("image_capture") { + deps = [ + ":device_operator", + "..:util", + "//media/capture/mojom:image_capture_js_library_for_compile", + ] + externs_list = [ "$externs_path/pending.js" ] +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/views/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/views/BUILD.gn new file mode 100644 index 00000000000..6cfbb72e337 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/views/BUILD.gn @@ -0,0 +1,67 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +group("closure_compile") { + deps = [ + ":compile_resources", + "camera:compile_resources", + ] +} + +js_type_check("compile_resources") { + deps = [ + ":camera", + ":camera_intent", + ":dialog", + ":settings", + ":view", + ":warning", + ] +} + +js_library("camera") { + deps = [ + "..:background_ops", + "..:chrome_util", + "..:metrics", + "..:type", + "../models:result_saver", + "camera:layout", + "camera:modes", + "camera:options", + "camera:preview", + "camera:timertick", + ] +} + +js_library("dialog") { +} + +js_library("camera_intent") { + deps = [ + ":camera", + "..:chrome_util", + "../models:video_saver", + "camera:review_result", + ] +} + +js_library("settings") { + deps = [ + ":view", + "..:nav", + "..:type", + "../device:camera3_device_info", + "../device:device_info_updater", + ] +} + +js_library("view") { + deps = [ "..:toast" ] +} + +js_library("warning") { +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/js/views/camera/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/js/views/camera/BUILD.gn new file mode 100644 index 00000000000..e1b3817be17 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/js/views/camera/BUILD.gn @@ -0,0 +1,77 @@ +# Copyright 2019 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("//third_party/closure_compiler/compile_js.gni") + +group("closure_compile") { + deps = [ ":compile_resources" ] +} + +js_type_check("compile_resources") { + deps = [ + ":layout", + ":modes", + ":options", + ":preview", + ":recordtime", + ":review_result", + ":timertick", + "../../mojo:device_operator", + ] +} + +js_library("layout") { + deps = [ + "../..:chrome_util", + "../..:type", + ] +} + +js_library("modes") { + deps = [ + ":recordtime", + "../../:async_job_queue", + "../..:sound", + "../..:toast", + "../..:type", + "../..:util", + "../../device:constraints_preferrer", + "../../models:filenamer", + "../../models:filesystem", + "../../models:video_saver", + "../../mojo:image_capture", + "//media/capture/video/chromeos/mojom:cros_camera_js_library_for_compile", + ] +} + +js_library("options") { + deps = [ + "../..:nav", + "../..:type", + "../..:util", + "../../device:device_info_updater", + ] +} + +js_library("preview") { + deps = [ + "../..:chrome_util", + "../..:nav", + "../..:type", + "//media/capture/video/chromeos/mojom:cros_camera_js_library_for_compile", + ] +} + +js_library("recordtime") { +} + +js_library("review_result") { + deps = [ + "../..:state", + "../..:util", + ] +} + +js_library("timertick") { +} diff --git a/chromium/chromeos/components/camera_app_ui/resources/src/strings/BUILD.gn b/chromium/chromeos/components/camera_app_ui/resources/src/strings/BUILD.gn new file mode 100644 index 00000000000..6535e9e8673 --- /dev/null +++ b/chromium/chromeos/components/camera_app_ui/resources/src/strings/BUILD.gn @@ -0,0 +1,71 @@ +# Copyright 2019 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("//chrome/common/features.gni") +import("//tools/grit/grit_rule.gni") + +chrome_camera_app_dir = "$root_out_dir/resources/chromeos/camera" + +grit("camera_strings") { + source = "camera_strings.grd" + defines = chrome_grit_defines + outputs = [ + "_locales/am/messages.json", + "_locales/ar/messages.json", + "_locales/bg/messages.json", + "_locales/bn/messages.json", + "_locales/ca/messages.json", + "_locales/cs/messages.json", + "_locales/da/messages.json", + "_locales/de/messages.json", + "_locales/el/messages.json", + "_locales/en_GB/messages.json", + "_locales/en/messages.json", + "_locales/es/messages.json", + "_locales/es_419/messages.json", + "_locales/et/messages.json", + "_locales/fa/messages.json", + "_locales/fi/messages.json", + "_locales/fil/messages.json", + "_locales/fr/messages.json", + "_locales/gu/messages.json", + "_locales/he/messages.json", + "_locales/hi/messages.json", + "_locales/hr/messages.json", + "_locales/hu/messages.json", + "_locales/id/messages.json", + "_locales/it/messages.json", + "_locales/ja/messages.json", + "_locales/kn/messages.json", + "_locales/ko/messages.json", + "_locales/lt/messages.json", + "_locales/lv/messages.json", + "_locales/ml/messages.json", + "_locales/mr/messages.json", + "_locales/ms/messages.json", + "_locales/nl/messages.json", + "_locales/nb/messages.json", + "_locales/pl/messages.json", + "_locales/pt_BR/messages.json", + "_locales/pt_PT/messages.json", + "_locales/ro/messages.json", + "_locales/ru/messages.json", + "_locales/sk/messages.json", + "_locales/sl/messages.json", + "_locales/sr/messages.json", + "_locales/sv/messages.json", + "_locales/sw/messages.json", + "_locales/ta/messages.json", + "_locales/te/messages.json", + "_locales/th/messages.json", + "_locales/tr/messages.json", + "_locales/uk/messages.json", + "_locales/vi/messages.json", + "_locales/zh_CN/messages.json", + "_locales/zh_TW/messages.json", + ] + output_dir = chrome_camera_app_dir + + resource_ids = "" +} |