canBubble only true when it can actually bubble

If the notif is unable to present as a bubble:
  - set the record#canBubble value to false
  - null out bubble metadata if present (we show bubble
    button if there is metadata, so shouldn't show it
    if it can't present for some reason)

Because bubble metadata is now null'd out we don't have
the shortcutId to check / update the tracked shortcut
list, so instead if it's null check for that entry in
the list and remove it. Also fixes one spot where we
weren't unregistering the listener before and adds a
test for it.

Test: atest ShortcutHelperTest BubbleExtractorTest NotificationManagerServiceTest
Bug: 152883583
Change-Id: I29e993c01a8fb9fcdf2386b18a94adc712fe101f
5 files changed