Reset when playback state is NONE, and refactoring

If a notification is cleared it won't always send an update first and
call onSessionDestroyed. NotificationMediaManager already checks if the
current media notification is being removed and sends an event, so we
can listen for that.

This fixes the bug with cast notifications. It can also be tested by
playing media, pausing, and then clearing all notifications - the
controls will now switch to the resumption state.

Also refactored to put common code for QQS and QS players in a single
class, and removed the long-press menu in QSMediaPlayer (which was just for
testing)

Fixes: 150437753
Fixes: 150742919
Bug: 150854549
Test: manual; atest com.android.systemui.qs com.android.systemui.statusbar.notification
Change-Id: I0ecada16967a6d21b82dc86d05544cf78027bcd9
7 files changed