diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-09-18 14:34:04 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-10-04 11:15:27 +0000 |
commit | e6430e577f105ad8813c92e75c54660c4985026e (patch) | |
tree | 88115e5d1fb471fea807111924dcccbeadbf9e4f /chromium/ash | |
parent | 53d399fe6415a96ea6986ec0d402a9c07da72453 (diff) | |
download | qtwebengine-chromium-e6430e577f105ad8813c92e75c54660c4985026e.tar.gz |
BASELINE: Update Chromium to 61.0.3163.99
Change-Id: I8452f34574d88ca2b27af9bd56fc9ff3f16b1367
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/ash')
25 files changed, 914 insertions, 389 deletions
diff --git a/chromium/ash/BUILD.gn b/chromium/ash/BUILD.gn index 793a7e5956c..6af7b3d742a 100644 --- a/chromium/ash/BUILD.gn +++ b/chromium/ash/BUILD.gn @@ -17,13 +17,13 @@ component("ash") { sources = [ "accelerators/accelerator_commands.cc", "accelerators/accelerator_commands.h", - "accelerators/accelerator_commands_aura.cc", - "accelerators/accelerator_commands_aura.h", + "accelerators/accelerator_commands_classic.cc", + "accelerators/accelerator_commands_classic.h", "accelerators/accelerator_controller.cc", "accelerators/accelerator_controller.h", "accelerators/accelerator_controller_delegate.h", - "accelerators/accelerator_controller_delegate_aura.cc", - "accelerators/accelerator_controller_delegate_aura.h", + "accelerators/accelerator_controller_delegate_classic.cc", + "accelerators/accelerator_controller_delegate_classic.h", "accelerators/accelerator_delegate.cc", "accelerators/accelerator_delegate.h", "accelerators/accelerator_router.cc", @@ -61,12 +61,6 @@ component("ash") { "ash_touch_exploration_manager_chromeos.cc", "ash_touch_exploration_manager_chromeos.h", "ash_view_ids.h", - "aura/key_event_watcher_aura.cc", - "aura/key_event_watcher_aura.h", - "aura/pointer_watcher_adapter.cc", - "aura/pointer_watcher_adapter.h", - "aura/shell_port_classic.cc", - "aura/shell_port_classic.h", "autoclick/autoclick_controller.cc", "autoclick/autoclick_controller.h", "cancel_mode.cc", @@ -79,19 +73,8 @@ component("ash") { "default_accessibility_delegate.h", "default_wallpaper_delegate.cc", "default_wallpaper_delegate.h", - "devtools/ash_devtools_css_agent.cc", - "devtools/ash_devtools_css_agent.h", - "devtools/ash_devtools_dom_agent.cc", - "devtools/ash_devtools_dom_agent.h", - "devtools/ui_element.cc", - "devtools/ui_element.h", - "devtools/ui_element_delegate.h", - "devtools/view_element.cc", - "devtools/view_element.h", - "devtools/widget_element.cc", - "devtools/widget_element.h", - "devtools/window_element.cc", - "devtools/window_element.h", + "display/ash_display_controller.cc", + "display/ash_display_controller.h", "display/cursor_window_controller.cc", "display/cursor_window_controller.h", "display/display_animator.h", @@ -142,6 +125,12 @@ component("ash") { "drag_drop/drag_drop_tracker.h", "drag_drop/drag_image_view.cc", "drag_drop/drag_image_view.h", + "fast_ink/fast_ink_pointer_controller.cc", + "fast_ink/fast_ink_pointer_controller.h", + "fast_ink/fast_ink_points.cc", + "fast_ink/fast_ink_points.h", + "fast_ink/fast_ink_view.cc", + "fast_ink/fast_ink_view.h", "first_run/desktop_cleaner.cc", "first_run/desktop_cleaner.h", "first_run/first_run_helper.cc", @@ -174,6 +163,15 @@ component("ash") { "gpu_support_stub.h", "high_contrast/high_contrast_controller.cc", "high_contrast/high_contrast_controller.h", + "highlighter/highlighter_controller.cc", + "highlighter/highlighter_controller.h", + "highlighter/highlighter_gesture_util.cc", + "highlighter/highlighter_gesture_util.h", + "highlighter/highlighter_result_view.cc", + "highlighter/highlighter_result_view.h", + "highlighter/highlighter_selection_observer.h", + "highlighter/highlighter_view.cc", + "highlighter/highlighter_view.h", "host/ash_window_tree_host.cc", "host/ash_window_tree_host.h", "host/ash_window_tree_host_init_params.h", @@ -186,9 +184,9 @@ component("ash") { "host/root_window_transformer.h", "host/transformer_helper.cc", "host/transformer_helper.h", + "ime/ime_controller.cc", + "ime/ime_controller.h", "ime/ime_switch_type.h", - "key_event_watcher.cc", - "key_event_watcher.h", "keyboard/keyboard_observer_register.cc", "keyboard/keyboard_observer_register.h", "keyboard/keyboard_ui.cc", @@ -196,8 +194,6 @@ component("ash") { "keyboard/keyboard_ui_observer.h", "laser/laser_pointer_controller.cc", "laser/laser_pointer_controller.h", - "laser/laser_pointer_points.cc", - "laser/laser_pointer_points.h", "laser/laser_pointer_view.cc", "laser/laser_pointer_view.h", "laser/laser_segment_utils.cc", @@ -210,10 +206,23 @@ component("ash") { "login/lock_screen_controller.h", "login/ui/lock_contents_view.cc", "login/ui/lock_contents_view.h", + "login/ui/lock_debug_view.cc", + "login/ui/lock_debug_view.h", "login/ui/lock_screen.cc", "login/ui/lock_screen.h", "login/ui/lock_window.cc", "login/ui/lock_window.h", + "login/ui/login_auth_user_view.cc", + "login/ui/login_auth_user_view.h", + "login/ui/login_constants.h", + "login/ui/login_data_dispatcher.cc", + "login/ui/login_data_dispatcher.h", + "login/ui/login_password_view.cc", + "login/ui/login_password_view.h", + "login/ui/login_pin_view.cc", + "login/ui/login_pin_view.h", + "login/ui/login_user_view.cc", + "login/ui/login_user_view.h", "login_status.h", "magnifier/magnification_controller.cc", "magnifier/magnification_controller.h", @@ -241,6 +250,8 @@ component("ash") { "new_window_controller.cc", "new_window_controller.h", "palette_delegate.h", + "pointer_watcher_adapter_classic.cc", + "pointer_watcher_adapter_classic.h", "root_window_controller.cc", "root_window_controller.h", "root_window_settings.cc", @@ -261,18 +272,6 @@ component("ash") { "session/session_controller.h", "session/session_observer.cc", "session/session_observer.h", - "session/session_state_delegate.h", - "shared/immersive_context.cc", - "shared/immersive_context.h", - "shared/immersive_focus_watcher.h", - "shared/immersive_fullscreen_controller.cc", - "shared/immersive_fullscreen_controller.h", - "shared/immersive_fullscreen_controller_delegate.h", - "shared/immersive_gesture_handler.h", - "shared/immersive_handler_factory.cc", - "shared/immersive_handler_factory.h", - "shared/immersive_revealed_lock.cc", - "shared/immersive_revealed_lock.h", "shelf/app_list_button.cc", "shelf/app_list_button.h", "shelf/app_list_shelf_item_delegate.cc", @@ -307,9 +306,6 @@ component("ash") { "shelf/shelf_layout_manager_observer.h", "shelf/shelf_locking_manager.cc", "shelf/shelf_locking_manager.h", - "shelf/shelf_model.cc", - "shelf/shelf_model.h", - "shelf/shelf_model_observer.h", "shelf/shelf_observer.h", "shelf/shelf_tooltip_manager.cc", "shelf/shelf_tooltip_manager.h", @@ -323,6 +319,8 @@ component("ash") { "shelf/shelf_window_watcher.h", "shelf/shelf_window_watcher_item_delegate.cc", "shelf/shelf_window_watcher_item_delegate.h", + "shelf/voice_interaction_overlay.cc", + "shelf/voice_interaction_overlay.h", "shell.cc", "shell.h", "shell_delegate.h", @@ -330,6 +328,8 @@ component("ash") { "shell_observer.h", "shell_port.cc", "shell_port.h", + "shell_port_classic.cc", + "shell_port_classic.h", "shutdown_controller.cc", "shutdown_controller.h", "sticky_keys/sticky_keys_controller.cc", @@ -347,6 +347,8 @@ component("ash") { "system/bluetooth/bluetooth_notification_controller.cc", "system/bluetooth/bluetooth_notification_controller.h", "system/bluetooth/bluetooth_observer.h", + "system/bluetooth/bluetooth_power_controller.cc", + "system/bluetooth/bluetooth_power_controller.h", "system/bluetooth/tray_bluetooth.cc", "system/bluetooth/tray_bluetooth.h", "system/bluetooth/tray_bluetooth_helper.cc", @@ -383,9 +385,11 @@ component("ash") { "system/ime_menu/ime_list_view.h", "system/ime_menu/ime_menu_tray.cc", "system/ime_menu/ime_menu_tray.h", + "system/keyboard_brightness/keyboard_brightness_controller.cc", + "system/keyboard_brightness/keyboard_brightness_controller.h", + "system/keyboard_brightness/tray_keyboard_brightness.cc", + "system/keyboard_brightness/tray_keyboard_brightness.h", "system/keyboard_brightness_control_delegate.h", - "system/keyboard_brightness_controller.cc", - "system/keyboard_brightness_controller.h", "system/locale/locale_notification_controller.cc", "system/locale/locale_notification_controller.h", "system/lock_screen_action/lock_screen_action_tray.cc", @@ -423,6 +427,8 @@ component("ash") { "system/night_light/night_light_controller.h", "system/night_light/night_light_toggle_button.cc", "system/night_light/night_light_toggle_button.h", + "system/night_light/time_of_day.cc", + "system/night_light/time_of_day.h", "system/night_light/tray_night_light.cc", "system/night_light/tray_night_light.h", "system/overview/overview_button_tray.cc", @@ -487,7 +493,6 @@ component("ash") { "system/session/logout_confirmation_controller.h", "system/session/logout_confirmation_dialog.cc", "system/session/logout_confirmation_dialog.h", - "system/session/session_length_limit_observer.h", "system/session/tray_session_length_limit.cc", "system/session/tray_session_length_limit.h", "system/status_area_focus_observer.h", @@ -517,8 +522,6 @@ component("ash") { "system/tray/actionable_view.h", "system/tray/hover_highlight_view.cc", "system/tray/hover_highlight_view.h", - "system/tray/ime_info.cc", - "system/tray/ime_info.h", "system/tray/label_tray_view.cc", "system/tray/label_tray_view.h", "system/tray/size_range_layout.cc", @@ -551,6 +554,8 @@ component("ash") { "system/tray/tray_event_filter.h", "system/tray/tray_image_item.cc", "system/tray/tray_image_item.h", + "system/tray/tray_info_label.cc", + "system/tray/tray_info_label.h", "system/tray/tray_item_more.cc", "system/tray/tray_item_more.h", "system/tray/tray_item_view.cc", @@ -571,6 +576,8 @@ component("ash") { "system/tray_accessibility.h", "system/tray_caps_lock.cc", "system/tray_caps_lock.h", + "system/tray_drag_controller.cc", + "system/tray_drag_controller.h", "system/tray_tracing.cc", "system/tray_tracing.h", "system/update/tray_update.cc", @@ -626,8 +633,6 @@ component("ash") { "wm/always_on_top_controller.h", "wm/ash_focus_rules.cc", "wm/ash_focus_rules.h", - "wm/ash_native_cursor_manager.cc", - "wm/ash_native_cursor_manager.h", "wm/boot_splash_screen_chromeos.cc", "wm/boot_splash_screen_chromeos.h", "wm/container_finder.cc", @@ -654,12 +659,14 @@ component("ash") { "wm/gestures/overview_gesture_handler.h", "wm/immersive_context_ash.cc", "wm/immersive_context_ash.h", - "wm/immersive_focus_watcher_aura.cc", - "wm/immersive_focus_watcher_aura.h", - "wm/immersive_gesture_handler_aura.cc", - "wm/immersive_gesture_handler_aura.h", + "wm/immersive_focus_watcher_classic.cc", + "wm/immersive_focus_watcher_classic.h", + "wm/immersive_gesture_handler_classic.cc", + "wm/immersive_gesture_handler_classic.h", "wm/immersive_handler_factory_ash.cc", "wm/immersive_handler_factory_ash.h", + "wm/lock_action_handler_layout_manager.cc", + "wm/lock_action_handler_layout_manager.h", "wm/lock_layout_manager.cc", "wm/lock_layout_manager.h", "wm/lock_state_controller.cc", @@ -667,30 +674,20 @@ component("ash") { "wm/lock_state_observer.h", "wm/lock_window_state.cc", "wm/lock_window_state.h", - "wm/maximize_mode/maximize_mode_backdrop_delegate_impl.cc", - "wm/maximize_mode/maximize_mode_backdrop_delegate_impl.h", - "wm/maximize_mode/maximize_mode_controller.cc", - "wm/maximize_mode/maximize_mode_controller.h", - "wm/maximize_mode/maximize_mode_event_handler.cc", - "wm/maximize_mode/maximize_mode_event_handler.h", - "wm/maximize_mode/maximize_mode_event_handler_aura.cc", - "wm/maximize_mode/maximize_mode_event_handler_aura.h", - "wm/maximize_mode/maximize_mode_window_manager.cc", - "wm/maximize_mode/maximize_mode_window_manager.h", - "wm/maximize_mode/maximize_mode_window_state.cc", - "wm/maximize_mode/maximize_mode_window_state.h", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard.h", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.h", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_x11.cc", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_x11.h", "wm/mru_window_tracker.cc", "wm/mru_window_tracker.h", + "wm/native_cursor_manager_ash.h", + "wm/native_cursor_manager_ash_classic.cc", + "wm/native_cursor_manager_ash_classic.h", + "wm/native_cursor_manager_ash_mus.cc", + "wm/native_cursor_manager_ash_mus.h", "wm/overlay_event_filter.cc", "wm/overlay_event_filter.h", "wm/overview/cleanup_animation_observer.cc", "wm/overview/cleanup_animation_observer.h", "wm/overview/overview_animation_type.h", + "wm/overview/scoped_hide_overview_windows.cc", + "wm/overview/scoped_hide_overview_windows.h", "wm/overview/scoped_overview_animation_settings.cc", "wm/overview/scoped_overview_animation_settings.h", "wm/overview/scoped_transform_overview_window.cc", @@ -734,6 +731,8 @@ component("ash") { "wm/session_state_animator.h", "wm/session_state_animator_impl.cc", "wm/session_state_animator_impl.h", + "wm/splitview/split_view_controller.cc", + "wm/splitview/split_view_controller.h", "wm/stacking_controller.cc", "wm/stacking_controller.h", "wm/switchable_windows.cc", @@ -747,6 +746,22 @@ component("ash") { "wm/system_modal_container_layout_manager.h", "wm/system_wallpaper_controller.cc", "wm/system_wallpaper_controller.h", + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard.h", + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard_x11.cc", + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard_x11.h", + "wm/tablet_mode/tablet_mode_backdrop_delegate_impl.cc", + "wm/tablet_mode/tablet_mode_backdrop_delegate_impl.h", + "wm/tablet_mode/tablet_mode_controller.cc", + "wm/tablet_mode/tablet_mode_controller.h", + "wm/tablet_mode/tablet_mode_event_handler.cc", + "wm/tablet_mode/tablet_mode_event_handler.h", + "wm/tablet_mode/tablet_mode_event_handler_classic.cc", + "wm/tablet_mode/tablet_mode_event_handler_classic.h", + "wm/tablet_mode/tablet_mode_observer.h", + "wm/tablet_mode/tablet_mode_window_manager.cc", + "wm/tablet_mode/tablet_mode_window_manager.h", + "wm/tablet_mode/tablet_mode_window_state.cc", + "wm/tablet_mode/tablet_mode_window_state.h", "wm/toplevel_window_event_handler.cc", "wm/toplevel_window_event_handler.h", "wm/video_detector.cc", @@ -759,8 +774,8 @@ component("ash") { "wm/window_cycle_controller.cc", "wm/window_cycle_controller.h", "wm/window_cycle_event_filter.h", - "wm/window_cycle_event_filter_aura.cc", - "wm/window_cycle_event_filter_aura.h", + "wm/window_cycle_event_filter_classic.cc", + "wm/window_cycle_event_filter_classic.h", "wm/window_cycle_list.cc", "wm/window_cycle_list.h", "wm/window_dimmer.cc", @@ -809,8 +824,8 @@ component("ash") { "wm/workspace/two_step_edge_cycler.h", "wm/workspace/workspace_event_handler.cc", "wm/workspace/workspace_event_handler.h", - "wm/workspace/workspace_event_handler_aura.cc", - "wm/workspace/workspace_event_handler_aura.h", + "wm/workspace/workspace_event_handler_classic.cc", + "wm/workspace/workspace_event_handler_classic.h", "wm/workspace/workspace_layout_manager.cc", "wm/workspace/workspace_layout_manager.h", "wm/workspace/workspace_types.h", @@ -818,10 +833,6 @@ component("ash") { "wm/workspace/workspace_window_resizer.h", "wm/workspace_controller.cc", "wm/workspace_controller.h", - "wm_display_observer.h", - "wm_transient_window_observer.h", - "wm_window.cc", - "wm_window.h", ] configs += [ "//build/config:precompiled_headers" ] @@ -830,7 +841,6 @@ component("ash") { public_deps = [ "//ash/resources", "//ash/resources/vector_icons", - "//ash/shared:app_types", "//ash/strings", ] deps = [ @@ -850,9 +860,7 @@ component("ash") { "//components/quirks", "//components/session_manager:base", "//components/signin/core/account_id", - "//components/ui_devtools", "//components/user_manager", - "//components/vector_icons", "//components/wallpaper", "//device/bluetooth", "//gpu/command_buffer/client", @@ -862,10 +870,12 @@ component("ash") { "//services/preferences/public/cpp", "//services/service_manager/public/cpp", "//services/ui/public/cpp", + "//services/ui/public/cpp/input_devices", "//services/ui/public/interfaces", "//skia", # TODO(msw): Remove this; only ash_with_content should depend on webkit. + "//components/vector_icons", "//third_party/WebKit/public:blink_headers", "//third_party/icu", "//third_party/qcms", @@ -896,9 +906,9 @@ component("ash") { "//ui/platform_window/stub", "//ui/resources", "//ui/strings", - "//ui/vector_icons", "//ui/views", "//ui/wm", + "//ui/wm/public", "//url", ] @@ -921,8 +931,8 @@ component("ash") { sources -= [ "host/ash_window_tree_host_x11.cc", "host/ash_window_tree_host_x11.h", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_x11.cc", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_x11.h", + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard_x11.cc", + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard_x11.h", ] } @@ -932,10 +942,11 @@ component("ash") { "//ui/events/ozone:events_ozone", "//ui/ozone", ] - } else { - sources -= [ - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc", - "wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.h", + sources += [ + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc", + "wm/tablet_mode/scoped_disable_internal_mouse_and_keyboard_ozone.h", + "wm/tablet_mode/touchpad_and_keyboard_disabler.cc", + "wm/tablet_mode/touchpad_and_keyboard_disabler.h", ] } @@ -1008,6 +1019,8 @@ static_library("ash_shell_lib") { "shell/panel_window.h", "shell/shell_delegate_impl.cc", "shell/shell_delegate_impl.h", + "shell/shell_views_delegate.cc", + "shell/shell_views_delegate.h", "shell/toplevel_window.cc", "shell/toplevel_window.h", "shell/widgets.cc", @@ -1027,8 +1040,8 @@ static_library("ash_shell_lib") { deps = [ ":ash", + ":test_support_without_content", "//ash/public/cpp:ash_public_cpp", - "//ash/test:test_support_without_content", "//base", "//base:i18n", "//components/user_manager", @@ -1063,8 +1076,8 @@ static_library("ash_shell_lib_with_content") { deps = [ ":ash_shell_lib", ":ash_with_content", + ":test_support_without_content", "//ash/public/cpp:ash_public_cpp", - "//ash/test:test_support_without_content", "//base:i18n", "//chrome:packed_resources", "//chromeos", @@ -1106,8 +1119,8 @@ test("ash_content_unittests") { deps = [ ":ash", ":ash_with_content", + ":test_support_with_content", "//ash/public/cpp:ash_public_cpp", - "//ash/test:test_support_with_content", "//base", "//base/test:test_support", "//chromeos", @@ -1116,6 +1129,7 @@ test("ash_content_unittests") { "//components/quirks", "//components/signin/core/account_id", "//components/user_manager", + "//components/viz/test:test_support", "//content/public/browser", "//content/test:test_support", "//device/bluetooth", @@ -1136,6 +1150,7 @@ test("ash_content_unittests") { "//ui/views:test_support", "//ui/views/controls/webview:test_support", "//ui/web_dialogs:test_support", + "//ui/wm/public", ] data_deps = [ @@ -1157,19 +1172,33 @@ source_set("common_unittests") { "accelerators/spoken_feedback_toggler_unittest.cc", "ash_touch_exploration_manager_chromeos_unittest.cc", "autoclick/autoclick_unittest.cc", - "devtools/ash_devtools_unittest.cc", "display/display_configuration_controller_unittest.cc", "drag_drop/drag_image_view_unittest.cc", + "fast_ink/fast_ink_points_unittest.cc", "first_run/first_run_helper_unittest.cc", "focus_cycler_unittest.cc", "frame/caption_buttons/frame_caption_button_container_view_unittest.cc", "frame/caption_buttons/frame_size_button_unittest.cc", "frame/custom_frame_view_ash_unittest.cc", "frame/default_header_painter_unittest.cc", + "highlighter/highlighter_controller_unittest.cc", + "highlighter/highlighter_gesture_util_unittest.cc", + "ime/ime_controller_unittest.cc", "laser/laser_pointer_controller_unittest.cc", - "laser/laser_pointer_points_unittest.cc", "laser/laser_segment_utils_unittest.cc", "login/lock_screen_controller_unittest.cc", + "login/mock_lock_screen_client.cc", + "login/mock_lock_screen_client.h", + "login/ui/lock_contents_view_unittest.cc", + "login/ui/lock_screen_sanity_unittest.cc", + "login/ui/login_auth_user_view_unittest.cc", + "login/ui/login_password_view_test.cc", + "login/ui/login_pin_view_unittest.cc", + "login/ui/login_test_base.cc", + "login/ui/login_test_base.h", + "login/ui/login_test_utils.cc", + "login/ui/login_test_utils.h", + "login/ui/login_user_view_unittest.cc", "metrics/desktop_task_switch_metric_recorder_unittest.cc", "metrics/pointer_metrics_recorder_unittest.cc", "metrics/task_switch_metrics_recorder_unittest.cc", @@ -1186,9 +1215,9 @@ source_set("common_unittests") { "shelf/shelf_application_menu_model_unittest.cc", "shelf/shelf_background_animator_unittest.cc", "shelf/shelf_button_pressed_metric_tracker_unittest.cc", + "shelf/shelf_controller_unittest.cc", "shelf/shelf_layout_manager_unittest.cc", "shelf/shelf_locking_manager_unittest.cc", - "shelf/shelf_model_unittest.cc", "shelf/shelf_tooltip_manager_unittest.cc", "shelf/shelf_unittest.cc", "shelf/shelf_view_unittest.cc", @@ -1198,6 +1227,7 @@ source_set("common_unittests") { "sticky_keys/sticky_keys_overlay_unittest.cc", "sticky_keys/sticky_keys_unittest.cc", "system/audio/tray_audio_unittest.cc", + "system/bluetooth/bluetooth_power_controller_unittest.cc", "system/bluetooth/tray_bluetooth_helper_unittest.cc", "system/brightness/tray_brightness_unittest.cc", "system/date/date_view_unittest.cc", @@ -1205,6 +1235,7 @@ source_set("common_unittests") { "system/enterprise/tray_enterprise_unittest.cc", "system/ime/tray_ime_chromeos_unittest.cc", "system/ime_menu/ime_menu_tray_unittest.cc", + "system/keyboard_brightness/tray_keyboard_brightness_unittest.cc", "system/lock_screen_action/lock_screen_action_tray_unittest.cc", "system/media_security/multi_profile_media_tray_item_unittest.cc", "system/network/network_icon_unittest.cc", @@ -1212,11 +1243,13 @@ source_set("common_unittests") { "system/network/tray_network_unittest.cc", "system/network/vpn_list_unittest.cc", "system/night_light/night_light_controller_unittest.cc", + "system/night_light/time_of_day_unittest.cc", "system/night_light/tray_night_light_unittest.cc", "system/overview/overview_button_tray_unittest.cc", "system/palette/mock_palette_tool_delegate.cc", "system/palette/mock_palette_tool_delegate.h", "system/palette/palette_tool_manager_unittest.cc", + "system/palette/palette_tray_unittest.cc", "system/palette/tools/create_note_unittest.cc", "system/palette/tools/metalayer_unittest.cc", "system/palette/tools/screenshot_unittest.cc", @@ -1236,7 +1269,10 @@ source_set("common_unittests") { "system/tray/size_range_layout_unittest.cc", "system/tray/system_tray_unittest.cc", "system/tray/tray_details_view_unittest.cc", + "system/tray/tray_event_filter_unittest.cc", + "system/tray/tray_info_label_unittest.cc", "system/tray/tri_view_unittest.cc", + "system/tray_tracing_unittest.cc", "system/update/tray_update_unittest.cc", "system/user/tray_user_unittest.cc", "system/web_notification/ash_popup_alignment_delegate_unittest.cc", @@ -1250,8 +1286,6 @@ source_set("common_unittests") { "wm/container_finder_unittest.cc", "wm/immersive_fullscreen_controller_unittest.cc", "wm/lock_state_controller_unittest.cc", - "wm/maximize_mode/accelerometer_test_data_literals.cc", - "wm/maximize_mode/maximize_mode_window_manager_unittest.cc", "wm/mru_window_tracker_unittest.cc", "wm/overlay_event_filter_unittest.cc", "wm/overview/cleanup_animation_observer_unittest.cc", @@ -1262,8 +1296,11 @@ source_set("common_unittests") { "wm/screen_dimmer_unittest.cc", "wm/screen_pinning_controller_unittest.cc", "wm/session_state_animator_impl_unittest.cc", + "wm/splitview/split_view_controller_unittest.cc", "wm/stacking_controller_unittest.cc", "wm/system_modal_container_layout_manager_unittest.cc", + "wm/tablet_mode/accelerometer_test_data_literals.cc", + "wm/tablet_mode/tablet_mode_window_manager_unittest.cc", "wm/toplevel_window_event_handler_unittest.cc", "wm/video_detector_unittest.cc", "wm/window_animations_unittest.cc", @@ -1280,18 +1317,20 @@ source_set("common_unittests") { "wm/workspace_controller_unittest.cc", ] deps = [ + ":test_support_without_content", "//ash", "//ash/mus:lib", "//ash/public/cpp:ash_public_cpp", "//ash/public/cpp:unit_tests", "//ash/resources/vector_icons", - "//ash/test:test_support_without_content", "//base", "//base/test:test_support", "//chromeos", "//chromeos:power_manager_proto", + "//chromeos:test_support", "//chromeos:test_support_without_gmock", "//components/prefs:test_support", + "//components/user_manager:test_support", "//device/bluetooth", "//services/ui/public/interfaces", "//testing/gmock", @@ -1307,16 +1346,22 @@ source_set("common_unittests") { "//ui/events:test_support", "//ui/gfx:test_support", "//ui/keyboard", + "//ui/keyboard:test_support", "//ui/message_center", "//ui/message_center:test_support", "//ui/views", "//ui/views:test_support", "//ui/wm", "//ui/wm:test_support", + "//ui/wm/public", ] public_deps = [ - "//ash/test:test_support_without_content", + ":test_support_without_content", ] + + if (use_ozone) { + sources += [ "wm/tablet_mode/touchpad_and_keyboard_disabler_unittest.cc" ] + } } test("ash_unittests") { @@ -1326,9 +1371,7 @@ test("ash_unittests") { # Specific to classic-ash. "app_list/app_list_presenter_delegate_unittest.cc", - - # TODO: move to common_unittests when http://crbug.com/693790 is fixed. - "aura/pointer_watcher_adapter_unittest.cc", + "pointer_watcher_adapter_classic_unittest.cc", # TODO: decide if this needs to be ported. http://crbug.com/695566. "dip_unittest.cc", @@ -1389,7 +1432,7 @@ test("ash_unittests") { "wm/always_on_top_controller_unittest.cc", # TODO: mash doesn't support CursorManager. http://crbug.com/631103. - "wm/ash_native_cursor_manager_unittest.cc", + "wm/native_cursor_manager_ash_unittest.cc", # TODO: mash doesn't support DragWindowResizer. http://crbug.com/633782. "wm/drag_window_resizer_unittest.cc", @@ -1400,10 +1443,14 @@ test("ash_unittests") { # TODO: fails because keyboard is not enabled in mash. # http://crbug.com/648733. + "wm/lock_action_handler_layout_manager_unittest.cc", + + # TODO: fails because keyboard is not enabled in mash. + # http://crbug.com/648733. "wm/lock_layout_manager_unittest.cc", # TODO: investigate failures in mash. http://crbug.com/698092. - "wm/maximize_mode/maximize_mode_controller_unittest.cc", + "wm/tablet_mode/tablet_mode_controller_unittest.cc", # TODO: mash doesn't support CursorManager. http://crbug.com/631103. "wm/resize_shadow_and_cursor_unittest.cc", @@ -1428,20 +1475,22 @@ test("ash_unittests") { deps = [ ":ash", ":common_unittests", + ":test_support_without_content", "//ash/autoclick/common:autoclick", "//ash/public/cpp:ash_public_cpp", "//ash/resources", "//ash/resources/vector_icons", "//ash/strings", - "//ash/test:test_support_without_content", "//ash/touch_hud", "//base", "//base/test:test_support", + "//cc:test_support", "//chromeos", "//chromeos:test_support_without_gmock", "//components/quirks", "//components/signin/core/account_id", "//components/user_manager", + "//components/viz/test:test_support", "//device/bluetooth", "//mojo/edk/system", "//net:net", @@ -1473,12 +1522,14 @@ test("ash_unittests") { "//ui/gfx/geometry", "//ui/gl:test_support", "//ui/keyboard", + "//ui/keyboard:test_support", "//ui/message_center", "//ui/resources", "//ui/strings", "//ui/views", "//ui/views:test_support", "//ui/wm", + "//ui/wm/public", "//url", ] @@ -1500,6 +1551,31 @@ test("ash_unittests") { ] } +test("ash_perftests") { + sources = [ + "perftests/ash_background_filter_blur_perftest.cc", + "test/ash_perftests.cc", + "test/ash_test_suite.cc", + "test/ash_test_suite.h", + ] + + deps = [ + ":test_support_without_content", + "//ash/public/cpp:ash_public_cpp", + "//base/test:test_support", + "//cc:test_support", + "//cc/base", + "//components/viz/test:test_support", + "//mojo/edk/embedder:headers", + "//testing/gtest", + "//testing/perf", + "//ui/aura", + "//ui/base", + "//ui/compositor:test_support", + "//ui/gl:test_support", + ] +} + executable("ash_shell_with_content") { testonly = true sources = [ @@ -1523,3 +1599,210 @@ executable("ash_shell_with_content") { "//ash/resources:ash_test_resources_200_percent", ] } + +static_library("test_support_without_content") { + testonly = true + sources = [ + "test/ash_test_environment_default.cc", + ] + + public_deps = [ + ":test_support_common", + ] + + deps = [ + "//base", + "//base/test:test_support", + "//skia", + ] +} + +static_library("test_support_with_content") { + testonly = true + sources = [ + "test/ash_test_environment_content.cc", + "test/ash_test_environment_content.h", + "test/content/test_shell_content_state.cc", + "test/content/test_shell_content_state.h", + ] + configs += [ "//build/config:precompiled_headers" ] + + public_deps = [ + ":test_support_common", + "//ash:ash_with_content", + "//content/public/browser", + "//content/test:test_support", + "//skia", + ] +} + +# Internal target consumed by |test_support_with_content| and +# |test_support_without_content|. This target contains all the test support +# files, with the exception of an implementation of AshTestEnvironment. +# Consumers of ash should use one of |test_support_with_content| or +# |test_support_without_content|. +static_library("test_support_common") { + testonly = true + visibility = [ ":*" ] + sources = [ + "app_list/test_app_list_view_presenter_impl.cc", + "app_list/test_app_list_view_presenter_impl.h", + "display/display_configuration_controller_test_api.cc", + "display/display_configuration_controller_test_api.h", + "display/mirror_window_test_api.cc", + "display/mirror_window_test_api.h", + "display/screen_orientation_controller_test_api.cc", + "display/screen_orientation_controller_test_api.h", + "highlighter/highlighter_controller_test_api.cc", + "highlighter/highlighter_controller_test_api.h", + "keyboard/test_keyboard_ui.cc", + "keyboard/test_keyboard_ui.h", + "laser/laser_pointer_controller_test_api.cc", + "laser/laser_pointer_controller_test_api.h", + "metrics/task_switch_time_tracker_test_api.cc", + "metrics/task_switch_time_tracker_test_api.h", + "metrics/user_metrics_recorder_test_api.cc", + "metrics/user_metrics_recorder_test_api.h", + + # TODO(jamescook): Consider adding a //ash/public/cpp:test_support target. + "public/cpp/immersive/immersive_fullscreen_controller_test_api.cc", + "public/cpp/immersive/immersive_fullscreen_controller_test_api.h", + "rotator/screen_rotation_animator_test_api.cc", + "rotator/screen_rotation_animator_test_api.h", + "session/test_session_controller_client.cc", + "session/test_session_controller_client.h", + "shelf/overflow_bubble_view_test_api.cc", + "shelf/overflow_bubble_view_test_api.h", + "shelf/overflow_button_test_api.cc", + "shelf/overflow_button_test_api.h", + "shelf/shelf_button_pressed_metric_tracker_test_api.cc", + "shelf/shelf_button_pressed_metric_tracker_test_api.h", + "shelf/shelf_view_test_api.cc", + "shelf/shelf_view_test_api.h", + "shell/toplevel_window.cc", + "shell/toplevel_window.h", + "shell_test_api.cc", + "shell_test_api.h", + "system/cast/tray_cast_test_api.cc", + "system/cast/tray_cast_test_api.h", + "system/palette/test_palette_delegate.cc", + "system/palette/test_palette_delegate.h", + "system/status_area_widget_test_helper.cc", + "system/status_area_widget_test_helper.h", + "system/tray/system_tray_test_api.h", + "system/tray/test_system_tray_item.cc", + "system/tray/test_system_tray_item.h", + "test/ash_test_base.cc", + "test/ash_test_base.h", + "test/ash_test_environment.h", + "test/ash_test_helper.cc", + "test/ash_test_helper.h", + "test/ash_test_views_delegate.cc", + "test/ash_test_views_delegate.h", + + # TODO(jamescook): Rename to TestChildModalWindow and move to //ash/wm + "test/child_modal_window.cc", + "test/child_modal_window.h", + + # TODO(jamescook): Create //ash/accessibility for this and other code. + "test/test_accessibility_delegate.cc", + "test/test_accessibility_delegate.h", + "test/ui_controls_factory_ash.cc", + "test/ui_controls_factory_ash.h", + "test_screenshot_delegate.cc", + "test_screenshot_delegate.h", + "test_shell_delegate.cc", + "test_shell_delegate.h", + "wallpaper/test_wallpaper_delegate.cc", + "wallpaper/test_wallpaper_delegate.h", + "wallpaper/wallpaper_controller_test_api.cc", + "wallpaper/wallpaper_controller_test_api.h", + "wm/cursor_manager_test_api.cc", + "wm/cursor_manager_test_api.h", + "wm/lock_state_controller_test_api.cc", + "wm/lock_state_controller_test_api.h", + "wm/test_activation_delegate.cc", + "wm/test_activation_delegate.h", + "wm/test_overlay_delegate.cc", + "wm/test_overlay_delegate.h", + "wm/test_session_state_animator.cc", + "wm/test_session_state_animator.h", + "wm/workspace/workspace_event_handler_test_helper.cc", + "wm/workspace/workspace_event_handler_test_helper.h", + "wm/workspace_controller_test_api.cc", + "wm/workspace_controller_test_api.h", + ] + configs += [ "//build/config:precompiled_headers" ] + + public_deps = [ + "//ash", + "//testing/gtest", + "//third_party/WebKit/public:blink_headers", + "//ui/display:display_manager_test_api", + ] + deps = [ + "//ash", + "//ash/mus:lib", + "//ash/public/cpp:ash_public_cpp", + "//ash/resources", + "//base", + "//base:i18n", + "//base/test:test_support", + "//chromeos", + "//components/prefs:test_support", + "//components/signin/core/account_id", + "//components/user_manager:user_manager", + "//device/bluetooth", + "//services/ui/public/cpp/input_devices", + "//services/ui/public/interfaces", + "//skia", + "//testing/gtest", + "//ui/accessibility", + "//ui/app_list:test_support", + "//ui/app_list/presenter", + "//ui/app_list/presenter:test_support", + "//ui/aura", + "//ui/aura:test_support", + "//ui/base:test_support", + "//ui/compositor:test_support", + "//ui/display", + "//ui/display/types", + "//ui/events:events_base", + "//ui/events:test_support", + "//ui/events/devices", + "//ui/gl", + "//ui/gl:test_support", + "//ui/keyboard", + "//ui/message_center", + "//ui/views", + "//ui/views:test_support", + "//ui/wm", + "//ui/wm/public", + ] + + if (use_x11) { + deps += [ "//ui/gfx/x" ] + } +} + +static_library("interactive_ui_test_support") { + testonly = true + configs += [ "//build/config:precompiled_headers" ] + public_deps = [ + ":test_support_without_content", + "//ash", + ] + sources = [ + "test/ash_interactive_ui_test_base.cc", + "test/ash_interactive_ui_test_base.h", + ] + deps = [ + ":test_support_with_content", + "//base", + "//skia", + "//testing/gtest", + "//ui/aura", + "//ui/base", + "//ui/gl:test_support", + ] +} diff --git a/chromium/ash/autoclick/common/BUILD.gn b/chromium/ash/autoclick/common/BUILD.gn index b33fab57dbd..5c46da1712e 100644 --- a/chromium/ash/autoclick/common/BUILD.gn +++ b/chromium/ash/autoclick/common/BUILD.gn @@ -15,6 +15,7 @@ source_set("autoclick") { deps = [ "//base", + "//cc/paint", "//skia", "//ui/aura", "//ui/compositor", diff --git a/chromium/ash/mus/BUILD.gn b/chromium/ash/mus/BUILD.gn index 1409ea739c5..f990801f643 100644 --- a/chromium/ash/mus/BUILD.gn +++ b/chromium/ash/mus/BUILD.gn @@ -32,8 +32,12 @@ source_set("lib") { "context_menu_mus.h", "disconnected_app_handler.cc", "disconnected_app_handler.h", + "display_synchronizer.cc", + "display_synchronizer.h", "drag_window_resizer.cc", "drag_window_resizer.h", + "event_matcher_util.cc", + "event_matcher_util.h", "frame/detached_title_area_renderer.cc", "frame/detached_title_area_renderer.h", "keyboard_ui_mus.cc", @@ -46,8 +50,6 @@ source_set("lib") { "non_client_frame_controller.h", "property_util.cc", "property_util.h", - "screen_mus.cc", - "screen_mus.h", "shell_delegate_mus.cc", "shell_delegate_mus.h", "system_tray_delegate_mus.cc", @@ -74,6 +76,7 @@ source_set("lib") { "//components/user_manager", "//components/wallpaper", "//device/bluetooth", + "//services/ui/public/cpp/input_devices", "//services/ui/public/interfaces/input_devices", "//ui/app_list/presenter", "//ui/app_list/presenter:mojom", @@ -83,6 +86,7 @@ source_set("lib") { "//ui/keyboard", "//ui/keyboard:mojom", "//ui/message_center", + "//ui/wm/public", ] public_deps = [ @@ -192,8 +196,8 @@ source_set("unittests") { sources = [ "app_launch_unittest.cc", "bridge/shell_port_mash_test_api.h", + "display_synchronizer_unittest.cc", "non_client_frame_controller_unittest.cc", - "screen_mus_unittest.cc", "top_level_window_factory_unittest.cc", "window_manager_unittest.cc", ] @@ -202,8 +206,8 @@ source_set("unittests") { ":lib", ":resources", "//ash", + "//ash:test_support_without_content", "//ash/public/cpp:ash_public_cpp", - "//ash/test:test_support_without_content", "//base", "//base/test:test_config", "//base/test:test_support", diff --git a/chromium/ash/public/cpp/BUILD.gn b/chromium/ash/public/cpp/BUILD.gn index 78e71442a6c..9b729dc1b16 100644 --- a/chromium/ash/public/cpp/BUILD.gn +++ b/chromium/ash/public/cpp/BUILD.gn @@ -5,23 +5,43 @@ # C++ headers and sources that can be used outside ash. component("ash_public_cpp") { sources = [ + "app_types.h", "ash_pref_names.cc", "ash_pref_names.h", "ash_public_export.h", "ash_typography.cc", "ash_typography.h", "config.h", + "immersive/immersive_context.cc", + "immersive/immersive_context.h", + "immersive/immersive_focus_watcher.h", + "immersive/immersive_fullscreen_controller.cc", + "immersive/immersive_fullscreen_controller.h", + "immersive/immersive_fullscreen_controller_delegate.h", + "immersive/immersive_gesture_handler.h", + "immersive/immersive_handler_factory.cc", + "immersive/immersive_handler_factory.h", + "immersive/immersive_revealed_lock.cc", + "immersive/immersive_revealed_lock.h", "mus_property_mirror_ash.cc", "mus_property_mirror_ash.h", + "remote_shelf_item_delegate.cc", + "remote_shelf_item_delegate.h", + "scale_utility.cc", + "scale_utility.h", "session_types.h", "shelf_item.cc", "shelf_item.h", "shelf_item_delegate.cc", "shelf_item_delegate.h", + "shelf_model.cc", + "shelf_model.h", + "shelf_model_observer.h", "shelf_types.cc", "shelf_types.h", "shell_window_ids.cc", "shell_window_ids.h", + "voice_interaction_state.h", "window_pin_type.cc", "window_pin_type.h", "window_properties.cc", @@ -53,6 +73,7 @@ component("ash_public_cpp") { source_set("unit_tests") { testonly = true sources = [ + "shelf_model_unittest.cc", "shelf_struct_traits_unittest.cc", ] diff --git a/chromium/ash/public/interfaces/BUILD.gn b/chromium/ash/public/interfaces/BUILD.gn index 3784b9c7819..9c7c601564a 100644 --- a/chromium/ash/public/interfaces/BUILD.gn +++ b/chromium/ash/public/interfaces/BUILD.gn @@ -13,13 +13,18 @@ mojom("interfaces_internal") { sources = [ "accelerator_controller.mojom", + "ash_display_controller.mojom", "cast_config.mojom", "constants.mojom", "event_properties.mojom", + "ime_controller.mojom", + "ime_info.mojom", "locale.mojom", "lock_screen.mojom", + "login_user_info.mojom", "media.mojom", "new_window.mojom", + "night_light_controller.mojom", "session_controller.mojom", "shelf.mojom", "shutdown.mojom", @@ -27,6 +32,7 @@ mojom("interfaces_internal") { "touch_view.mojom", "tray_action.mojom", "update.mojom", + "user_info.mojom", "volume.mojom", "vpn_list.mojom", "wallpaper.mojom", @@ -35,6 +41,7 @@ mojom("interfaces_internal") { ] public_deps = [ + "//components/proximity_auth/public/interfaces", "//components/signin/public/interfaces", "//mojo/common:common_custom_types", "//skia/public/interfaces", diff --git a/chromium/ash/public/interfaces/ash_display_controller.mojom b/chromium/ash/public/interfaces/ash_display_controller.mojom new file mode 100644 index 00000000000..b94f13e2e23 --- /dev/null +++ b/chromium/ash/public/interfaces/ash_display_controller.mojom @@ -0,0 +1,18 @@ +// Copyright 2016 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 ash.mojom; + +// Allows configuring various display related state. +interface AshDisplayController { + // ============================ Virtual Terminal ============================ + + // Take control of all display output. This is called when switching from the + // virtual terminal back to Chrome in response to a dbus message. + TakeDisplayControl() => (bool status); + + // Relinquish control of all display output. This is called when switching + // from Chrome to the virtual terminal in response to a dbus message. + RelinquishDisplayControl() => (bool status); +}; diff --git a/chromium/ash/public/interfaces/ime_controller.mojom b/chromium/ash/public/interfaces/ime_controller.mojom new file mode 100644 index 00000000000..8bccdf5f106 --- /dev/null +++ b/chromium/ash/public/interfaces/ime_controller.mojom @@ -0,0 +1,51 @@ +// Copyright 2017 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 ash.mojom; + +import "ash/public/interfaces/ime_info.mojom"; + +// Interface for ash client (e.g. Chrome) to send input method info to ash. +interface ImeController { + // Sets the client interface. + SetClient(ImeControllerClient client); + + // Updates the cached IME information and refreshes the IME menus. + // |current_ime_id| is empty when there is no active IME yet. + RefreshIme(string current_ime_id, + array<ImeInfo> available_imes, + array<ImeMenuItem> menu_items); + + // Shows an icon in the IME menu indicating that IMEs are controlled by device + // policy. + SetImesManagedByPolicy(bool managed); + + // Shows the IME menu on the shelf instead of inside the system tray menu. + // Users with multiple IMEs that have multiple configurable properties (e.g. + // some Chinese IMEs) prefer this to keeping the IME menu under the primary + // system tray menu. + ShowImeMenuOnShelf(bool show); +}; + +// Interface for ash to send input method requests to its client (e.g. Chrome). +interface ImeControllerClient { + // Switches to the next input method. Does nothing if only one input method + // is installed. + SwitchToNextIme(); + + // Switches to the previous input method. Does nothing if only one input + // method is installed. + SwitchToPreviousIme(); + + // Switches to an input method by |id|. Does nothing if the input method is + // not installed. The ID is usually the output of a call like + // chromeos::extension_ime_util::GetInputMethodIDByEngineID("xkb:jp::jpn"), + // see that function for details. Shows a bubble with the input method short + // name when |show_message| is true. + SwitchImeById(string id, bool show_message); + + // Activates an input method menu item. The |key| must be a value from the + // ImeMenuItems provided via RefreshIme. Does nothing if the |key| is invalid. + ActivateImeMenuItem(string key); +}; diff --git a/chromium/ash/public/interfaces/ime_info.mojom b/chromium/ash/public/interfaces/ime_info.mojom new file mode 100644 index 00000000000..011fd45e01e --- /dev/null +++ b/chromium/ash/public/interfaces/ime_info.mojom @@ -0,0 +1,40 @@ +// Copyright 2017 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 ash.mojom; + +import "mojo/common/string16.mojom"; + +// Metadata about an installed input method. +struct ImeInfo { + // True if the IME is a third-party extension. + bool third_party; + + // ID that identifies the IME (e.g., "t:latn-post", "pinyin", "hangul"). + string id; + + // Long name of the IME, which is used as the user-visible name. + mojo.common.mojom.String16 name; + + // Medium name of the IME, which is the same as the short name in most cases. + mojo.common.mojom.String16 medium_name; + + // UI indicator for the IME (e.g., "US"). If the IME has no indicator, uses + // the first two characters in its preferred keyboard layout or language code + // (e.g., "ko", "ja", "en-US"). + mojo.common.mojom.String16 short_name; +}; + +// A menu item that sets an IME configuration property. +struct ImeMenuItem { + // True if the item is selected / enabled. + bool checked; + + // The key which identifies the property controlled by the menu item, e.g. + // "InputMode.HalfWidthKatakana". + string key; + + // The item label, e.g. "Switch to full punctuation mode" or "Hiragana". + mojo.common.mojom.String16 label; +}; diff --git a/chromium/ash/public/interfaces/lock_screen.mojom b/chromium/ash/public/interfaces/lock_screen.mojom index d29b331e358..4a91f77776e 100644 --- a/chromium/ash/public/interfaces/lock_screen.mojom +++ b/chromium/ash/public/interfaces/lock_screen.mojom @@ -4,13 +4,20 @@ module ash.mojom; +import "ash/public/interfaces/login_user_info.mojom"; +import "components/proximity_auth/public/interfaces/auth_type.mojom"; import "components/signin/public/interfaces/account_id.mojom"; +import "mojo/common/string16.mojom"; // Allows clients (e.g. Chrome browser) to control the ash lock screen. interface LockScreen { // Sets the client interface. SetClient(LockScreenClient client); + // Displays the lock screen. |did_show| is true iff the lock UI was + // successfully displayed. + ShowLockScreen() => (bool did_show); + // Requests to show error message in the ash lock screen. // TODO(xiaoyinh): login_attempts is probabaly not needed from chrome, // remove it when we start to count the login attempts in ash lock screen. @@ -25,6 +32,34 @@ interface LockScreen { // Requests to close any displayed error messages in ash lock screen. ClearErrors(); + + // Requests to show the custom icon in the user pod. + // |account_id|: The account id of the user in the user pod. + // |icon|: Information regarding the icon. + ShowUserPodCustomIcon(signin.mojom.AccountId account_id, + UserPodCustomIconOptions icon); + + // Requests to hide the custom icon in the user pod. + // |account_id|: The account id of the user in the user pod. + HideUserPodCustomIcon(signin.mojom.AccountId account_id); + + // Requests to set the authentication type. + // |account_id|: The account id of the user in the user pod. + // |auth_type|: Authentication type. + // |initial_value|: A message shown in the password field of the user pod. + SetAuthType(signin.mojom.AccountId account_id, + proximity_auth.mojom.AuthType auth_type, + mojo.common.mojom.String16 initial_value); + + // Requests to load users in the lock screen. + // |users|: A list of users who can unlock the device. + // |show_guest|: Whether to show guest session button. + LoadUsers(array<LoginUserInfo> users, bool show_guest); + + // Notification if pin is enabled or disabled for the given user. + // |account_id|: The account id of the user in the user pod. + // |is_enabled|: True if pin unlock is enabled. + SetPinEnabledForUser(signin.mojom.AccountId account_id, bool is_enabled); }; // Allows ash lock screen to control a client (e.g. Chrome browser). Requests @@ -38,7 +73,36 @@ interface LockScreenClient { // |account_id|: The account id of the user we are authenticating. // |hashed_password|: The hashed password of the user. // |authenticated_by_pin|: True if we are using pin to authenticate. + // + // The result will be set to true if auth was successful, false if not. AuthenticateUser(signin.mojom.AccountId account_id, string hashed_password, - bool authenticated_by_pin); + bool authenticated_by_pin) => (bool auth_success); + + // Request to attempt easy unlock in chrome. + // |account_id|: The account id of the user we are authenticating. + AttemptUnlock(signin.mojom.AccountId account_id); + + // Request to hard lock the user pod. + // |account_id|: The account id of the user in the user pod. + HardlockPod(signin.mojom.AccountId account_id); + + // Record clicks on the lock icon in the user pod. + // |account_id|: The account id of the user in the user pod. + RecordClickOnLockIcon(signin.mojom.AccountId account_id); + + // Focus user pod of user with |account_id|. + OnFocusPod(signin.mojom.AccountId account_id); + + // Notify that no user pod is focused. + OnNoPodFocused(); + + // Load wallpaper of user with |account_id|. + LoadWallpaper(signin.mojom.AccountId account_id); + + // Sign out current user. + SignOutUser(); + + // User with |account_id| has reached maximum incorrect password attempts. + OnMaxIncorrectPasswordAttempted(signin.mojom.AccountId account_id); }; diff --git a/chromium/ash/public/interfaces/login_user_info.mojom b/chromium/ash/public/interfaces/login_user_info.mojom new file mode 100644 index 00000000000..36e1daa5019 --- /dev/null +++ b/chromium/ash/public/interfaces/login_user_info.mojom @@ -0,0 +1,55 @@ +// Copyright 2017 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 ash.mojom; + +import "ash/public/interfaces/user_info.mojom"; +import "components/proximity_auth/public/interfaces/auth_type.mojom"; +import "mojo/common/string16.mojom"; + +// Supported multi-profile user behavior values. +// Keep in sync with the enum in md_user_pod_row.js and user_pod_row.js +enum MultiProfileUserBehavior { + UNRESTRICTED = 0, + PRIMARY_ONLY = 1, + NOT_ALLOWED = 2, + OWNER_PRIMARY_ONLY = 3, +}; + +// Information about the custom icon in the user pod. +struct UserPodCustomIconOptions { + string id; + mojo.common.mojom.String16 tooltip; + bool autoshow_tooltip; + mojo.common.mojom.String16 aria_label; + bool hardlock_on_click; + bool is_trial_run; +}; + +// Info about a user in login/lock screen. +struct LoginUserInfo { + // User's basic information including account id, email, avatar etc. + UserInfo basic_user_info; + + // What method the user can use to sign in. + proximity_auth.mojom.AuthType auth_type; + + // True if this user has already signed in. + bool is_signed_in; + + // True if this user is the device owner. + bool is_device_owner; + + // True if fingerprint unlock is allowed for this user. + bool allow_fingerprint_unlock; + + // True if multi-profiles sign in is allowed for this user. + bool is_multiprofile_allowed; + + // Enforced policy for multi-profiles sign in. + MultiProfileUserBehavior multiprofile_policy; + + // True if this user can be removed. + bool can_remove; +}; diff --git a/chromium/ash/public/interfaces/night_light_controller.mojom b/chromium/ash/public/interfaces/night_light_controller.mojom new file mode 100644 index 00000000000..c1bc8174551 --- /dev/null +++ b/chromium/ash/public/interfaces/night_light_controller.mojom @@ -0,0 +1,55 @@ +// Copyright 2017 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 ash.mojom; + +// Represents a geolocation position fix. It's "simple" because it doesn't +// expose all the parameters of the position interface as defined by the +// Geolocation API Specification: +// (https://dev.w3.org/geo/api/spec-source.html#position_interface). +// The NightLightController is only interested in valid latitude and longitude. +// It also doesn't require any specific accuracy. The more accurate the +// positions, the more accurate sunset and sunrise times calculations. However, +// an IP-based geoposition is considered good enough. +struct SimpleGeoposition { + double latitude; + double longitude; +}; + +// Used by a client (e.g. Chrome) to provide the current user's geoposition. +interface NightLightController { + // These values are written to logs. New enum values can be added, but + // existing enums must never be renumbered or deleted and reused. + enum ScheduleType { + // Automatic toggling of NightLight is turned off. + kNone = 0, + + // Turned automatically on at the user's local sunset time, and off at the + // user's local sunrise time. + kSunsetToSunrise = 1, + + // Toggled automatically based on the custom set start and end times + // selected by the user from the system settings. + kCustom = 2, + + // Must be the last item, used for UMA histograms. + kLast = kCustom, + }; + + // Sets the client that will be notified of changes in the Night Light + // schedule type. + SetClient(NightLightClient client); + + // Provides the NightLightController with the user's geoposition so that it + // can calculate the sunset and sunrise times. This should only be called when + // the schedule type is set to "Sunset to Sunrise". + SetCurrentGeoposition(SimpleGeoposition position); +}; + +// Used by ash to notify a client (e.g. Chrome) of the changes in the Night +// Light schedule type. +interface NightLightClient { + // Notifies the client with the new schedule type whenever it changes. + OnScheduleTypeChanged(NightLightController.ScheduleType new_type); +};
\ No newline at end of file diff --git a/chromium/ash/public/interfaces/session_controller.mojom b/chromium/ash/public/interfaces/session_controller.mojom index 246b2ba93c3..e64153de68f 100644 --- a/chromium/ash/public/interfaces/session_controller.mojom +++ b/chromium/ash/public/interfaces/session_controller.mojom @@ -4,8 +4,9 @@ module ash.mojom; +import "ash/public/interfaces/user_info.mojom"; import "components/signin/public/interfaces/account_id.mojom"; -import "ui/gfx/image/mojo/image.mojom"; +import "mojo/common/time.mojom"; // Matches session_manager::SessionState. enum SessionState { @@ -37,34 +38,6 @@ enum SessionState { LOGIN_SECONDARY, }; -// Matches user_manager::UserType. -enum UserType { - // Regular user, has a user name and password. - REGULAR, - - // Guest user, logs in without authentication. - GUEST, - - // Public account user, logs in without authentication. Available only if - // enabled through policy. - PUBLIC_ACCOUNT, - - // Supervised user, logs in only with local authentication. - SUPERVISED, - - // Kiosk app robot, logs in without authentication. - KIOSK, - - // Child user, with supervised options. - CHILD, - - // Android app in kiosk mode, logs in without authentication. - ARC_KIOSK, - - // Active Directory user. Authenticates against Active Directory server. - ACTIVE_DIRECTORY, -}; - // Matches ash::CycleUserDirection. enum CycleUserDirection { NEXT, // Cycle to the next user. @@ -80,11 +53,9 @@ struct UserSession { // and incremented by one for each subsequent user session. uint32 session_id; - UserType type; - signin.mojom.AccountId account_id; - string display_name; - string display_email; - gfx.mojom.ImageSkia avatar; + // Contains general user information state, like the account id, display name, + // and avatar. + UserInfo user_info; // For supervised users only, the email address of the custodian account. // Empty for non-supervised users. Available after profile is loaded. @@ -152,6 +123,11 @@ interface SessionController { // active user session. SetUserSessionOrder(array<uint32> user_session_ids); + // Prepares ash for lock screen. Currently this ensures the current active + // window could not be used to mimic the lock screen. Lock screen is created + // after this call returns. + PrepareForLock() => (); + // Runs the pre-lock animation to start locking ash. When the call returns, // |locked| == true means that the ash post-lock animation is finished and ash // is fully locked. Otherwise |locked| is false, which means something is @@ -171,6 +147,15 @@ interface SessionController { // Notifies that chrome is terminating. NotifyChromeTerminating(); + + // Adds a countdown timer to the system tray menu and creates or updates a + // notification saying the session length is limited (e.g. a public session in + // a library). Setting |length_limit| to zero removes the notification. + // NOTE: Chrome enforces the limit, not ash. Ash could enforce it if local + // state prefs and user activity monitoring were available under mustash. + // http://crbug.com/729808 + SetSessionLengthLimit(mojo.common.mojom.TimeDelta length_limit, + mojo.common.mojom.TimeTicks start_time); }; // Interface for ash to request session service from its client (e.g. Chrome). @@ -184,4 +169,7 @@ interface SessionControllerClient { // Switch the active user to the next or previous user. CycleActiveUser(CycleUserDirection direction); + + // Show the multi-profile login UI to add another user to this session. + ShowMultiProfileLogin(); }; diff --git a/chromium/ash/public/interfaces/session_controller.typemap b/chromium/ash/public/interfaces/session_controller.typemap index 67592a272f2..013e443babd 100644 --- a/chromium/ash/public/interfaces/session_controller.typemap +++ b/chromium/ash/public/interfaces/session_controller.typemap @@ -6,16 +6,13 @@ mojom = "//ash/public/interfaces/session_controller.mojom" public_headers = [ "//ash/public/cpp/session_types.h", "//components/session_manager/session_manager_types.h", - "//components/user_manager/user_type.h", ] traits_headers = [ "//ash/public/interfaces/session_controller_traits.h" ] public_deps = [ "//components/session_manager:base", - "//components/user_manager", ] type_mappings = [ "ash.mojom.AddUserSessionPolicy=ash::AddUserSessionPolicy", "ash.mojom.CycleUserDirection=ash::CycleUserDirection", "ash.mojom.SessionState=session_manager::SessionState", - "ash.mojom.UserType=user_manager::UserType", ] diff --git a/chromium/ash/public/interfaces/shelf.mojom b/chromium/ash/public/interfaces/shelf.mojom index faaeddf3bd8..7382716c269 100644 --- a/chromium/ash/public/interfaces/shelf.mojom +++ b/chromium/ash/public/interfaces/shelf.mojom @@ -61,23 +61,49 @@ interface ShelfController { // Observers are immediately notified of the current shelf states when added. AddObserver(associated ShelfObserver observer); + // Note: ShelfObservers are not notified of ShelfModel changes made by the + // ShelfItem functions below. Chrome is the solitary ShelfObserver and client + // of these functions, so notifications would be cyclical and problematic. + + // Add |item| at |index|, which is clamped to be greater than 0 (AppList's + // index) and not exceeding the item count. Use a negative |index| to append. + AddShelfItem(int32 index, ShelfItem item); + // Remove the item with |id|. Bails if |id| is unknown or for the AppList. + RemoveShelfItem(ShelfID id); + // Moves item with |id| to |index|, which is in terms of the model after the + // item is removed, and is clamped to be greater than 0 (AppList's index) and + // not exceeding the item count. Bails if |id| is unknown or for the AppList. + MoveShelfItem(ShelfID id, int32 target_index); + // Updates |item| via ShelfID. Bails if the id is unknown or for the AppList. + UpdateShelfItem(ShelfItem item); + // Sets the |delegate| for the item with |id|. + SetShelfItemDelegate(ShelfID id, ShelfItemDelegate delegate); + // Set the shelf alignment and auto-hide behavior. See Shelf for details. + // TODO(jamescook): Eliminate all these methods and use the ash pref service + // to observe and to set prefs. http://crbug.com/723085 SetAlignment(ShelfAlignment alignment, int64 display_id); SetAutoHideBehavior(ShelfAutoHideBehavior auto_hide, int64 display_id); - - // Pin and unpin items on the shelf, or update shelf item images. - PinItem(ShelfItem item, associated ShelfItemDelegate delegate); - UnpinItem(string app_id); - SetItemImage(string app_id, skia.mojom.Bitmap image); }; -// ShelfObserver is notified on shelf changes; used to persist profile settings. +// A Shelf observer, used to persist profile settings and cache a ShelfModel. interface ShelfObserver { // TODO(jamescook): Eliminate all these methods and use the ash pref service // to observe and to set prefs. http://crbug.com/723085 OnShelfInitialized(int64 display_id); OnAlignmentChanged(ShelfAlignment alignment, int64 display_id); OnAutoHideBehaviorChanged(ShelfAutoHideBehavior auto_hide, int64 display_id); + + // Called when the |item| has been added at |index|. + OnShelfItemAdded(int32 index, ShelfItem item); + // Called when the item with |id| has been removed. + OnShelfItemRemoved(ShelfID id); + // Called when the item with |id| has been moved to |index|. + OnShelfItemMoved(ShelfID id, int32 index); + // Called when the |item| with matching ShelfID has been updated. + OnShelfItemUpdated(ShelfItem item); + // Called when |delegate| for the item with |id| has been changed. + OnShelfItemDelegateChanged(ShelfID id, ShelfItemDelegate delegate); }; // ShelfItemDelegate handles shelf item selection, menu command execution, etc. @@ -129,12 +155,12 @@ struct ShelfID { // ShelfItems are used to populate the shelf. // This structure matches ash::ShelfItem. struct ShelfItem { - ShelfItemType type; // The type of the shelf item. - skia.mojom.Bitmap image; // An icon image Bitmap, shown on the shelf. - ShelfItemStatus status; // The running/closed/etc. status of the item. - ShelfID shelf_id; // The id for the shelf item and its windows. + ShelfItemType type; // The type of the shelf item. + skia.mojom.Bitmap? image; // An icon image Bitmap, shown on the shelf. + ShelfItemStatus status; // The running/closed/etc. status of the item. + ShelfID shelf_id; // The id for the shelf item and its windows. mojo.common.mojom.String16 title; // The title to display for tooltips, etc. - bool shows_tooltip; // Whether the tooltip should be shown on hover. - bool pinned_by_policy; // Whether the item is pinned by policy preferences, - // the user cannot un-pin these items. + bool shows_tooltip; // Whether the tooltip should be shown on hover. + bool pinned_by_policy; // Whether the item is pinned by policy prefs, the + // user cannot un-pin these items. }; diff --git a/chromium/ash/public/interfaces/shelf.typemap b/chromium/ash/public/interfaces/shelf.typemap index 1e8afb47f98..e3bd00f08b1 100644 --- a/chromium/ash/public/interfaces/shelf.typemap +++ b/chromium/ash/public/interfaces/shelf.typemap @@ -19,6 +19,7 @@ type_mappings = [ "ash.mojom.ShelfAction=ash::ShelfAction", "ash.mojom.ShelfAlignment=ash::ShelfAlignment", "ash.mojom.ShelfAutoHideBehavior=ash::ShelfAutoHideBehavior", + "ash.mojom.ShelfID=ash::ShelfID", "ash.mojom.ShelfItem=ash::ShelfItem", "ash.mojom.ShelfItemStatus=ash::ShelfItemStatus", "ash.mojom.ShelfItemType=ash::ShelfItemType", diff --git a/chromium/ash/public/interfaces/system_tray.mojom b/chromium/ash/public/interfaces/system_tray.mojom index 28aafae0092..a52d63ecf26 100644 --- a/chromium/ash/public/interfaces/system_tray.mojom +++ b/chromium/ash/public/interfaces/system_tray.mojom @@ -24,9 +24,14 @@ interface SystemTray { SetUse24HourClock(bool use_24_hour); // Creates or updates an item in the system tray menu with information about - // enterprise management. The item appears if |enterprise_domain| is not empty - // or |active_directory_managed| is true. - SetEnterpriseDomain(string enterprise_domain, bool active_directory_managed); + // enterprise management. The item appears if |enterprise_display_domain| is + // not empty or |active_directory_managed| is true. + SetEnterpriseDisplayDomain(string enterprise_display_domain, + bool active_directory_managed); + + // Shows or hides an item in the system tray indicating that performance + // tracing is running. + SetPerformanceTracingIconVisible(bool visible); // Shows an icon in the system tray indicating that a software update is // available. Once shown the icon persists until reboot. |severity| and diff --git a/chromium/ash/public/interfaces/typemaps.gni b/chromium/ash/public/interfaces/typemaps.gni index 53027c183c3..ac3500d5146 100644 --- a/chromium/ash/public/interfaces/typemaps.gni +++ b/chromium/ash/public/interfaces/typemaps.gni @@ -5,5 +5,6 @@ typemaps = [ "//ash/public/interfaces/session_controller.typemap", "//ash/public/interfaces/shelf.typemap", + "//ash/public/interfaces/user_info.typemap", "//ash/public/interfaces/wallpaper.typemap", ] diff --git a/chromium/ash/public/interfaces/user_info.mojom b/chromium/ash/public/interfaces/user_info.mojom new file mode 100644 index 00000000000..5a86856132b --- /dev/null +++ b/chromium/ash/public/interfaces/user_info.mojom @@ -0,0 +1,50 @@ +// Copyright 2017 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 ash.mojom; + +import "components/signin/public/interfaces/account_id.mojom"; +import "ui/gfx/image/mojo/image.mojom"; + +// Matches user_manager::UserType. +enum UserType { + // Regular user, has a user name and password. + REGULAR, + + // Guest user, logs in without authentication. + GUEST, + + // Public account user, logs in without authentication. Available only if + // enabled through policy. + PUBLIC_ACCOUNT, + + // Supervised user, logs in only with local authentication. + SUPERVISED, + + // Kiosk app robot, logs in without authentication. + KIOSK, + + // Child user, with supervised options. + CHILD, + + // Android app in kiosk mode, logs in without authentication. + ARC_KIOSK, + + // Active Directory user. Authenticates against Active Directory server. + ACTIVE_DIRECTORY, +}; + + +// Info about a user. May be sent repeatedly for a single user because +// individual fields may change (e.g. the avatar image or custodians). +struct UserInfo { + UserType type; + signin.mojom.AccountId account_id; + string display_name; + string display_email; + gfx.mojom.ImageSkia avatar; + // True if this user has a newly created profile (first time login on the + // device) + bool is_new_profile; +}; diff --git a/chromium/ash/public/interfaces/user_info.typemap b/chromium/ash/public/interfaces/user_info.typemap new file mode 100644 index 00000000000..5a0e9376f8e --- /dev/null +++ b/chromium/ash/public/interfaces/user_info.typemap @@ -0,0 +1,11 @@ +# Copyright 2017 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. + +mojom = "//ash/public/interfaces/user_info.mojom" +public_headers = [ "//components/user_manager/user_type.h" ] +traits_headers = [ "//ash/public/interfaces/user_info_traits.h" ] +public_deps = [ + "//components/user_manager", +] +type_mappings = [ "ash.mojom.UserType=user_manager::UserType" ] diff --git a/chromium/ash/public/interfaces/wallpaper.mojom b/chromium/ash/public/interfaces/wallpaper.mojom index 7215c319a52..d368fe9a2be 100644 --- a/chromium/ash/public/interfaces/wallpaper.mojom +++ b/chromium/ash/public/interfaces/wallpaper.mojom @@ -4,21 +4,62 @@ module ash.mojom; +import "mojo/common/time.mojom"; import "skia/public/interfaces/bitmap.mojom"; // These values match wallpaper::WallpaperLayout. -enum WallpaperLayout { CENTER, CENTER_CROPPED, STRETCH, TILE, }; +enum WallpaperLayout { + CENTER, + CENTER_CROPPED, + STRETCH, + TILE, +}; + +// These values match wallpaper::WallpaperType. +enum WallpaperType { + DAILY, + CUSTOMIZED, + DEFAULT, + ONLINE, + POLICY, + THIRDPARTY, + DEVICE, +}; + +// This corresponds to wallpaper::WallpaperInfo. +struct WallpaperInfo { + string location; + WallpaperLayout layout; + WallpaperType type; + mojo.common.mojom.Time date; +}; // Used by Chrome to set the wallpaper displayed by ash. interface WallpaperController { + // Calling this method triggers an initial notification of the wallpaper + // state. Observers are automatically removed as their connections are closed. + AddObserver(associated WallpaperObserver observer); + // Set the wallpaper picker interface, to let ash trigger Chrome's picker. SetWallpaperPicker(WallpaperPicker picker); - // Set the wallpaper bitmap and layout used for the ash desktop background. + // Set the wallpaper bitmap and info used for the ash desktop background. // A null or empty |wallpaper| bitmap is treated as a no-op. // TODO(crbug.com/655875): Optimize ash wallpaper transport; avoid sending // large bitmaps over Mojo; use shared memory like BitmapUploader, etc. - SetWallpaper(skia.mojom.Bitmap? wallpaper, WallpaperLayout layout); + SetWallpaper(skia.mojom.Bitmap? wallpaper, WallpaperInfo info); + + // Runs to get wallpaper prominent colors. + GetWallpaperColors() => (array<uint32> prominent_colors); +}; + +// Used to listen for wallpaper state changed. +interface WallpaperObserver { + // Called when the colors extracted from the current wallpaper change. May + // be called as a side effect of changing the wallpaper on the + // WallpaperController, e.g. WallpaperController::SetWallpaperImage(). + // Colors are ordered and are referenced in wallpaper::ColorProfileType. + OnWallpaperColorsChanged(array<uint32> prominent_colors); }; // Used by ash to trigger Chrome's wallpaper picker functionality. diff --git a/chromium/ash/public/interfaces/wallpaper.typemap b/chromium/ash/public/interfaces/wallpaper.typemap index 6b83004e5fe..af94c11bedb 100644 --- a/chromium/ash/public/interfaces/wallpaper.typemap +++ b/chromium/ash/public/interfaces/wallpaper.typemap @@ -3,6 +3,13 @@ # found in the LICENSE file. mojom = "//ash/public/interfaces/wallpaper.mojom" -public_headers = [ "//components/wallpaper/wallpaper_layout.h" ] -traits_headers = [ "//ash/public/interfaces/wallpaper_struct_traits.h" ] -type_mappings = [ "ash.mojom.WallpaperLayout=wallpaper::WallpaperLayout" ] +public_headers = [ "//components/wallpaper/wallpaper_info.h" ] +traits_headers = [ "//ash/public/cpp/wallpaper_struct_traits.h" ] +sources = [ + "//ash/public/cpp/wallpaper_struct_traits.cc", +] +type_mappings = [ + "ash.mojom.WallpaperLayout=wallpaper::WallpaperLayout", + "ash.mojom.WallpaperType=wallpaper::WallpaperType", + "ash.mojom.WallpaperInfo=wallpaper::WallpaperInfo", +] diff --git a/chromium/ash/resources/vector_icons/BUILD.gn b/chromium/ash/resources/vector_icons/BUILD.gn index 73f4b32595e..d0a2c4e7bb0 100644 --- a/chromium/ash/resources/vector_icons/BUILD.gn +++ b/chromium/ash/resources/vector_icons/BUILD.gn @@ -2,7 +2,7 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//ui/vector_icons/vector_icons.gni") +import("//components/vector_icons/vector_icons.gni") aggregate_vector_icons("ash_vector_icons") { icon_directory = "." @@ -20,6 +20,12 @@ aggregate_vector_icons("ash_vector_icons") { "ime_menu_on_screen_keyboard.icon", "ime_menu_write.1x.icon", "ime_menu_write.icon", + "lock_screen_arrow.1x.icon", + "lock_screen_arrow.icon", + "lock_screen_backspace.1x.icon", + "lock_screen_backspace.icon", + "lock_screen_dropdown.1x.icon", + "lock_screen_dropdown.icon", "network_badge_add_other.1x.icon", "network_badge_add_other.icon", "network_badge_captive_portal.1x.icon", @@ -70,6 +76,8 @@ aggregate_vector_icons("ash_vector_icons") { "palette_mode_laser_pointer.icon", "palette_mode_magnify.1x.icon", "palette_mode_magnify.icon", + "palette_mode_metalayer.1x.icon", + "palette_mode_metalayer.icon", "palette_tray_icon_capture_region.1x.icon", "palette_tray_icon_capture_region.icon", "palette_tray_icon_default.1x.icon", @@ -78,6 +86,10 @@ aggregate_vector_icons("ash_vector_icons") { "palette_tray_icon_laser_pointer.icon", "palette_tray_icon_magnify.1x.icon", "palette_tray_icon_magnify.icon", + "palette_tray_icon_metalayer.1x.icon", + "palette_tray_icon_metalayer.icon", + "shelf_back.1x.icon", + "shelf_back.icon", "shelf_keyboard.1x.icon", "shelf_keyboard.icon", "shelf_logout.1x.icon", @@ -146,6 +158,8 @@ aggregate_vector_icons("ash_vector_icons") { "system_menu_info.icon", "system_menu_keyboard.1x.icon", "system_menu_keyboard.icon", + "system_menu_keyboard_brightness.1x.icon", + "system_menu_keyboard_brightness.icon", "system_menu_lock.1x.icon", "system_menu_lock.icon", "system_menu_mouse.1x.icon", @@ -195,8 +209,6 @@ aggregate_vector_icons("ash_vector_icons") { "system_menu_volume_mute.icon", "system_tray_accessibility.1x.icon", "system_tray_accessibility.icon", - "system_tray_battery.1x.icon", - "system_tray_battery.icon", "system_tray_battery_alert.1x.icon", "system_tray_battery_alert.icon", "system_tray_battery_bolt.1x.icon", @@ -217,6 +229,8 @@ aggregate_vector_icons("ash_vector_icons") { "system_tray_rotation_lock_auto.icon", "system_tray_rotation_lock_locked.1x.icon", "system_tray_rotation_lock_locked.icon", + "system_tray_screen_share.1x.icon", + "system_tray_screen_share.icon", "system_tray_tracing.1x.icon", "system_tray_tracing.icon", "system_tray_update.1x.icon", @@ -226,6 +240,8 @@ aggregate_vector_icons("ash_vector_icons") { "touch_calibration_complete_check.1x.icon", "touch_calibration_complete_check.icon", "touch_calibration_hand.icon", + "tray_action_new_lock_screen_note.1x.icon", + "tray_action_new_lock_screen_note.icon", "window_control_back.1x.icon", "window_control_back.icon", "window_control_close.1x.icon", diff --git a/chromium/ash/shared/BUILD.gn b/chromium/ash/shared/BUILD.gn deleted file mode 100644 index 3bfae4f1a6c..00000000000 --- a/chromium/ash/shared/BUILD.gn +++ /dev/null @@ -1,9 +0,0 @@ -# Copyright 2016 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. - -source_set("app_types") { - sources = [ - "app_types.h", - ] -} diff --git a/chromium/ash/test/BUILD.gn b/chromium/ash/test/BUILD.gn deleted file mode 100644 index caa015f49f8..00000000000 --- a/chromium/ash/test/BUILD.gn +++ /dev/null @@ -1,209 +0,0 @@ -# Copyright 2016 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("//build/config/ui.gni") - -static_library("test_support_without_content") { - testonly = true - sources = [ - "ash_test_environment_default.cc", - ] - - public_deps = [ - ":test_support_common", - ] - - deps = [ - "//base", - "//base/test:test_support", - "//skia", - ] -} - -static_library("test_support_with_content") { - testonly = true - sources = [ - "ash_test_environment_content.cc", - "ash_test_environment_content.h", - "content/test_shell_content_state.cc", - "content/test_shell_content_state.h", - ] - configs += [ "//build/config:precompiled_headers" ] - - public_deps = [ - ":test_support_common", - "//ash:ash_with_content", - "//content/public/browser", - "//content/test:test_support", - "//skia", - ] -} - -# Internal target consumed by |test_support_with_content| and -# |test_support_without_content|. This target contains all the test support -# files, with the exception of an implementation of AshTestEnvironment. -# Consumers of ash should use one of |test_support_with_content| or -# |test_support_without_content|. -static_library("test_support_common") { - testonly = true - visibility = [ ":*" ] - sources = [ - # TODO(jamescook): Move these files into ash/test. - "../laser/laser_pointer_controller_test_api.cc", - "../laser/laser_pointer_controller_test_api.h", - "../laser/laser_pointer_points_test_api.cc", - "../laser/laser_pointer_points_test_api.h", - "../rotator/test/screen_rotation_animator_test_api.cc", - "../rotator/test/screen_rotation_animator_test_api.h", - "../shell/toplevel_window.cc", - "../shell/toplevel_window.h", - "ash_test_base.cc", - "ash_test_base.h", - "ash_test_environment.h", - "ash_test_helper.cc", - "ash_test_helper.h", - "ash_test_views_delegate.cc", - "ash_test_views_delegate.h", - "child_modal_window.cc", - "child_modal_window.h", - "cursor_manager_test_api.cc", - "cursor_manager_test_api.h", - "display_configuration_controller_test_api.cc", - "display_configuration_controller_test_api.h", - "immersive_fullscreen_controller_test_api.cc", - "immersive_fullscreen_controller_test_api.h", - "lock_state_controller_test_api.cc", - "lock_state_controller_test_api.h", - "mirror_window_test_api.cc", - "mirror_window_test_api.h", - "overflow_bubble_view_test_api.cc", - "overflow_bubble_view_test_api.h", - "overflow_button_test_api.cc", - "overflow_button_test_api.h", - "screen_orientation_controller_test_api.cc", - "screen_orientation_controller_test_api.h", - "shelf_button_pressed_metric_tracker_test_api.cc", - "shelf_button_pressed_metric_tracker_test_api.h", - "shelf_view_test_api.cc", - "shelf_view_test_api.h", - "shell_test_api.cc", - "shell_test_api.h", - "status_area_widget_test_helper.cc", - "status_area_widget_test_helper.h", - "task_switch_time_tracker_test_api.cc", - "task_switch_time_tracker_test_api.h", - "test_accessibility_delegate.cc", - "test_accessibility_delegate.h", - "test_activation_delegate.cc", - "test_activation_delegate.h", - "test_app_list_view_presenter_impl.cc", - "test_app_list_view_presenter_impl.h", - "test_keyboard_ui.cc", - "test_keyboard_ui.h", - "test_overlay_delegate.cc", - "test_overlay_delegate.h", - "test_palette_delegate.cc", - "test_palette_delegate.h", - "test_screenshot_delegate.cc", - "test_screenshot_delegate.h", - "test_session_controller_client.cc", - "test_session_controller_client.h", - "test_session_state_animator.cc", - "test_session_state_animator.h", - "test_session_state_delegate.cc", - "test_session_state_delegate.h", - "test_shell_delegate.cc", - "test_shell_delegate.h", - "test_system_tray_delegate.cc", - "test_system_tray_delegate.h", - "test_system_tray_item.cc", - "test_system_tray_item.h", - "test_wallpaper_delegate.cc", - "test_wallpaper_delegate.h", - "tray_cast_test_api.cc", - "tray_cast_test_api.h", - "ui_controls_factory_ash.cc", - "ui_controls_factory_ash.h", - "user_metrics_recorder_test_api.cc", - "user_metrics_recorder_test_api.h", - "wallpaper_controller_test_api.cc", - "wallpaper_controller_test_api.h", - "workspace_controller_test_api.cc", - "workspace_controller_test_api.h", - "workspace_event_handler_test_helper.cc", - "workspace_event_handler_test_helper.h", - ] - configs += [ "//build/config:precompiled_headers" ] - - public_deps = [ - "//ash", - "//testing/gtest", - "//third_party/WebKit/public:blink_headers", - "//ui/display:display_manager_test_api", - ] - deps = [ - "//ash", - "//ash/mus:lib", - "//ash/public/cpp:ash_public_cpp", - "//ash/resources", - "//base", - "//base:i18n", - "//base/test:test_support", - "//chromeos", - "//components/prefs:test_support", - "//components/signin/core/account_id", - "//components/user_manager:user_manager", - "//device/bluetooth", - "//services/ui/public/cpp/input_devices", - "//services/ui/public/interfaces", - "//skia", - "//testing/gtest", - "//ui/accessibility", - "//ui/app_list:test_support", - "//ui/app_list/presenter", - "//ui/app_list/presenter:test_support", - "//ui/aura", - "//ui/aura:test_support", - "//ui/base:test_support", - "//ui/compositor:test_support", - "//ui/display", - "//ui/display/types", - "//ui/events:events_base", - "//ui/events:test_support", - "//ui/events/devices", - "//ui/gl", - "//ui/gl:test_support", - "//ui/keyboard", - "//ui/message_center", - "//ui/views", - "//ui/views:test_support", - "//ui/wm", - ] - - if (use_x11) { - deps += [ "//ui/gfx/x" ] - } -} - -static_library("interactive_ui_test_support") { - testonly = true - configs += [ "//build/config:precompiled_headers" ] - public_deps = [ - ":test_support_without_content", - "//ash", - ] - sources = [ - "ash_interactive_ui_test_base.cc", - "ash_interactive_ui_test_base.h", - ] - deps = [ - ":test_support_with_content", - "//base", - "//skia", - "//testing/gtest", - "//ui/aura", - "//ui/base", - "//ui/gl:test_support", - ] -} diff --git a/chromium/ash/touch_hud/BUILD.gn b/chromium/ash/touch_hud/BUILD.gn index 8c509ef66d3..44111181c4c 100644 --- a/chromium/ash/touch_hud/BUILD.gn +++ b/chromium/ash/touch_hud/BUILD.gn @@ -15,6 +15,7 @@ component("touch_hud") { deps = [ "//base", + "//cc/paint", "//skia", "//ui/compositor", "//ui/events", |