Update error handling logic

1. Case 1)  playback state error +  empty browse tree
Previously: non-fatal error -> show error dialog
Now: fatal error -> show error fragment
Benefits:  some errors, like sign-in error, will not be dismissed.
Case 2) not sign in, welcome song + empty browse tree + playback
state normal
The behavior stays the same because no error occurs.

2. If PlaybackStateWrapper update triggers handlePlaybackState(),
and playback state is the same, don't update error handling UI.
This is to avoid duplicate(or maybe wrong) UI change.

3. Cancel ongoing toast and dialog when receving playback state
change.

Fixes: 138390406
Fixes: 137975262
Fixes: 139089797
Fixes: 135886727
Test: manual
Change-Id: I89bdc3d52548ceb3777e97dacf28d96131b6aae9
1 file changed
tree: ccab89b0fc3e2b5524a5ff59367c701eab5e1667
  1. res/
  2. src/
  3. Android.mk
  4. AndroidManifest.xml