Fix IME adjust when stack focus changes while IME is visible

- Use two values to animate divider width adjustment separately
  from stack position adjustment. For example IME is visible
  with focus on bottom stack, then user clicks top stack. In this
  case bottom stack position should go back to unadjusted, but
  divider should remain thinner.

- If we need to start a new animation during an existing animation,
  start the motion from where the existing animation left off, so
  that it doesn't look discontinuous.

- Do not adjust if IME is not actually focused on any stack. This
  could happen when swiping down the status bar.

bug: 28175599
Change-Id: I802def5d1c13ebe11094eb28fc5a0b0c309e4d76
3 files changed