Fix user education placement

We were only showing the user education on click, so
you could drag the bubble then click on it, then the
user education would appear. However, the bubble wouldn't
be in the spot we'd expect due to the initial drag so the
user education would be misplaced.

This change fixes the issue by showing the user education
in the touchlistener onDown(*). Subsequent actions in
that gesture won't do anything. A small issue is that the
clickListener could be triggered in this state and then
immediately hide the education, to work around this I
added a flag to indicate if the education showed from the
touchListener & skip hiding in that case.

(*) Ideally this would occur in a proper down/up action
rather than onDown but there's a lot going on in the
touch handling and I think this is simplest.


Test: manual - (reset device) check that tapping the
               bubble shows the education
             - (reset device) check that dragging the
                bubble shows the education and the bubble
                doesn't move on the drag
             - education shouldn't show more than once
             - bubble should be draggable after the edu
               goes away
Bug: 200151972
Change-Id: I0bdb8d165641b5cad234b3053eb73e0575916102
2 files changed