diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-11-20 15:06:40 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-11-22 11:48:58 +0000 |
commit | daa093eea7c773db06799a13bd7e4e2e2a9f8f14 (patch) | |
tree | 96cc5e7b9194c1b29eab927730bfa419e7111c25 /chromium/ash | |
parent | be59a35641616a4cf23c4a13fa0632624b021c1b (diff) | |
download | qtwebengine-chromium-daa093eea7c773db06799a13bd7e4e2e2a9f8f14.tar.gz |
BASELINE: Update Chromium to 63.0.3239.58
Change-Id: Ia93b322a00ba4dd4004f3bcf1254063ba90e1605
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/ash')
22 files changed, 515 insertions, 212 deletions
diff --git a/chromium/ash/BUILD.gn b/chromium/ash/BUILD.gn index d476e6a4e19..65beaf4e972 100644 --- a/chromium/ash/BUILD.gn +++ b/chromium/ash/BUILD.gn @@ -44,9 +44,23 @@ component("ash") { "accelerators/spoken_feedback_toggler.h", "accessibility/accessibility_controller.cc", "accessibility/accessibility_controller.h", - - # TODO(jamescook): Move these into accessibility/ after M61 stable. - "accessibility_delegate.h", + "accessibility/accessibility_cursor_ring_layer.cc", + "accessibility/accessibility_cursor_ring_layer.h", + "accessibility/accessibility_delegate.h", + "accessibility/accessibility_focus_ring.cc", + "accessibility/accessibility_focus_ring.h", + "accessibility/accessibility_focus_ring_controller.cc", + "accessibility/accessibility_focus_ring_controller.h", + "accessibility/accessibility_focus_ring_layer.cc", + "accessibility/accessibility_focus_ring_layer.h", + "accessibility/default_accessibility_delegate.cc", + "accessibility/default_accessibility_delegate.h", + "accessibility/focus_ring_controller.cc", + "accessibility/focus_ring_controller.h", + "accessibility/focus_ring_layer.cc", + "accessibility/focus_ring_layer.h", + + # TODO(jamescook): Move parts of this into //ash/public/cpp "accessibility_types.h", "animation/animation_change_type.h", "app_list/app_list_delegate_impl.cc", @@ -60,8 +74,6 @@ component("ash") { "ash_export.h", "ash_layout_constants.cc", "ash_layout_constants.h", - "ash_switches.cc", - "ash_switches.h", "ash_touch_exploration_manager_chromeos.cc", "ash_touch_exploration_manager_chromeos.h", "ash_view_ids.h", @@ -73,8 +85,6 @@ component("ash") { "cast_config_controller.h", "debug.cc", "debug.h", - "default_accessibility_delegate.cc", - "default_accessibility_delegate.h", "default_wallpaper_delegate.cc", "default_wallpaper_delegate.h", "display/ash_display_controller.cc", @@ -103,6 +113,8 @@ component("ash") { "display/mouse_warp_controller.h", "display/null_mouse_warp_controller.cc", "display/null_mouse_warp_controller.h", + "display/overscan_calibrator.cc", + "display/overscan_calibrator.h", "display/projecting_observer_chromeos.cc", "display/projecting_observer_chromeos.h", "display/resolution_notification_controller.cc", @@ -119,6 +131,10 @@ component("ash") { "display/shared_display_edge_indicator.h", "display/shutdown_observer_chromeos.cc", "display/shutdown_observer_chromeos.h", + "display/touch_calibrator_controller.cc", + "display/touch_calibrator_controller.h", + "display/touch_calibrator_view.cc", + "display/touch_calibrator_view.h", "display/unified_mouse_warp_controller.cc", "display/unified_mouse_warp_controller.h", "display/window_tree_host_manager.cc", @@ -173,7 +189,6 @@ component("ash") { "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", @@ -200,8 +215,26 @@ component("ash") { "laser/laser_pointer_view.h", "laser/laser_segment_utils.cc", "laser/laser_segment_utils.h", + "lock_screen_action/lock_screen_action_background_controller.cc", + "lock_screen_action/lock_screen_action_background_controller.h", + "lock_screen_action/lock_screen_action_background_controller_impl.cc", + "lock_screen_action/lock_screen_action_background_controller_impl.h", + "lock_screen_action/lock_screen_action_background_controller_stub.cc", + "lock_screen_action/lock_screen_action_background_controller_stub.h", + "lock_screen_action/lock_screen_action_background_observer.h", + "lock_screen_action/lock_screen_action_background_state.h", + "lock_screen_action/lock_screen_action_background_view.cc", + "lock_screen_action/lock_screen_action_background_view.h", + "login/lock_screen_apps_focus_observer.h", "login/lock_screen_controller.cc", "login/lock_screen_controller.h", + "login/ui/animated_rounded_image_view.cc", + "login/ui/animated_rounded_image_view.h", + "login/ui/animation_frame.h", + "login/ui/image_parser.cc", + "login/ui/image_parser.h", + "login/ui/layout_util.cc", + "login/ui/layout_util.h", "login/ui/lock_contents_view.cc", "login/ui/lock_contents_view.h", "login/ui/lock_debug_view.cc", @@ -212,6 +245,10 @@ component("ash") { "login/ui/lock_window.h", "login/ui/login_auth_user_view.cc", "login/ui/login_auth_user_view.h", + "login/ui/login_base_bubble_view.cc", + "login/ui/login_base_bubble_view.h", + "login/ui/login_bubble.cc", + "login/ui/login_bubble.h", "login/ui/login_constants.h", "login/ui/login_data_dispatcher.cc", "login/ui/login_data_dispatcher.h", @@ -221,6 +258,10 @@ component("ash") { "login/ui/login_pin_view.h", "login/ui/login_user_view.cc", "login/ui/login_user_view.h", + "login/ui/non_accessible_view.cc", + "login/ui/non_accessible_view.h", + "login/ui/note_action_launch_button.cc", + "login/ui/note_action_launch_button.h", "login/ui/pin_keyboard_animation.cc", "login/ui/pin_keyboard_animation.h", "login/ui/user_switch_flip_animation.cc", @@ -232,6 +273,20 @@ component("ash") { "magnifier/partial_magnification_controller.h", "media_controller.cc", "media_controller.h", + "message_center/message_center_bubble.cc", + "message_center/message_center_bubble.h", + "message_center/message_center_button_bar.cc", + "message_center/message_center_button_bar.h", + "message_center/message_center_controller.cc", + "message_center/message_center_controller.h", + "message_center/message_center_style.cc", + "message_center/message_center_style.h", + "message_center/message_center_view.cc", + "message_center/message_center_view.h", + "message_center/message_list_view.cc", + "message_center/message_list_view.h", + "message_center/notifier_settings_view.cc", + "message_center/notifier_settings_view.h", "metrics/desktop_task_switch_metric_recorder.cc", "metrics/desktop_task_switch_metric_recorder.h", "metrics/gesture_action_type.h", @@ -270,15 +325,23 @@ component("ash") { "screen_util.cc", "screen_util.h", "screenshot_delegate.h", + "session/multiprofiles_intro_dialog.cc", + "session/multiprofiles_intro_dialog.h", + "session/session_aborted_dialog.cc", + "session/session_aborted_dialog.h", "session/session_controller.cc", "session/session_controller.h", "session/session_observer.cc", "session/session_observer.h", + "session/teleport_warning_dialog.cc", + "session/teleport_warning_dialog.h", "shelf/app_list_button.cc", "shelf/app_list_button.h", "shelf/app_list_shelf_item_delegate.cc", "shelf/app_list_shelf_item_delegate.h", "shelf/ink_drop_button_listener.h", + "shelf/login_shelf_view.cc", + "shelf/login_shelf_view.h", "shelf/overflow_bubble.cc", "shelf/overflow_bubble.h", "shelf/overflow_bubble_view.cc", @@ -392,8 +455,6 @@ component("ash") { "system/keyboard_brightness_control_delegate.h", "system/locale/locale_notification_controller.cc", "system/locale/locale_notification_controller.h", - "system/lock_screen_action/lock_screen_action_tray.cc", - "system/lock_screen_action/lock_screen_action_tray.h", "system/media_security/multi_profile_media_tray_item.cc", "system/media_security/multi_profile_media_tray_item.h", "system/network/network_icon.cc", @@ -407,6 +468,8 @@ component("ash") { "system/network/network_list.h", "system/network/network_observer.h", "system/network/network_portal_detector_observer.h", + "system/network/network_row_title_view.cc", + "system/network/network_row_title_view.h", "system/network/network_state_list_detailed_view.cc", "system/network/network_state_list_detailed_view.h", "system/network/sms_observer.cc", @@ -461,6 +524,10 @@ component("ash") { "system/power/battery_notification.h", "system/power/dual_role_notification.cc", "system/power/dual_role_notification.h", + "system/power/peripheral_battery_notifier.cc", + "system/power/peripheral_battery_notifier.h", + "system/power/power_button_controller.cc", + "system/power/power_button_controller.h", "system/power/power_button_display_controller.cc", "system/power/power_button_display_controller.h", "system/power/power_event_observer.cc", @@ -495,7 +562,6 @@ component("ash") { "system/session/logout_confirmation_dialog.h", "system/session/tray_session_length_limit.cc", "system/session/tray_session_length_limit.h", - "system/status_area_focus_observer.h", "system/status_area_layout_manager.cc", "system/status_area_layout_manager.h", "system/status_area_widget.cc", @@ -508,6 +574,7 @@ component("ash") { "system/system_clock_observer.h", "system/system_notifier.cc", "system/system_notifier.h", + "system/system_tray_focus_observer.h", "system/tiles/tiles_default_view.cc", "system/tiles/tiles_default_view.h", "system/tiles/tray_tiles.cc", @@ -597,16 +664,18 @@ component("ash") { "system/virtual_keyboard/virtual_keyboard_tray.h", "system/web_notification/ash_popup_alignment_delegate.cc", "system/web_notification/ash_popup_alignment_delegate.h", + "system/web_notification/fullscreen_notification_blocker.cc", + "system/web_notification/fullscreen_notification_blocker.h", + "system/web_notification/inactive_user_notification_blocker.cc", + "system/web_notification/inactive_user_notification_blocker.h", "system/web_notification/login_state_notification_blocker.cc", "system/web_notification/login_state_notification_blocker.h", - "system/web_notification/message_center_bubble.cc", - "system/web_notification/message_center_bubble.h", - "system/web_notification/message_center_controller.cc", - "system/web_notification/message_center_controller.h", "system/web_notification/web_notification_tray.cc", "system/web_notification/web_notification_tray.h", "touch/ash_touch_transform_controller.cc", "touch/ash_touch_transform_controller.h", + "touch/touch_devices_controller.cc", + "touch/touch_devices_controller.h", "touch/touch_hud_debug.cc", "touch/touch_hud_debug.h", "touch/touch_hud_projection.cc", @@ -632,6 +701,8 @@ component("ash") { "wallpaper/wallpaper_view.h", "wallpaper/wallpaper_widget_controller.cc", "wallpaper/wallpaper_widget_controller.h", + "wallpaper/wallpaper_window_state_manager.cc", + "wallpaper/wallpaper_window_state_manager.h", "window_user_data.h", "wm/always_on_top_controller.cc", "wm/always_on_top_controller.h", @@ -715,8 +786,6 @@ component("ash") { "wm/panels/panel_window_event_handler.h", "wm/panels/panel_window_resizer.cc", "wm/panels/panel_window_resizer.h", - "wm/power_button_controller.cc", - "wm/power_button_controller.h", "wm/resize_handle_window_targeter.cc", "wm/resize_handle_window_targeter.h", "wm/resize_shadow.cc", @@ -739,6 +808,8 @@ component("ash") { "wm/splitview/split_view_controller.h", "wm/splitview/split_view_divider.cc", "wm/splitview/split_view_divider.h", + "wm/splitview/split_view_overview_overlay.cc", + "wm/splitview/split_view_overview_overlay.h", "wm/stacking_controller.cc", "wm/stacking_controller.h", "wm/switchable_windows.cc", @@ -817,8 +888,6 @@ component("ash") { "wm/wm_snap_to_pixel_layout_manager.h", "wm/wm_toplevel_window_event_handler.cc", "wm/wm_toplevel_window_event_handler.h", - "wm/wm_types.cc", - "wm/wm_types.h", "wm/wm_window_animations.cc", "wm/wm_window_animations.h", "wm/workspace/backdrop_controller.cc", @@ -862,6 +931,7 @@ component("ash") { "//base/third_party/dynamic_annotations", "//cc", "//cc/debug", + "//cc/paint:paint", "//chromeos", "//chromeos:power_manager_proto", "//components/device_event_log", @@ -870,7 +940,6 @@ component("ash") { "//components/prefs", "//components/quirks", "//components/session_manager:base", - "//components/session_manager/core", "//components/signin/core/account_id", "//components/strings", "//components/user_manager", @@ -882,6 +951,7 @@ component("ash") { "//gpu/command_buffer/client:gles2_interface", "//media", "//net", + "//services/data_decoder/public/cpp", "//services/preferences/public/cpp", "//services/service_manager/public/cpp", "//services/ui/public/cpp", @@ -893,6 +963,7 @@ component("ash") { "//third_party/WebKit/public:blink_headers", "//third_party/icu", "//third_party/qcms", + "//third_party/re2", "//ui/accessibility", "//ui/app_list/presenter", "//ui/aura", @@ -918,6 +989,7 @@ component("ash") { "//ui/gfx/geometry", "//ui/keyboard", "//ui/message_center", + "//ui/message_center/public/cpp", "//ui/native_theme", "//ui/ozone", "//ui/platform_window", @@ -1126,6 +1198,7 @@ test("ash_content_unittests") { "//ui/gl:test_support", "//ui/message_center", "//ui/message_center:test_support", + "//ui/message_center/public/cpp", "//ui/views", "//ui/views:test_support", "//ui/views/controls/webview:test_support", @@ -1138,21 +1211,41 @@ test("ash_content_unittests") { ] } -# This target includes the tests that are run by both ash and mash. Eventually -# the majority of tests in |ash_unittests| should move here. -source_set("common_unittests") { - testonly = true +test("ash_unittests") { sources = [ "accelerators/accelerator_commands_unittest.cc", "accelerators/accelerator_controller_unittest.cc", "accelerators/accelerator_filter_unittest.cc", "accelerators/accelerator_table_unittest.cc", + "accelerators/magnifier_key_scroller_unittest.cc", "accelerators/spoken_feedback_toggler_unittest.cc", "accessibility/accessibility_controller_unittest.cc", + "accessibility/accessibility_focus_ring_controller_unittest.cc", + "app_list/app_list_presenter_delegate_unittest.cc", "ash_touch_exploration_manager_chromeos_unittest.cc", "autoclick/autoclick_unittest.cc", + "dip_unittest.cc", + "display/cursor_window_controller_unittest.cc", + "display/display_color_manager_chromeos_unittest.cc", "display/display_configuration_controller_unittest.cc", + "display/display_error_observer_chromeos_unittest.cc", + "display/display_manager_unittest.cc", + "display/display_util_unittest.cc", + "display/extended_mouse_warp_controller_unittest.cc", + "display/mirror_window_controller_unittest.cc", + "display/mouse_cursor_event_filter_unittest.cc", + "display/projecting_observer_chromeos_unittest.cc", + "display/resolution_notification_controller_unittest.cc", + "display/root_window_transformers_unittest.cc", + "display/screen_ash_unittest.cc", + "display/screen_position_controller_unittest.cc", + "display/touch_calibrator_controller_unittest.cc", + "display/unified_mouse_warp_controller_unittest.cc", + "display/window_tree_host_manager_unittest.cc", + "drag_drop/drag_drop_controller_unittest.cc", + "drag_drop/drag_drop_tracker_unittest.cc", "drag_drop/drag_image_view_unittest.cc", + "extended_desktop_unittest.cc", "fast_ink/fast_ink_points_unittest.cc", "first_run/first_run_helper_unittest.cc", "focus_cycler_unittest.cc", @@ -1165,12 +1258,14 @@ source_set("common_unittests") { "ime/ime_controller_unittest.cc", "laser/laser_pointer_controller_unittest.cc", "laser/laser_segment_utils_unittest.cc", + "lock_screen_action/lock_screen_action_background_controller_impl_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_bubble_unittest.cc", "login/ui/login_password_view_test.cc", "login/ui/login_pin_view_unittest.cc", "login/ui/login_test_base.cc", @@ -1178,6 +1273,12 @@ source_set("common_unittests") { "login/ui/login_test_utils.cc", "login/ui/login_test_utils.h", "login/ui/login_user_view_unittest.cc", + "login/ui/note_action_launch_button_unittest.cc", + "magnifier/magnification_controller_unittest.cc", + "magnifier/partial_magnification_controller_unittest.cc", + "message_center/message_center_view_unittest.cc", + "message_center/message_list_view_unittest.cc", + "message_center/notifier_settings_view_unittest.cc", "metrics/desktop_task_switch_metric_recorder_unittest.cc", "metrics/pointer_metrics_recorder_unittest.cc", "metrics/task_switch_metrics_recorder_unittest.cc", @@ -1185,12 +1286,14 @@ source_set("common_unittests") { "metrics/user_metrics_recorder_unittest.cc", "mus/window_manager_common_unittests.cc", "mus_property_mirror_ash_unittest.cc", + "pointer_watcher_adapter_classic_unittest.cc", "root_window_controller_unittest.cc", "rotator/screen_rotation_animation_unittest.cc", "rotator/screen_rotation_animator_unittest.cc", "screen_util_unittest.cc", "session/session_controller_unittest.cc", "shelf/app_list_button_unittest.cc", + "shelf/login_shelf_view_unittest.cc", "shelf/shelf_application_menu_model_unittest.cc", "shelf/shelf_background_animator_unittest.cc", "shelf/shelf_button_pressed_metric_tracker_unittest.cc", @@ -1216,7 +1319,6 @@ source_set("common_unittests") { "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", "system/network/sms_observer_unittest.cc", @@ -1233,12 +1335,15 @@ source_set("common_unittests") { "system/palette/tools/create_note_unittest.cc", "system/palette/tools/metalayer_unittest.cc", "system/palette/tools/screenshot_unittest.cc", + "system/power/peripheral_battery_notifier_unittest.cc", "system/power/power_event_observer_unittest.cc", "system/power/power_status_unittest.cc", "system/power/power_status_view_unittest.cc", "system/power/tablet_power_button_controller_unittest.cc", "system/power/tray_power_unittest.cc", "system/power/video_activity_notifier_unittest.cc", + "system/rotation/tray_rotation_lock_unittest.cc", + "system/screen_layout_observer_unittest.cc", "system/screen_security/screen_tray_item_unittest.cc", "system/session/logout_button_tray_unittest.cc", "system/session/logout_confirmation_controller_unittest.cc", @@ -1259,31 +1364,48 @@ source_set("common_unittests") { "system/update/tray_update_unittest.cc", "system/user/tray_user_unittest.cc", "system/web_notification/ash_popup_alignment_delegate_unittest.cc", + "system/web_notification/inactive_user_notification_blocker_unittest.cc", "system/web_notification/login_state_notification_blocker_unittest.cc", "system/web_notification/web_notification_tray_unittest.cc", "test/ash_test_helper_unittest.cc", + "test/ash_unittests.cc", "tooltips/tooltip_controller_unittest.cc", + "touch/touch_devices_controller_unittest.cc", + "touch/touch_observer_hud_unittest.cc", + "tray_action/test_tray_action_client.cc", + "tray_action/test_tray_action_client.h", "tray_action/tray_action_unittest.cc", + "utility/screenshot_controller_unittest.cc", + "virtual_keyboard_controller_unittest.cc", "wallpaper/wallpaper_controller_unittest.cc", "window_user_data_unittest.cc", + "wm/always_on_top_controller_unittest.cc", "wm/ash_focus_rules_unittest.cc", "wm/container_finder_unittest.cc", + "wm/drag_window_resizer_unittest.cc", + "wm/gestures/overview_gesture_handler_unittest.cc", "wm/immersive_fullscreen_controller_unittest.cc", + "wm/lock_action_handler_layout_manager_unittest.cc", + "wm/lock_layout_manager_unittest.cc", "wm/lock_state_controller_unittest.cc", "wm/mru_window_tracker_unittest.cc", + "wm/native_cursor_manager_ash_unittest.cc", "wm/overlay_event_filter_unittest.cc", "wm/overview/cleanup_animation_observer_unittest.cc", "wm/overview/window_selector_unittest.cc", "wm/panels/panel_layout_manager_unittest.cc", "wm/panels/panel_window_resizer_unittest.cc", + "wm/resize_shadow_and_cursor_unittest.cc", "wm/root_window_layout_manager_unittest.cc", "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_gesture_event_filter_unittest.cc", "wm/system_modal_container_layout_manager_unittest.cc", "wm/tablet_mode/accelerometer_test_data_literals.cc", + "wm/tablet_mode/tablet_mode_controller_unittest.cc", "wm/tablet_mode/tablet_mode_window_manager_unittest.cc", "wm/tablet_mode/touchpad_and_keyboard_disabler_unittest.cc", "wm/toplevel_window_event_handler_unittest.cc", @@ -1296,155 +1418,12 @@ source_set("common_unittests") { "wm/window_state_unittest.cc", "wm/window_util_unittest.cc", "wm/workspace/magnetism_matcher_unittest.cc", + "wm/workspace/multi_window_resize_controller_unittest.cc", "wm/workspace/workspace_event_handler_unittest.cc", "wm/workspace/workspace_layout_manager_unittest.cc", "wm/workspace/workspace_window_resizer_unittest.cc", "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", - "//base", - "//base/test:test_support", - "//chromeos", - "//chromeos:power_manager_proto", - "//chromeos:test_support", - "//chromeos:test_support_without_gmock", - "//components/prefs:test_support", - "//components/session_manager/core", - "//components/user_manager:test_support", - "//device/bluetooth", - "//services/ui/public/interfaces", - "//testing/gmock", - "//ui/accessibility", - "//ui/app_list/presenter", - "//ui/app_list/presenter:test_support", - "//ui/aura", - "//ui/aura:test_support", - "//ui/base", - "//ui/base:test_support", - "//ui/chromeos/events", - "//ui/compositor:test_support", - "//ui/display", - "//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 = [ - ":test_support_without_content", - ] -} - -test("ash_unittests") { - sources = [ - # TODO: move to common_unittests. Fails because of http://crbug.com/557401. - "accelerators/magnifier_key_scroller_unittest.cc", - - # Specific to classic-ash. - "app_list/app_list_presenter_delegate_unittest.cc", - "pointer_watcher_adapter_classic_unittest.cc", - - # TODO: decide if this needs to be ported. http://crbug.com/695566. - "dip_unittest.cc", - - # TODO: tests in display generally use display_manger(), which doesn't - # exist in mash. Decide which of these tests need to be ported to mash. - # http://crbug.com/695569 - "display/cursor_window_controller_unittest.cc", - "display/display_color_manager_chromeos_unittest.cc", - "display/display_error_observer_chromeos_unittest.cc", - "display/display_manager_unittest.cc", - "display/display_util_unittest.cc", - "display/extended_mouse_warp_controller_unittest.cc", - "display/mirror_window_controller_unittest.cc", - "display/mouse_cursor_event_filter_unittest.cc", - "display/projecting_observer_chromeos_unittest.cc", - "display/resolution_notification_controller_unittest.cc", - "display/root_window_transformers_unittest.cc", - "display/screen_ash_unittest.cc", - "display/screen_position_controller_unittest.cc", - "display/unified_mouse_warp_controller_unittest.cc", - "display/window_tree_host_manager_unittest.cc", - - # These exercise classic-ash specific functionality. - "drag_drop/drag_drop_controller_unittest.cc", - "drag_drop/drag_drop_tracker_unittest.cc", - - # TODO: port to mash. http://crbug.com/695570. - "extended_desktop_unittest.cc", - - # TODO: magnifier not supported in mash. http://crbug.com/647438. - "magnifier/magnification_controller_unittest.cc", - "magnifier/partial_magnification_controller_unittest.cc", - - # TODO: investigate failure in mash, http://crbug.com/695887. - "system/rotation/tray_rotation_lock_unittest.cc", - - # TODO: fails as ScreenLayoutObserver is not installed in mash, - # http://crbug.com/696752. - "system/screen_layout_observer_unittest.cc", - "test/ash_unittests.cc", - - # TODO(riajiang): port to work with mash. http://crbug.com/698032. - "touch/touch_observer_hud_unittest.cc", - - # TODO(moshayedi): port to work with mash. http://crbug.com/698033. - "utility/screenshot_controller_unittest.cc", - - # TODO: keyboard is not enabled in mash. http://crbug.com/648733. - "virtual_keyboard_controller_unittest.cc", - - # TODO: keyboard is not enabled in mash. http://crbug.com/648733. - "wm/always_on_top_controller_unittest.cc", - - # TODO: mash doesn't support CursorManager. http://crbug.com/631103. - "wm/native_cursor_manager_ash_unittest.cc", - - # TODO: mash doesn't support DragWindowResizer. http://crbug.com/633782. - "wm/drag_window_resizer_unittest.cc", - - # TODO: mash doesn't support OverviewGestureHandler. - # http://crbug.com/634994. - "wm/gestures/overview_gesture_handler_unittest.cc", - - # 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/tablet_mode/tablet_mode_controller_unittest.cc", - - # TODO: mash doesn't support CursorManager. http://crbug.com/631103. - "wm/resize_shadow_and_cursor_unittest.cc", - - # TODO: mash doesn't support SetFirstDisplayAsInternalDisplay(), which all - # the tests in this file use. http://crbug.com/698091. - "wm/system_gesture_event_filter_unittest.cc", - - # TODO: MultiWindowResizeControllerTests fail in mash. - # http://crbug.com/699172. - "wm/workspace/multi_window_resize_controller_unittest.cc", - - # TODO: fails because the virtual keyboard is not enabled in mash. - # http://crbug.com/648733. - "wm/workspace/workspace_layout_manager_keyboard_unittest.cc", - ] configs += [ "//build/config:precompiled_headers", "//build/config/compiler:no_size_t_to_int_warning", @@ -1452,10 +1431,11 @@ test("ash_unittests") { deps = [ ":ash", - ":common_unittests", ":test_support_without_content", "//ash/autoclick/common:autoclick", + "//ash/mus:lib", "//ash/public/cpp:ash_public_cpp", + "//ash/public/cpp:unit_tests", "//ash/resources", "//ash/resources/vector_icons", "//ash/strings", @@ -1463,10 +1443,14 @@ test("ash_unittests") { "//base", "//base/test:test_support", "//chromeos", + "//chromeos:power_manager_proto", + "//chromeos:test_support", "//chromeos:test_support_without_gmock", + "//components/prefs:test_support", "//components/quirks", "//components/signin/core/account_id", "//components/user_manager", + "//components/user_manager:test_support", "//device/bluetooth", "//mojo/edk/system", "//net:net", @@ -1485,6 +1469,7 @@ test("ash_unittests") { "//ui/base:test_support", "//ui/base/ime", "//ui/chromeos", + "//ui/chromeos/events", "//ui/compositor", "//ui/compositor:test_support", "//ui/display", @@ -1495,16 +1480,20 @@ test("ash_unittests") { "//ui/events:test_support", "//ui/events/devices", "//ui/gfx", + "//ui/gfx:test_support", "//ui/gfx/geometry", "//ui/gl:test_support", "//ui/keyboard", "//ui/keyboard:test_support", "//ui/message_center", + "//ui/message_center:test_support", + "//ui/message_center/public/cpp", "//ui/resources", "//ui/strings", "//ui/views", "//ui/views:test_support", "//ui/wm", + "//ui/wm:test_support", "//ui/wm/public", "//url", ] @@ -1609,6 +1598,8 @@ static_library("test_support_common") { testonly = true visibility = [ ":*" ] sources = [ + "accessibility/test_accessibility_delegate.cc", + "accessibility/test_accessibility_delegate.h", "app_list/test_app_list_presenter_impl.cc", "app_list/test_app_list_presenter_impl.h", "display/display_configuration_controller_test_api.cc", @@ -1619,14 +1610,22 @@ static_library("test_support_common") { "display/screen_orientation_controller_test_api.h", "highlighter/highlighter_controller_test_api.cc", "highlighter/highlighter_controller_test_api.h", + "ime/test_ime_controller.cc", + "ime/test_ime_controller.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", + "lock_screen_action/lock_screen_action_background_controller_impl_test_api.h", + "lock_screen_action/lock_screen_action_background_view_test_api.h", + "lock_screen_action/test_lock_screen_action_background_controller.cc", + "lock_screen_action/test_lock_screen_action_background_controller.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", + "mojo_test_interface_factory.cc", + "mojo_test_interface_factory.h", # TODO(jamescook): Consider adding a //ash/public/cpp:test_support target. "public/cpp/immersive/immersive_fullscreen_controller_test_api.cc", @@ -1651,8 +1650,11 @@ static_library("test_support_common") { "system/cast/tray_cast_test_api.h", "system/palette/test_palette_delegate.cc", "system/palette/test_palette_delegate.h", + "system/power/power_button_test_base.cc", + "system/power/power_button_test_base.h", "system/status_area_widget_test_helper.cc", "system/status_area_widget_test_helper.h", + "system/tray/system_tray_test_api.cc", "system/tray/system_tray_test_api.h", "system/tray/test_system_tray_item.cc", "system/tray/test_system_tray_item.h", @@ -1669,12 +1671,10 @@ static_library("test_support_common") { # 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_media_client.cc", + "test_media_client.h", "test_screenshot_delegate.cc", "test_screenshot_delegate.h", "test_shell_delegate.cc", @@ -1710,12 +1710,14 @@ static_library("test_support_common") { "//ash", "//ash/mus:lib", "//ash/public/cpp:ash_public_cpp", + "//ash/public/interfaces:test_interfaces", "//ash/resources", "//base", "//base:i18n", "//base/test:test_support", "//cc:test_support", "//chromeos", + "//chromeos:test_support_without_gmock", "//components/prefs:test_support", "//components/signin/core/account_id", "//components/user_manager:user_manager", @@ -1742,6 +1744,7 @@ static_library("test_support_common") { "//ui/gl:test_support", "//ui/keyboard", "//ui/message_center", + "//ui/message_center/public/cpp", "//ui/views", "//ui/views:test_support", "//ui/wm", diff --git a/chromium/ash/mus/BUILD.gn b/chromium/ash/mus/BUILD.gn index 9d1ac5bee3f..22ab79ffa7e 100644 --- a/chromium/ash/mus/BUILD.gn +++ b/chromium/ash/mus/BUILD.gn @@ -18,8 +18,6 @@ source_set("lib") { "accelerators/accelerator_controller_registrar.h", "accelerators/accelerator_handler.h", "accelerators/accelerator_ids.h", - "accessibility_delegate_mus.cc", - "accessibility_delegate_mus.h", "ash_window_tree_host_mus.cc", "ash_window_tree_host_mus.h", "bridge/immersive_handler_factory_mus.cc", @@ -88,6 +86,7 @@ source_set("lib") { public_deps = [ "//ash", "//ash/public/cpp:ash_public_cpp", + "//ash/wayland", "//base", "//base:i18n", "//mash/public/interfaces", @@ -114,6 +113,11 @@ source_set("lib") { data_deps = [ "//ash/touch_hud/mus:touch_hud", ] + + assert_no_deps = [ + "//content/public/browser", + "//content/public/common", + ] } service("mus") { diff --git a/chromium/ash/public/cpp/BUILD.gn b/chromium/ash/public/cpp/BUILD.gn index 1a5667c613e..4992d0c54d7 100644 --- a/chromium/ash/public/cpp/BUILD.gn +++ b/chromium/ash/public/cpp/BUILD.gn @@ -2,6 +2,8 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//mojo/public/tools/bindings/mojom.gni") + # C++ headers and sources that can be used outside ash. component("ash_public_cpp") { sources = [ @@ -9,6 +11,8 @@ component("ash_public_cpp") { "ash_pref_names.cc", "ash_pref_names.h", "ash_public_export.h", + "ash_switches.cc", + "ash_switches.h", "ash_typography.cc", "ash_typography.h", "config.h", @@ -43,12 +47,15 @@ component("ash_public_cpp") { "shelf_types.h", "shell_window_ids.cc", "shell_window_ids.h", - "touchscreen_enabled_source.h", + "stylus_utils.cc", + "stylus_utils.h", "voice_interaction_state.h", "window_pin_type.cc", "window_pin_type.h", "window_properties.cc", "window_properties.h", + "window_state_type.cc", + "window_state_type.h", "window_style.cc", "window_style.h", ] @@ -61,6 +68,7 @@ component("ash_public_cpp") { "//skia/public/interfaces", "//ui/aura", "//ui/display", + "//ui/events/devices", "//ui/views", "//ui/views/mus", ] @@ -75,6 +83,20 @@ component("ash_public_cpp") { [ "//ash/public/interfaces:interfaces_internal" ] } +# Using a test service because the traits need to pass handles around. Revisit +# this after Deserialize(Serialize()) API works with handles. +mojom("test_interfaces") { + visibility = [ ":unit_tests" ] + + sources = [ + "shelf_struct_traits_test_service.mojom", + ] + + public_deps = [ + "//ash/public/interfaces:interfaces_internal", + ] +} + source_set("unit_tests") { testonly = true sources = [ @@ -84,6 +106,7 @@ source_set("unit_tests") { deps = [ ":ash_public_cpp", + ":test_interfaces", "//base", "//testing/gtest", "//ui/gfx:test_support", diff --git a/chromium/ash/public/cpp/shelf_struct_traits_test_service.mojom b/chromium/ash/public/cpp/shelf_struct_traits_test_service.mojom new file mode 100644 index 00000000000..54758b1dec1 --- /dev/null +++ b/chromium/ash/public/cpp/shelf_struct_traits_test_service.mojom @@ -0,0 +1,13 @@ +// 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/shelf.mojom"; + +// A test echo interface for traits. +interface ShelfStructTraitsTestService { + [Sync] + EchoShelfItem(ShelfItem in) => (ShelfItem out); +}; diff --git a/chromium/ash/public/interfaces/BUILD.gn b/chromium/ash/public/interfaces/BUILD.gn index 912705f1e2d..7b49da5a2fe 100644 --- a/chromium/ash/public/interfaces/BUILD.gn +++ b/chromium/ash/public/interfaces/BUILD.gn @@ -9,7 +9,7 @@ import("//mojo/public/tools/bindings/mojom.gni") # //ash/public/cpp, and //ash/public/cpp needs to depend on this for generated # code (such as enums and constants). mojom("interfaces_internal") { - visibility = [ "//ash/public/cpp:ash_public_cpp" ] + visibility = [ "//ash/public/cpp:*" ] sources = [ "accelerator_controller.mojom", @@ -17,6 +17,7 @@ mojom("interfaces_internal") { "cast_config.mojom", "constants.mojom", "event_properties.mojom", + "highlighter_controller.mojom", "ime_controller.mojom", "ime_info.mojom", "locale.mojom", @@ -38,6 +39,7 @@ mojom("interfaces_internal") { "vpn_list.mojom", "wallpaper.mojom", "window_pin_type.mojom", + "window_state_type.mojom", "window_style.mojom", ] @@ -56,3 +58,13 @@ mojom("interfaces_internal") { export_define = "ASH_PUBLIC_IMPLEMENTATION=1" export_header = "ash/public/cpp/ash_public_export.h" } + +mojom("test_interfaces") { + testonly = true + sources = [ + "system_tray_test_api.mojom", + ] + deps = [ + "//mojo/common:common_custom_types", + ] +} diff --git a/chromium/ash/public/interfaces/highlighter_controller.mojom b/chromium/ash/public/interfaces/highlighter_controller.mojom new file mode 100644 index 00000000000..fc679f56bb9 --- /dev/null +++ b/chromium/ash/public/interfaces/highlighter_controller.mojom @@ -0,0 +1,26 @@ +// 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 "ui/gfx/geometry/mojo/geometry.mojom"; + +// Interface for ash client (e.g. Chrome) to connect to the highlighter +// controller, the component implementing on-screen content selection +// with a stylus. +interface HighlighterController { + // Sets the client interface. + SetClient(HighlighterControllerClient client); +}; + +// Interface for ash to notify the client (e.g. Chrome) about the highlighter +// selection and state. +interface HighlighterControllerClient { + // Called when when a valid selection is made. Selected rectangle is in + // screen coordinates, clipped to screen bounds if necessary. + HandleSelection(gfx.mojom.Rect rect); + + // Called when the highlighter tool becomes enabled or disabled. + HandleEnabledStateChange(bool enabled); +}; diff --git a/chromium/ash/public/interfaces/ime_controller.mojom b/chromium/ash/public/interfaces/ime_controller.mojom index 0b2768e4c55..c60b65482d0 100644 --- a/chromium/ash/public/interfaces/ime_controller.mojom +++ b/chromium/ash/public/interfaces/ime_controller.mojom @@ -30,6 +30,15 @@ interface ImeController { // Report caps lock state changes from chrome (which is the source of truth) // to the tray. SetCapsLockState(bool enabled); + + // Report the enabled state of the various extra input options (currently + // emoji, handwriting, and voice input). |is_extra_input_options_enabled| set + // to false will disable all extra input option UI regardless of the enabled + // state of the individual options (which will be ingored). + SetExtraInputOptionsEnabledState(bool is_extra_input_options_enabled, + bool is_emoji_enabled, + bool is_handwriting_enabled, + bool is_voice_enabled); }; // Interface for ash to send input method requests to its client (e.g. Chrome). diff --git a/chromium/ash/public/interfaces/lock_screen.mojom b/chromium/ash/public/interfaces/lock_screen.mojom index 4a91f77776e..5a5155b8024 100644 --- a/chromium/ash/public/interfaces/lock_screen.mojom +++ b/chromium/ash/public/interfaces/lock_screen.mojom @@ -60,6 +60,11 @@ interface LockScreen { // |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); + + // Called when focus is reported to be leaving a lock screen app window. + // Requests focus to be handed off to the next suitable widget. + // |reverse|: Whether the tab order is reversed. + HandleFocusLeavingLockScreenApps(bool reverse); }; // Allows ash lock screen to control a client (e.g. Chrome browser). Requests @@ -103,6 +108,17 @@ interface LockScreenClient { // Sign out current user. SignOutUser(); + // Close add user screen. + CancelAddUser(); + // User with |account_id| has reached maximum incorrect password attempts. OnMaxIncorrectPasswordAttempted(signin.mojom.AccountId account_id); + + // Should pass the focus to the active lock screen app window, if there is + // one. This is called when a lock screen app is reported to be active (using + // tray_action mojo interface), and is next in the tab order. + // |HandleFocusLeavingLockScreenApps| should be called to return focus to the + // lock screen. + // |reverse|: Whether the tab order is reversed. + FocusLockScreenApps(bool reverse); }; diff --git a/chromium/ash/public/interfaces/media.mojom b/chromium/ash/public/interfaces/media.mojom index bf56de4f0c7..84cea32bbb9 100644 --- a/chromium/ash/public/interfaces/media.mojom +++ b/chromium/ash/public/interfaces/media.mojom @@ -39,4 +39,7 @@ interface MediaClient { // Requests that the client resends the NotifyMediaCaptureChanged() message. RequestCaptureState(); + + // Suspends all WebContents-associated media sessions to stop managed players. + SuspendMediaSessions(); }; diff --git a/chromium/ash/public/interfaces/new_window.mojom b/chromium/ash/public/interfaces/new_window.mojom index 70094008980..8867fa188fd 100644 --- a/chromium/ash/public/interfaces/new_window.mojom +++ b/chromium/ash/public/interfaces/new_window.mojom @@ -7,6 +7,10 @@ module ash.mojom; // An exported object in ash which lets an ash consumer set a client interface. interface NewWindowController { SetClient(associated NewWindowClient client); + + // Shows the keyboard shortcut overlay. TODO(mash): this calls the client + // function of the same name below, but it should be implemented inside ash. + ShowKeyboardOverlay(); }; // A delegate interface that an ash user sends to ash to handle certain window diff --git a/chromium/ash/public/interfaces/session_controller.mojom b/chromium/ash/public/interfaces/session_controller.mojom index df95f6f5d57..75d910bb6cc 100644 --- a/chromium/ash/public/interfaces/session_controller.mojom +++ b/chromium/ash/public/interfaces/session_controller.mojom @@ -160,6 +160,23 @@ interface SessionController { // http://crbug.com/729808 SetSessionLengthLimit(mojo.common.mojom.TimeDelta length_limit, mojo.common.mojom.TimeTicks start_time); + + // Returns whether it's ok to switch the active multiprofile user. May affect + // or be affected by system state such as window overview mode and screen + // casting. + CanSwitchActiveUser() => (bool can_switch); + + // Shows a dialog to explain the implications of signing in multiple users. + // If |on_accept| is false, |permanently_accept| is ignored. + ShowMultiprofilesIntroDialog() => (bool on_accept, bool permanently_accept); + + // Shows a dialog to confirm that the user wants to teleport a window to + // another desktop. If |on_accept| is false, |permanently_accept| is ignored. + ShowTeleportWarningDialog() => (bool on_accept, bool permanently_accept); + + // Shows a dialog that explains that the given user is no longer allowed in + // the session due to a policy change, and aborts the session. + ShowMultiprofilesSessionAbortedDialog(string user_email); }; // Interface for ash to request session service from its client (e.g. Chrome). @@ -167,6 +184,9 @@ interface SessionControllerClient { // Requests to lock screen. RequestLockScreen(); + // Requests signing out all users, ending the current session. + RequestSignOut(); + // Switch to the active user with |account_id| (if the user has already signed // in). SwitchActiveUser(signin.mojom.AccountId account_id); diff --git a/chromium/ash/public/interfaces/shelf.mojom b/chromium/ash/public/interfaces/shelf.mojom index 8f7c854c5cb..e2ecf4fc075 100644 --- a/chromium/ash/public/interfaces/shelf.mojom +++ b/chromium/ash/public/interfaces/shelf.mojom @@ -5,8 +5,8 @@ module ash.mojom; import "mojo/common/string16.mojom"; -import "skia/public/interfaces/bitmap.mojom"; import "ui/events/mojo/event.mojom"; +import "ui/gfx/image/mojo/image.mojom"; // The types of menu items shown in shelf context and application list menus. // These values roughly match ui::MenuModel::ItemType (sans TYPE_BUTTON_ITEM). @@ -79,6 +79,7 @@ interface ShelfController { // 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. + // Clients may pass null images to signal no change and avoid transport costs. UpdateShelfItem(ShelfItem item); // Sets the |delegate| for the item with |id|. SetShelfItemDelegate(ShelfID id, ShelfItemDelegate delegate); @@ -87,12 +88,14 @@ interface ShelfController { // A Shelf observer, used to persist profile settings and cache a ShelfModel. interface ShelfObserver { // Called when the |item| has been added at |index|. + // This passes null images to avoid transport costs; clients don't use images. 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. + // This passes null images to avoid transport costs; clients don't use images. OnShelfItemUpdated(ShelfItem item); // Called when |delegate| for the item with |id| has been changed. OnShelfItemDelegateChanged(ShelfID id, ShelfItemDelegate delegate); @@ -135,7 +138,7 @@ struct MenuItem { MenuItemType type; // The type of the menu item. int64 command_id; // The client's arbitrary item command id. mojo.common.mojom.String16 label; // The string label, may be empty. - skia.mojom.Bitmap? image; // The image icon, may be null. + gfx.mojom.ImageSkia? image; // The image icon, may be null. array<MenuItem>? submenu; // The optional nested submenu item list. bool enabled; // The enabled state. bool checked; // The checked state. @@ -154,12 +157,13 @@ 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. + gfx.mojom.ImageSkia? image; // The icon shown on the shelf; null for updates + // with no icon change, null for ShelfObservers. + 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 prefs, 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 6aa61cf2b19..94e8611d2cd 100644 --- a/chromium/ash/public/interfaces/shelf.typemap +++ b/chromium/ash/public/interfaces/shelf.typemap @@ -14,8 +14,8 @@ sources = [ ] public_deps = [ "//mojo/common:common_custom_types", - "//skia/public/interfaces", "//ui/base", + "//ui/gfx/image/mojo:struct_traits", ] type_mappings = [ "ash.mojom.MenuItemType=ui::MenuModel::ItemType", diff --git a/chromium/ash/public/interfaces/system_tray.mojom b/chromium/ash/public/interfaces/system_tray.mojom index c1204687be8..4c5571e00e6 100644 --- a/chromium/ash/public/interfaces/system_tray.mojom +++ b/chromium/ash/public/interfaces/system_tray.mojom @@ -128,13 +128,6 @@ interface SystemTrayClient { // be any string. ShowNetworkSettings(string network_id); - // Shows UI for changing proxy settings. - ShowProxySettings(); - - // Attempts to sign out the user. - // TODO(jamescook): Migrate to a user or login service. crbug.com/665582 - SignOut(); - // Attempts to restart the system for update. RequestRestartForUpdate(); }; diff --git a/chromium/ash/public/interfaces/system_tray_test_api.mojom b/chromium/ash/public/interfaces/system_tray_test_api.mojom new file mode 100644 index 00000000000..c46bba08749 --- /dev/null +++ b/chromium/ash/public/interfaces/system_tray_test_api.mojom @@ -0,0 +1,30 @@ +// 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"; + +// Top-level items in the system tray bubble. +// TODO(jamescook): Consolidate with SystemTrayItem::UmaType. +enum TrayItem { + kEnterprise, + kNetwork, +}; + +// All methods operate on the system tray on the primary display. +interface SystemTrayTestApi { + // Shows the system tray bubble menu. + ShowBubble() => (); + + // Shows the submenu view for |item| in the system tray bubble menu. + ShowDetailedView(TrayItem item) => (); + + // Returns true if the view exists in the bubble and is visible. + IsBubbleViewVisible(int32 view_id) => (bool visible); + + // Returns the tooltip for a bubble view, or the empty string if the view + // does not exist. + GetBubbleViewTooltip(int32 view_id) => (mojo.common.mojom.String16 tooltip); +}; diff --git a/chromium/ash/public/interfaces/tablet_mode.mojom b/chromium/ash/public/interfaces/tablet_mode.mojom index 7ff3cb14de3..eec8ab9a846 100644 --- a/chromium/ash/public/interfaces/tablet_mode.mojom +++ b/chromium/ash/public/interfaces/tablet_mode.mojom @@ -4,16 +4,15 @@ module ash.mojom; -// Used to listen for when TabletMode is toggled. -interface TabletModeObserver { - // This is fired after the tablet mode has been toggled. +// Controls tablet mode state in a client app (e.g. chrome). +interface TabletModeClient { + // Fired after the tablet mode has been toggled. OnTabletModeToggled(bool enabled); }; -// Accepts observers which are notified of the current state of TabletMode, and -// of all future state changes. -interface TabletModeManager { - // Calling this method triggers an initial notification of the tablet mode - // state. Observers are automatically removed as their connections are closed. - AddObserver(TabletModeObserver observer); +// Controls tablet mode state in ash. +interface TabletModeController { + // Sets a client (e.g. chrome). Triggers OnTabletModeToggled() to provide + // the initial state. + SetClient(TabletModeClient client); }; diff --git a/chromium/ash/public/interfaces/tray_action.mojom b/chromium/ash/public/interfaces/tray_action.mojom index 63c5f691a60..49f40c5babf 100644 --- a/chromium/ash/public/interfaces/tray_action.mojom +++ b/chromium/ash/public/interfaces/tray_action.mojom @@ -9,7 +9,7 @@ enum TrayActionState { // The action cannot be handled - due to no client being set, the client not // supporting the action, user session not being locked etc. kNotAvailable, - + // The client supports the action and is not currently handling the action. kAvailable, @@ -26,6 +26,67 @@ enum TrayActionState { kBackground, }; +// The user action that triggered a request for a new note. +// Used in histograms - should be kept in sync with +// NewLockScreenNoteRequestType histogram enum, and assigned values should +// never be changed. +enum LockScreenNoteOrigin { + // The note request originated from the new note button in the system + // tray - note that this UI element is deprecated. + kTrayAction = 0, + + // The user tapped the note action button shown on the lock screen. + kLockScreenButtonTap = 1, + + // The user swiped from the note action button shown on the lock screen. + kLockScreenButtonSwipe = 2, + + // The user activated the lock screen button shown on the lock screen using + // the keyboard. + kLockScreenButtonKeyboard = 3, + + // The user ejected the stylus tool from the device. + kStylusEject = 4, + + // Not a real value - used primarily for UMA reporting (to report upper bound + // of valid histogram values). + kCount +}; + +// Reason for closing a lock screen note, and consequentially closing any +// existing note handler app windows. +// Used primarily for metrics reporting. +// IMPORTANT: The values should be kept in sync with +// LockScreenNoteTakingExitReason histogram enum, and assigned values should +// never be changed. +enum CloseLockScreenNoteReason { + // The user session was unlocked. + kSessionUnlock = 0, + + // The user session was shut down (e.g. due to user sign-out). + kShutdown = 1, + + // The user display was completely dimmed (e.g. due to user inactivity). + kScreenDimmed = 2, + + // Device suspended. + kSuspend = 3, + + // The app window associated with the note was closed by the app. + kAppWindowClosed = 4, + + // The note taking app's support for the lock screen note taking was disabled + // (e.g. because of a policy update). + kAppLockScreenSupportDisabled = 5, + + // The user pressed "Unlock" button on the lock screen UI. + kUnlockButtonPressed = 6, + + // Not a real value - used primarily for UMA reporting (to report upper bound + // of valid histogram values). + kCount +}; + // Used by a client (e.g. Chrome) to set up a handler for a tray action, and // notify ash on the action handler's state changes. A tray action is one of // predefined actions (currently only the "new note on lock screen" action is @@ -47,5 +108,8 @@ interface TrayAction { // Used by ash to request Chrome to handle an action. interface TrayActionClient { // Requests a lock screen note action to be handled. - RequestNewLockScreenNote(); + RequestNewLockScreenNote(LockScreenNoteOrigin origin); + + // Closes lock screen note. + CloseLockScreenNote(CloseLockScreenNoteReason reason); }; diff --git a/chromium/ash/public/interfaces/user_info.mojom b/chromium/ash/public/interfaces/user_info.mojom index 5a86856132b..7c524e3bf94 100644 --- a/chromium/ash/public/interfaces/user_info.mojom +++ b/chromium/ash/public/interfaces/user_info.mojom @@ -44,6 +44,10 @@ struct UserInfo { string display_name; string display_email; gfx.mojom.ImageSkia avatar; + // The raw bytes for the avatar. Useful if the avatar is animated. + // TODO(crbug.com/770373): Use a shared buffer (mojo.Blob), as this may be + // large enough to congest IPC. + array<uint8> avatar_bytes; // 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/window_pin_type.mojom b/chromium/ash/public/interfaces/window_pin_type.mojom index 15e2dcef332..d5b10bee7c5 100644 --- a/chromium/ash/public/interfaces/window_pin_type.mojom +++ b/chromium/ash/public/interfaces/window_pin_type.mojom @@ -16,5 +16,5 @@ enum WindowPinType { TRUSTED_PINNED, }; -// The window's pin type. Maps to ash::aura::kWindowPinTypeKey. +// The window's pin type. Maps to ash::kWindowPinTypeKey. const string kWindowPinType_Property = "ash:window-pin-type"; diff --git a/chromium/ash/public/interfaces/window_state_type.mojom b/chromium/ash/public/interfaces/window_state_type.mojom new file mode 100644 index 00000000000..c41a84a15cc --- /dev/null +++ b/chromium/ash/public/interfaces/window_state_type.mojom @@ -0,0 +1,38 @@ +// 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; + +// A superset of ui.mojom.ShowState. Ash has more states than the general +// ui::ShowState enum. These need to be communicated back to chrome. +// The separate enum is defined here because we don't want to leak +// these type to ui/base until they're stable and we know for sure +// that they'll persist over time. +enum WindowStateType { + // States which correspond to ui.mojom.ShowState. + DEFAULT, + NORMAL, + MINIMIZED, + MAXIMIZED, + INACTIVE, + FULLSCREEN, + + // Additional ash states. + LEFT_SNAPPED, + RIGHT_SNAPPED, + + // A window is in this state when it is automatically placed and + // sized by the window manager. (it's newly opened, or pushed to the side + // due to new window, for example). + AUTO_POSITIONED, + + // A window is pinned on top of other windows with fullscreenized. + // Corresponding shelf should be hidden, also most of windows other than the + // pinned one should be hidden. + PINNED, + TRUSTED_PINNED, +}; + +// The window's extended state. Maps to ash::aura::kWindowStateTypeKey. +const string kWindowStateType_Property = "ash:window-state-type"; diff --git a/chromium/ash/resources/vector_icons/BUILD.gn b/chromium/ash/resources/vector_icons/BUILD.gn index 053dfcbcc65..53af1f94ca9 100644 --- a/chromium/ash/resources/vector_icons/BUILD.gn +++ b/chromium/ash/resources/vector_icons/BUILD.gn @@ -20,6 +20,8 @@ aggregate_vector_icons("ash_vector_icons") { "ime_menu_on_screen_keyboard.icon", "ime_menu_write.1x.icon", "ime_menu_write.icon", + "lock_screen_alert.1x.icon", + "lock_screen_alert.icon", "lock_screen_arrow.1x.icon", "lock_screen_arrow.icon", "lock_screen_backspace.1x.icon", @@ -60,29 +62,36 @@ aggregate_vector_icons("ash_vector_icons") { "network_badge_vpn.icon", "network_ethernet.1x.icon", "network_ethernet.icon", + "network_mobile_not_connected_x.1x.icon", + "network_mobile_not_connected_x.icon", "network_vpn.1x.icon", "network_vpn.icon", - "notification_accessibility.1x.icon", "notification_accessibility.icon", "notification_accessibility_braille.icon", "notification_battery_critical.icon", "notification_battery_fluctuating.icon", "notification_battery_low.icon", - "notification_bluetooth_battery_warning.1x.icon", "notification_bluetooth_battery_warning.icon", "notification_bluetooth.icon", - "notification_capslock.1x.icon", "notification_capslock.icon", - "notification_chromevox.1x.icon", + "notification_center_all_done.icon", + "notification_center_clear_all.icon", + "notification_center_do_not_disturb_off.icon", + "notification_center_do_not_disturb_on.icon", + "notification_center_settings.icon", + "notification_charging_usb_c.icon", "notification_chromevox.icon", "notification_display_error.icon", "notification_feedback_button.1x.icon", "notification_feedback_button.icon", "notification_low_power_battery.icon", + "notification_monitor_warning.icon", "notification_screen.icon", + "notification_screenshare.icon", "notification_settings.icon", - "notification_stylus_battery_warning.1x.icon", + "notification_sms_sync.icon", "notification_stylus_battery_warning.icon", + "notification_supervised.icon", "notification_timer.icon", "palette_action_capture_region.1x.icon", "palette_action_capture_region.icon", @@ -108,6 +117,8 @@ aggregate_vector_icons("ash_vector_icons") { "palette_tray_icon_metalayer.icon", "shelf_back.1x.icon", "shelf_back.icon", + "shelf_cancel_button.1x.icon", + "shelf_cancel_button.icon", "shelf_keyboard.1x.icon", "shelf_keyboard.icon", "shelf_logout.1x.icon", @@ -118,6 +129,13 @@ aggregate_vector_icons("ash_vector_icons") { "shelf_overflow.icon", "shelf_overview.1x.icon", "shelf_overview.icon", + "shelf_shutdown_button.1x.icon", + "shelf_shutdown_button.icon", + "shelf_sign_out_button.1x.icon", + "shelf_sign_out_button.icon", + "shelf_unlock_button.1x.icon", + "shelf_unlock_button.icon", + "splitview_nosnap_warning.icon", "system_menu_accessibility.1x.icon", "system_menu_accessibility.icon", "system_menu_accessibility_auto_click.1x.icon", diff --git a/chromium/ash/wayland/BUILD.gn b/chromium/ash/wayland/BUILD.gn new file mode 100644 index 00000000000..2eba8065306 --- /dev/null +++ b/chromium/ash/wayland/BUILD.gn @@ -0,0 +1,20 @@ +# 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. + +assert(is_chromeos) + +source_set("wayland") { + sources = [ + "wayland_server_controller.cc", + "wayland_server_controller.h", + ] + + deps = [ + "//ash/public/cpp:ash_public_cpp", + "//base", + "//components/exo", + "//components/exo/wayland", + "//skia", + ] +} |