OSDN Git Service

vrwm: Fix controller input/rendering mismatch
authorAlbert Chaulk <achaulk@google.com>
Wed, 29 Mar 2017 15:27:58 +0000 (11:27 -0400)
committerAlex Sakhartchouk <alexst@google.com>
Wed, 29 Mar 2017 20:34:53 +0000 (20:34 +0000)
commit0c9dc725d949f8c931eed5dbe6a797f8529732b1
treec4d0e385ce275ca82f214233392e5ce88235fa9a
parent92e9112fb47cf849e27d0741d94287c7a4d4f1f6
vrwm: Fix controller input/rendering mismatch

This works for portrait mode only for now. Landscape phones present
some weird buffer sizes (1080x1080) that get scaled incorrectly for
input

This also removes all of our older hacks, such as swapping
width/height in SurfaceFlingerView and the swap + invert of touch
input. A global 90 degree rotation is applied to present the portrait
buffers in the correct orientation

vr_wm_ctl has a command to stack another rotation on top of the
existing ones in order to facilitate development for now. Apps will
likely show up rotated, "vr_wm_ctl rotate 1" will fix it, or -1 if
it needs to be rotated the other way.

Bug: None
Test: Manual with permissions and calculator

Change-Id: Ifd31b444b944fbf3085613349caae37e817538f6
(cherry picked from commit eb49c451cbc5de7bbe5ba440dc8e43291daa6d4e)
services/vr/vr_window_manager/aidl/android/service/vr/IVrWindowManager.aidl
services/vr/vr_window_manager/display_view.cpp
services/vr/vr_window_manager/display_view.h
services/vr/vr_window_manager/shell_view.cpp
services/vr/vr_window_manager/shell_view.h
services/vr/vr_window_manager/shell_view_binder_interface.h
services/vr/vr_window_manager/surface_flinger_view.cpp
services/vr/vr_window_manager/vr_window_manager_binder.cpp
services/vr/vr_window_manager/vr_window_manager_binder.h
services/vr/vr_window_manager/vr_wm_ctl.cpp