Synchronize surface transaction

Until now the SurfaceControl transaction was being applied
asynchronously, which could lead to it being executed out of sync with
launcher drawing.
This became an issue at higher refresh rates, where frames are produced
at a much faster pace.

In order to fix this issue, we can use BLAST transactions, which are
annotated with a frame number.

Test: record video, go through it manually
Fixes: 194320152
Change-Id: I1636a1ded4f9dd84c54ba12239e3549b92ed7567
Merged-In: I1636a1ded4f9dd84c54ba12239e3549b92ed7567
(cherry picked from commit 0a2076e8d37cdc33ebfa0c3654ba433707d2db10)
1 file changed