Handle the event of first bubble added.

When the first bubble is added we set the visibility of the bubble bar
to VISIBLE if the stash controller is unstashed. The issue is that once
bubbles are gone we no longer update the stash state in the controller,
so it becomes stale and can't be used when the first bubble is added.

This change introduces a new method for handling the transition from
the state where both bar and handle are invisible into the state where
one of them becomes visible. We can't use the existing stashBubbleBar
and showBubbleBar methods because those transition from one to the other.
Using them when both are invisible results in one of them becoming visible
and then invisible again.

Fixes: 290992144
Fixes: 291074646

Test: Manual:
       - Add bubble in the test app by double-tapping on a chat (non expanding notification)
       - Observe that the handle becomes visible and the bar is invisible
       - Dismiss bubble
       - Add bubble in the test app by tapping on the button on the right (auto expanding)
       - Observe that the bar becomes visible and expanded
Change-Id: I61334c67c255a6ed074fa8c834f4a5a1547539bf
4 files changed