Merge "Close panel when media stop" into rvc-dev am: 91ad46fa60

Change-Id: I0015e42b8a6e1bf4fd0c96807e2465a12af84df9
This commit is contained in:
tim peng
2020-03-19 06:26:54 +00:00
committed by Automerger Merge Worker
5 changed files with 59 additions and 3 deletions

View File

@@ -33,6 +33,7 @@ import android.graphics.drawable.Drawable;
import android.media.MediaMetadata;
import android.media.session.MediaController;
import android.media.session.MediaSessionManager;
import android.media.session.PlaybackState;
import android.net.Uri;
import android.text.TextUtils;
import android.util.Log;
@@ -66,12 +67,11 @@ public class MediaOutputPanel implements PanelContent, LocalMediaManager.DeviceC
private final Context mContext;
private final String mPackageName;
private PanelContentCallback mCallback;
private boolean mIsCustomizedButtonUsed = true;
@VisibleForTesting
LocalMediaManager mLocalMediaManager;
private PanelContentCallback mCallback;
private boolean mIsCustomizedButtonUsed = true;
private MediaSessionManager mMediaSessionManager;
private MediaController mMediaController;
@@ -255,5 +255,12 @@ public class MediaOutputPanel implements PanelContent, LocalMediaManager.DeviceC
mCallback.onHeaderChanged();
}
}
@Override
public void onPlaybackStateChanged(PlaybackState state) {
if (mCallback != null && state.getState() != PlaybackState.STATE_PLAYING) {
mCallback.forceClose();
}
}
};
}

View File

@@ -32,4 +32,9 @@ public interface PanelContentCallback {
* a group
*/
void onHeaderChanged();
/**
* It will be called when panel requests to close itself.
*/
void forceClose();
}

View File

@@ -439,5 +439,16 @@ public class PanelFragment extends Fragment {
mHeaderSubtitle.setText(mPanel.getSubTitle());
});
}
@Override
public void forceClose() {
mPanelClosedKey = PanelClosedKeys.KEY_OTHERS;
getFragmentActivity().finish();
}
@VisibleForTesting
FragmentActivity getFragmentActivity() {
return getActivity();
}
}
}