Fix issue with floating media bar after permissions request (#1134)
This commit is contained in:
parent
5135daad2c
commit
f1b9f7e9fe
1 changed files with 22 additions and 9 deletions
|
@ -818,17 +818,30 @@ public final class ComposeActivity
|
|||
}
|
||||
|
||||
private void onMediaPick() {
|
||||
addMediaBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
|
||||
|
||||
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)
|
||||
addMediaBehavior.setBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() {
|
||||
@Override
|
||||
public void onStateChanged(@NonNull View bottomSheet, int newState) {
|
||||
//Wait until bottom sheet is not collapsed and show next screen after
|
||||
if (newState==BottomSheetBehavior.STATE_COLLAPSED){
|
||||
addMediaBehavior.setBottomSheetCallback(null);
|
||||
if (ContextCompat.checkSelfPermission(ComposeActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE)
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
ActivityCompat.requestPermissions(this,
|
||||
ActivityCompat.requestPermissions(ComposeActivity.this,
|
||||
new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
|
||||
PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE);
|
||||
} else {
|
||||
initiateMediaPicking();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSlide(@NonNull View bottomSheet, float slideOffset) {
|
||||
|
||||
}
|
||||
});
|
||||
addMediaBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onVisibilityChanged(@NonNull Status.Visibility visibility) {
|
||||
|
|
Loading…
Reference in a new issue