Fix issue with floating media bar after permissions request (#1134)

This commit is contained in:
pandasoft0 2019-03-20 21:26:39 +03:00 committed by Konrad Pozniak
parent 5135daad2c
commit f1b9f7e9fe

View file

@ -818,16 +818,29 @@ public final class ComposeActivity
} }
private void onMediaPick() { private void onMediaPick() {
addMediaBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED); 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(ComposeActivity.this,
new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE);
} else {
initiateMediaPicking();
}
}
}
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) @Override
!= PackageManager.PERMISSION_GRANTED) { public void onSlide(@NonNull View bottomSheet, float slideOffset) {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, }
PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE); });
} else { addMediaBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
initiateMediaPicking();
}
} }
@Override @Override