Add ability to pause activity configuration/effect client dispatch

This enables flows which can make changes on WMCore side
without notifying the client process until a later time. Usage
is basically: pauseConfigurationDispatch(); do stuff; later:
resumeConfigurationDispatch(); During "do stuff" WMCore will
already have the updated configuration but the client won't
know about it yet and can continue running as-if nothing
happened.

The primary use-case for this is PIP where we want to change it's
type/size but allow the client to continue drawing it's fullscreen
config until the transition animation completes.

Bug: 202201326
Bug: 290992727
Test: atest ActivityRecordTests#testPauseConfigDispatch
Change-Id: I923cc8c42ebf21b04af2376fd3383b75cb5fb996
5 files changed