Loading core/java/android/window/TransitionInfo.java +3 −0 Original line number Diff line number Diff line Loading @@ -542,6 +542,9 @@ public final class TransitionInfo implements Parcelable { // independent either. if (change.getMode() == TRANSIT_CHANGE) return false; // Always fold the activity embedding change into the parent change. if (change.hasFlags(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY)) return false; TransitionInfo.Change parentChg = info.getChange(change.getParent()); while (parentChg != null) { // If the parent is a visibility change, it will include the results of all child Loading libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java +5 −0 Original line number Diff line number Diff line Loading @@ -496,6 +496,7 @@ public class Transitions implements RemoteCallable<Transitions>, if (mode == TRANSIT_TO_FRONT) { // When the window is moved to front, make sure the crop is updated to prevent it // from using the old crop. t.setPosition(leash, change.getEndRelOffset().x, change.getEndRelOffset().y); t.setWindowCrop(leash, change.getEndAbsBounds().width(), change.getEndAbsBounds().height()); } Loading @@ -507,6 +508,10 @@ public class Transitions implements RemoteCallable<Transitions>, t.setMatrix(leash, 1, 0, 0, 1); t.setAlpha(leash, 1.f); t.setPosition(leash, change.getEndRelOffset().x, change.getEndRelOffset().y); t.setWindowCrop(leash, change.getEndAbsBounds().width(), change.getEndAbsBounds().height()); } else { t.hide(leash); } continue; } Loading services/core/java/com/android/server/wm/Transition.java +9 −1 Original line number Diff line number Diff line Loading @@ -2468,7 +2468,15 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { for (WindowContainer<?> p = getAnimatableParent(wc); p != null; p = getAnimatableParent(p)) { final ChangeInfo parentChange = changes.get(p); if (parentChange == null || !parentChange.hasChanged()) break; if (parentChange == null) { break; } if (!parentChange.hasChanged()) { // In case the target is collected after the parent has been changed, it could // be too late to snapshot the parent change. Skip to see if there is any // parent window further up to be considered as change parent. continue; } if (p.mRemoteToken == null) { // Intermediate parents must be those that has window to be managed by Shell. continue; Loading Loading
core/java/android/window/TransitionInfo.java +3 −0 Original line number Diff line number Diff line Loading @@ -542,6 +542,9 @@ public final class TransitionInfo implements Parcelable { // independent either. if (change.getMode() == TRANSIT_CHANGE) return false; // Always fold the activity embedding change into the parent change. if (change.hasFlags(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY)) return false; TransitionInfo.Change parentChg = info.getChange(change.getParent()); while (parentChg != null) { // If the parent is a visibility change, it will include the results of all child Loading
libs/WindowManager/Shell/src/com/android/wm/shell/transition/Transitions.java +5 −0 Original line number Diff line number Diff line Loading @@ -496,6 +496,7 @@ public class Transitions implements RemoteCallable<Transitions>, if (mode == TRANSIT_TO_FRONT) { // When the window is moved to front, make sure the crop is updated to prevent it // from using the old crop. t.setPosition(leash, change.getEndRelOffset().x, change.getEndRelOffset().y); t.setWindowCrop(leash, change.getEndAbsBounds().width(), change.getEndAbsBounds().height()); } Loading @@ -507,6 +508,10 @@ public class Transitions implements RemoteCallable<Transitions>, t.setMatrix(leash, 1, 0, 0, 1); t.setAlpha(leash, 1.f); t.setPosition(leash, change.getEndRelOffset().x, change.getEndRelOffset().y); t.setWindowCrop(leash, change.getEndAbsBounds().width(), change.getEndAbsBounds().height()); } else { t.hide(leash); } continue; } Loading
services/core/java/com/android/server/wm/Transition.java +9 −1 Original line number Diff line number Diff line Loading @@ -2468,7 +2468,15 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { for (WindowContainer<?> p = getAnimatableParent(wc); p != null; p = getAnimatableParent(p)) { final ChangeInfo parentChange = changes.get(p); if (parentChange == null || !parentChange.hasChanged()) break; if (parentChange == null) { break; } if (!parentChange.hasChanged()) { // In case the target is collected after the parent has been changed, it could // be too late to snapshot the parent change. Skip to see if there is any // parent window further up to be considered as change parent. continue; } if (p.mRemoteToken == null) { // Intermediate parents must be those that has window to be managed by Shell. continue; Loading