)]}'
{
  "commit": "1e0c4b277f7fb2d672bee3aba4c72fd0dde6af1d",
  "tree": "29f90ce6f9160bceae19fbc10734ffec4d16aa98",
  "parents": [
    "da7ced5ce08b4fa481629305f7923aaa2c48a9d7"
  ],
  "author": {
    "name": "Robin Lee",
    "email": "rgl@google.com",
    "time": "Thu Jun 01 19:18:08 2023 +0200"
  },
  "committer": {
    "name": "Android Build Coastguard Worker",
    "email": "android-build-coastguard-worker@google.com",
    "time": "Fri Jun 02 17:48:53 2023 +0000"
  },
  "message": "Transition flags for Keyguard un/occlude/cancel\n\nFinal keyguard state is computed in KeyguardController and passed\nthrough Transition flags to SystemUI for occlude status as well as\n(previously) visibility during unlock.\n\nThe occlude state cannot be derived only from ChangeInfo items in the\ntransition.\n\nExample 1: b/284096414 where an app launches two activities, one opaque\nand the second translucent. Closing/unoccluding the translucent activity\nleaves the opaque activity on screen. This should not be recorded as an\nunocclude, but all Keyguard sees in the Change diff is an OCCLUDE\nactivity closing and nothing new opening.\n\nExample 2: b/282672298 in which a shared-element return transition from\nPhotos to Camera generates two separate transitions: one for re-opening\nCamera, and a second for closing Photos. Because the final transition\nwas for a closing OCCLUDE activity on its own, all Keyguard could\ninterpret this as was a request to unocclude the keyguard and play the\nreturn-to-keyguard animation.\n\nThese cases are fixed by the final state being sent after the transition,\nbut the intermediate animation was wrong and showed the lock screen\nviews for a few hundred milliseconds.\n\nWe also introduce one more flag in opposition to KEYGUARD_GOING_AWAY,\nwhich is the flag KEYGUARD_APPEARING. This is used to wrap up\nswipe-to-unlock interactions which end with the device locked, since\nswipe-to-unlock optimistically generates a full transition for the\nunlock and to avoid jank we have to merge an inverse transition back in.\n\nBug: 284096414\nBug: 282672298\nFix: 282302169\nFix: 282291585\n(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:ee8da1aefceb470a25bf206f3d732193957f9866)\nMerged-In: Ib2c7acdace63729dd52711e47c8cc481eac45ebe\nChange-Id: Ib2c7acdace63729dd52711e47c8cc481eac45ebe\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e40f8e78dafcfec3a7856deddd9e5953492d6bf5",
      "old_mode": 33188,
      "old_path": "core/java/android/view/WindowManager.java",
      "new_id": "d0562b7b8c0dcd783b65cf82b93acdf992f5e462",
      "new_mode": 33188,
      "new_path": "core/java/android/view/WindowManager.java"
    },
    {
      "type": "modify",
      "old_id": "a92ca8a4d3f26f6c5995000c7379757379b9aabd",
      "old_mode": 33188,
      "old_path": "core/java/android/window/TransitionInfo.java",
      "new_id": "59238b40e0c8eaafcade7571bdb87acdbcec104c",
      "new_mode": 33188,
      "new_path": "core/java/android/window/TransitionInfo.java"
    },
    {
      "type": "modify",
      "old_id": "513638eeb96078810f30b2bff74987922ad6308c",
      "old_mode": 33188,
      "old_path": "libs/WindowManager/Shell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java",
      "new_id": "cef7e166633124dce2d98b6caf1069ca596cd286",
      "new_mode": 33188,
      "new_path": "libs/WindowManager/Shell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java"
    },
    {
      "type": "modify",
      "old_id": "64571e067a83203284bd88191b71607a565d3c7d",
      "old_mode": 33188,
      "old_path": "libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultMixedHandler.java",
      "new_id": "3ec433e55da96f0b84b73bd467753db451ea7fd0",
      "new_mode": 33188,
      "new_path": "libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultMixedHandler.java"
    },
    {
      "type": "modify",
      "old_id": "10db9050caf50117323ca6ee13ca1b44e615b590",
      "old_mode": 33188,
      "old_path": "packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java",
      "new_id": "94227bccfced58f09d86142c666fe935cf87b0e9",
      "new_mode": 33188,
      "new_path": "packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java"
    },
    {
      "type": "modify",
      "old_id": "fe804661914ddc672ac4a003028e421614e958c5",
      "old_mode": 33188,
      "old_path": "packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt",
      "new_id": "28845a3bb52d3da5ecc5e4890a2341fe00ee3420",
      "new_mode": 33188,
      "new_path": "packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt"
    },
    {
      "type": "modify",
      "old_id": "992add63e23ca15902ddf290112dd949a9b00fc2",
      "old_mode": 33188,
      "old_path": "packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java",
      "new_id": "6680a431487e2d883496e1345b62138761ee98e5",
      "new_mode": 33188,
      "new_path": "packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java"
    },
    {
      "type": "modify",
      "old_id": "6aec96988a7726451a51f676b93d87b400d13848",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/wm/DisplayContent.java",
      "new_id": "7fc86b0fdc01614b9f796c22c221069120d21de2",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/wm/DisplayContent.java"
    },
    {
      "type": "modify",
      "old_id": "99878a3d0ffe52845f337ef94cdf38862dad1ca2",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/wm/KeyguardController.java",
      "new_id": "ad9c3b2742673690fb686a7c577bedc524caef26",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/wm/KeyguardController.java"
    },
    {
      "type": "modify",
      "old_id": "b938b9e4ec51e3dfeae2cc3f2039bcebd92cb0cc",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/wm/Transition.java",
      "new_id": "9a5f766989ca8d90b83dfb5cf50ade436affafc8",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/wm/Transition.java"
    },
    {
      "type": "modify",
      "old_id": "1c6a412e5450314462da82450207b55041f73c3e",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/wm/TransitionController.java",
      "new_id": "0cb6f14b38f2ce4ce3547f06720224da72985539",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/wm/TransitionController.java"
    },
    {
      "type": "modify",
      "old_id": "20ce98ca2faee385a1000b6c8c6ed59cf30615ec",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/wm/WallpaperController.java",
      "new_id": "0e928ead2f39ea4cdc0ee6c2c59cf725bb4b00f6",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/wm/WallpaperController.java"
    }
  ]
}
