Loading services/core/java/com/android/server/wm/BLASTSyncEngine.java +6 −1 Original line number Diff line number Diff line Loading @@ -226,6 +226,9 @@ class BLASTSyncEngine { } private void setReady(boolean ready) { if (mReady == ready) { return; } ProtoLog.v(WM_DEBUG_SYNC_ENGINE, "SyncGroup %d: Set ready", mSyncId); mReady = ready; if (!ready) return; Loading @@ -239,8 +242,10 @@ class BLASTSyncEngine { ProtoLog.v(WM_DEBUG_SYNC_ENGINE, "SyncGroup %d: Adding to group: %s", mSyncId, wc); wc.setSyncGroup(this); wc.prepareSync(); if (mReady) { mWm.mWindowPlacerLocked.requestTraversal(); } } void onCancelSync(WindowContainer wc) { mRootMembers.remove(wc); Loading services/tests/wmtests/src/com/android/server/wm/SyncEngineTests.java +9 −9 Original line number Diff line number Diff line Loading @@ -74,15 +74,15 @@ public class SyncEngineTests extends WindowTestsBase { int id = startSyncSet(bse, listener); bse.addToSyncSet(id, mockWC); // Make sure a traversal is requested verify(mWm.mWindowPlacerLocked, times(1)).requestTraversal(); // The traversal is not requested because ready is not set. verify(mWm.mWindowPlacerLocked, times(0)).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(0)).onTransactionReady(anyInt(), any()); bse.setReady(id); // Make sure a traversal is requested verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); verify(mWm.mWindowPlacerLocked).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(1)).onTransactionReady(eq(id), notNull()); Loading @@ -103,14 +103,14 @@ public class SyncEngineTests extends WindowTestsBase { int id = startSyncSet(bse, listener); bse.addToSyncSet(id, mockWC); bse.setReady(id); // Make sure traversals requested (one for add and another for setReady) verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); // Make sure traversals requested. verify(mWm.mWindowPlacerLocked).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(0)).onTransactionReady(anyInt(), any()); mockWC.onSyncFinishedDrawing(); // Make sure a (third) traversal is requested. verify(mWm.mWindowPlacerLocked, times(3)).requestTraversal(); // Make sure the second traversal is requested. verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(1)).onTransactionReady(eq(id), notNull()); } Loading @@ -127,8 +127,8 @@ public class SyncEngineTests extends WindowTestsBase { int id = startSyncSet(bse, listener); bse.addToSyncSet(id, mockWC); bse.setReady(id); // Make sure traversals requested (one for add and another for setReady) verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); // Make sure traversals requested. verify(mWm.mWindowPlacerLocked).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(0)).onTransactionReady(anyInt(), any()); Loading Loading
services/core/java/com/android/server/wm/BLASTSyncEngine.java +6 −1 Original line number Diff line number Diff line Loading @@ -226,6 +226,9 @@ class BLASTSyncEngine { } private void setReady(boolean ready) { if (mReady == ready) { return; } ProtoLog.v(WM_DEBUG_SYNC_ENGINE, "SyncGroup %d: Set ready", mSyncId); mReady = ready; if (!ready) return; Loading @@ -239,8 +242,10 @@ class BLASTSyncEngine { ProtoLog.v(WM_DEBUG_SYNC_ENGINE, "SyncGroup %d: Adding to group: %s", mSyncId, wc); wc.setSyncGroup(this); wc.prepareSync(); if (mReady) { mWm.mWindowPlacerLocked.requestTraversal(); } } void onCancelSync(WindowContainer wc) { mRootMembers.remove(wc); Loading
services/tests/wmtests/src/com/android/server/wm/SyncEngineTests.java +9 −9 Original line number Diff line number Diff line Loading @@ -74,15 +74,15 @@ public class SyncEngineTests extends WindowTestsBase { int id = startSyncSet(bse, listener); bse.addToSyncSet(id, mockWC); // Make sure a traversal is requested verify(mWm.mWindowPlacerLocked, times(1)).requestTraversal(); // The traversal is not requested because ready is not set. verify(mWm.mWindowPlacerLocked, times(0)).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(0)).onTransactionReady(anyInt(), any()); bse.setReady(id); // Make sure a traversal is requested verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); verify(mWm.mWindowPlacerLocked).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(1)).onTransactionReady(eq(id), notNull()); Loading @@ -103,14 +103,14 @@ public class SyncEngineTests extends WindowTestsBase { int id = startSyncSet(bse, listener); bse.addToSyncSet(id, mockWC); bse.setReady(id); // Make sure traversals requested (one for add and another for setReady) verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); // Make sure traversals requested. verify(mWm.mWindowPlacerLocked).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(0)).onTransactionReady(anyInt(), any()); mockWC.onSyncFinishedDrawing(); // Make sure a (third) traversal is requested. verify(mWm.mWindowPlacerLocked, times(3)).requestTraversal(); // Make sure the second traversal is requested. verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(1)).onTransactionReady(eq(id), notNull()); } Loading @@ -127,8 +127,8 @@ public class SyncEngineTests extends WindowTestsBase { int id = startSyncSet(bse, listener); bse.addToSyncSet(id, mockWC); bse.setReady(id); // Make sure traversals requested (one for add and another for setReady) verify(mWm.mWindowPlacerLocked, times(2)).requestTraversal(); // Make sure traversals requested. verify(mWm.mWindowPlacerLocked).requestTraversal(); bse.onSurfacePlacement(); verify(listener, times(0)).onTransactionReady(anyInt(), any()); Loading