Fix some issues with applySyncTransaction

1. Sometimes there are windows that don't need to be re-drawn when
there's a config change. In those cases, system server will still wait
on those clients to notify that it's completed drawing. Therefore, we
force clients to report draw when blast sync is enabled, meaning the
server is waiting for all clients to draw.

2. If a window is removed during a syncTransaction, the server will
continue waiting but the client will never report back. Therefore, call
finishDrawing when a window is removed

3. Ensure performSurfacePlacement is called when there has been a config
change as a result of applyTransaction

Test: Tested with DisplayAreaOrganizer and syncTransaction
Bug: 152114574
Change-Id: Ib725e6ae1da4e37184c34759baea2fe8e0d5c02a
2 files changed