Let InsetsController control requested visible types

We plan to make the insets source consumer exist only when there is a
corresponding insets source, which means the consumer won't always
exist. This CL makes InsetsController set the requested types on its
own, instead of telling the consumer to do so. Thus, show and hide are
removed from InsetsSourceConsumer. This CL adds onAnimationStateChanged
to the consumer, so that it can apply the requested visibility at the
proper timing.

Bug: 234093736
Test: atest ImeInsetsSourceConsumerTest InsetsAnimationControlImplTest
      InsetsControllerTest InsetsSourceConsumerTest
      WindowInsetsControllerTests CtsInputMethodTestCases
Change-Id: Ib54c75e5fb1188c83074e06abf7af509974af2b1
6 files changed