Call setLauncherKeepClearAreaHeight when Launcher is stopped

Before, we would only call it if Launcher was started, but now we
treat started==false to mean Launcher is not visible. This keeps
us from calling setLauncherKeepClearAreaHeight at an inopportune
time like when starting a gesture (which will be immediately
canceled to handle the PiP transition).

Additionally, instead of checking that LauncherState == NORMAL or
OVERVIEW, check LauncherState#areElementsVisible(HOTSEAT_ICONS)
instead. This is because setLauncherKeepClearAreaHeight uses the
hotseat height, so it doesn't make sense to do it for states when
Hotseat is not visible. Techncially, we could do something similar
for Taskbar in Overview, but doing so cancels the recents animation
including the live tile, which seems less ideal.

Fixes: 425616895
Test: Manual: have a Picture in Picture window, open Desktop mode
from Overview, ensure PiP moves down since Hotseat is no longer
visible, then swipe to home and ensure it moves back up. Swiping
to Overview keeps PiP and Taskbar and live tile in the same state.
Flag: EXEMPT BUGFIX
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:5475eb6681ce592ce2f337e4c377c90c25e89f4f
Merged-In: I30d3a0a2f57db37d76850345f95008b5595ba51d
Change-Id: I30d3a0a2f57db37d76850345f95008b5595ba51d
1 file changed