Implement cursor changing on Mushrome

Desktop / Chromium - erg [chromium.org] - 21 June 2017 15:41 EDT

This splits AshNativeCursorManager into an interface and creates two implementations: one for classic ash (the original code), and one for mushrome. The new mushrome implementation forwards to the mus window manager interface instead of the individual windows due to how mus gets cursors only from windows which have event handlers.

This leaves some features unimplemented, such as cursor sets, but implements the core interface.

BUG=729798,734807,734809

Review-Url: https://codereview.chromium.org/2932563002 Cr-Commit-Position: refs/heads/master@{#481278}

36cfb95 Implement cursor changing on Mushrome.
ash/BUILD.gn | 9 +-
ash/display/mirror_window_controller.cc | 21 ++-
ash/shell.cc | 18 +-
ash/shell.h | 4 +-
ash/test/cursor_manager_test_api.cc | 10 +-
ash/test/shell_test_api.cc | 2 +-
ash/test/shell_test_api.h | 4 +-
ash/wm/native_cursor_manager_ash.h | 42 +++++
...ger.cc => native_cursor_manager_ash_classic.cc} | 28 ++-
...nager.h => native_cursor_manager_ash_classic.h} | 38 ++--
...ative_cursor_manager_ash_interactive_uitest.cc} | 7 +-
ash/wm/native_cursor_manager_ash_mus.cc | 202 +++++++++++++++++++++
ash/wm/native_cursor_manager_ash_mus.h | 67 +++++++
...st.cc => native_cursor_manager_ash_unittest.cc} | 18 +-
chrome/test/BUILD.gn | 2 +-
.../shell/browser/shell_desktop_controller_aura.cc | 2 +-
testing/buildbot/filters/ash_unittests_mash.filter | 12 +-
testing/buildbot/filters/ash_unittests_mus.filter | 51 +-----
.../desktop_aura/desktop_native_cursor_manager.h | 2 +-
19 files changed, 409 insertions(+), 130 deletions(-)

Upstream: git.chromium.org


  • Share