Create and attach additional Transition types to enter/exit transitions
This is so that different Enter/Exit logging reasons can be differentiated by the DestopModeLoggerTransitionObserver.
Create a TransitionSource enum which is shared with Launcher. Methods read TransitionSource passed to them and decide on which transitionType to choose when starting transitions.
**CUJ -> TransitionType -> Enter/ExitReason**
**Earlier**
Enter: Handle button -> MOVE_TO_DESKTOP -> APP_HANDLE_MENU_BUTTON
Enter: App icon(overview) -> MOVE_TO_DESKTOP -> APP_HANDLE_MENU_BUTTON
Enter: Keyboard shortcut -> MOVE_TO_DESKTOP -> APP_HANDLE_MENU_BUTTON
Exit: Drag to exit -> EXIT -> DRAG_TO_EXIT
Exit: Handle button -> EXIT -> DRAG_TO_EXIT
Exit: Keyboard shortcut -> EXIT -> DRAG_TO_EXIT
**Now**
Enter: Handle button -> APP_HANDLE_MENU_BUTTON -> APP_HANDLE_MENU_BUTTON
Enter: App icon(overview) ->APP_ICON_FROM_OVERVIEW->UNKOWN (fix later)
Enter: Keyboard shortcut -> KEYBOARD_SHORTCUT -> KEYBOARD_SHORTCUT
Enter: Adb Commands -> ADB_COMMANDS -> UNKNOWN (debugging CUJ only)
Exit: Drag to exit -> EXIT -> DRAG_TO_EXIT
Exit: Handle button -> APP_HANDLE_MENU_BUTTON-> APP_HANDLE_MENU_BUTTON
Exit: Keyboard shortcut -> KEYBOARD_SHORTCUT -> KEYBOARD_SHORTCUT
Flag: EXEMPT not a major feature/ user visible change
Test: Updated unit tests
Bug: b/326231756
Change-Id: I9cce7abe62106cd6b11a4f353c288214ea5ee1e7
18 files changed