Don't post finishDrawing call on client UI thread.

If the finishDrawing call is posted on the client UI thread, there's a
chance that the client is already on the UI thread and starting to draw
again. This could lead to a deadlock because the UI thread is waiting
for a free buffer to unblock RT, but the buffer is stuck waiting to be
sent to WMS to get applied.

There's really no reason the call into WMS#finishDrawing needs to be
done on the UI thread and is actually more efficient if it's NOT done on
the UI thread because there's nothing we need to wait on. This means WMS
can apply the transactions even earlier, which may improve performance.

Test: 3-button on device with TaskBar
Fixes: 263340863
Change-Id: Icc7b54405496ed54ebe4f4a82946c9da21848002
2 files changed