Skip to content

Commit 36e79cc

Browse files
Merge pull request #34 from mkurutin/pull_request
Fix file list initialization when permissions are granted in API23
2 parents c7e9958 + 213ea56 commit 36e79cc

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

FPlib/src/main/java/com/devpaul/filepickerlibrary/FilePickerActivity.java

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@
4141
import android.widget.ListView;
4242
import android.widget.RelativeLayout;
4343
import android.widget.TextView;
44-
4544
import com.afollestad.materialdialogs.MaterialDialog;
4645
import com.devpaul.filepickerlibrary.adapter.FileListAdapter;
4746
import com.devpaul.filepickerlibrary.enums.FileScopeType;
@@ -343,11 +342,11 @@ public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCoun
343342
setHeaderBackground(colorId, drawableId);
344343

345344
//check for proper permissions.
346-
if(Build.VERSION.SDK_INT == Build.VERSION_CODES.M) {
345+
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.M) {
347346
int permissionCheck = ContextCompat.checkSelfPermission(this,
348347
Manifest.permission.READ_EXTERNAL_STORAGE);
349-
if(permissionCheck != PackageManager.PERMISSION_GRANTED) {
350-
if(ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_EXTERNAL_STORAGE)) {
348+
if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
349+
if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_EXTERNAL_STORAGE)) {
351350
//Show permission rationale.
352351
new MaterialDialog.Builder(FilePickerActivity.this)
353352
.title(R.string.file_picker_permission_rationale_dialog_title)
@@ -370,13 +369,14 @@ public void onNegative(MaterialDialog dialog) {
370369
}
371370
})
372371
.show();
373-
}
374-
else {
372+
} else {
375373
ActivityCompat.requestPermissions(this,
376374
new String[]{Manifest.permission.READ_EXTERNAL_STORAGE,
377375
Manifest.permission.WRITE_EXTERNAL_STORAGE},
378376
REQUEST_FOR_READ_EXTERNAL_STORAGE);
379377
}
378+
} else {
379+
init();
380380
}
381381
} else {
382382
init();
@@ -405,12 +405,11 @@ public void onRequestPermissionsResult(int requestCode, String[] permissions, in
405405

406406
switch (requestCode) {
407407
case REQUEST_FOR_READ_EXTERNAL_STORAGE:
408-
if(grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED &&
408+
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED &&
409409
grantResults[1] == PackageManager.PERMISSION_GRANTED) {
410410
//permission granted.
411411
init();
412-
}
413-
else {
412+
} else {
414413
setResult(RESULT_CANCELED);
415414
finish();
416415
}
@@ -422,7 +421,7 @@ public void onRequestPermissionsResult(int requestCode, String[] permissions, in
422421
@Override
423422
public void onBackPressed() {
424423
if (lastDirectory != null && !curDirectory.getPath()
425-
.equals(Environment.getExternalStorageDirectory().getPath())) {
424+
.equals(Environment.getExternalStorageDirectory().getPath())) {
426425
new UpdateFilesTask(FilePickerActivity.this).execute(lastDirectory);
427426
} else {
428427
setResult(RESULT_CANCELED);
@@ -721,7 +720,7 @@ protected void onPostExecute(File[] localFiles) {
721720
}
722721
lastDirectory = directory.getParentFile();
723722
curDirectory = directory;
724-
if(directory.listFiles() != null) {
723+
if (directory.listFiles() != null) {
725724
if (directory.listFiles().length > 0 && directoryExists(files)
726725
&& listView.getHeaderViewsCount() == 0) {
727726
listView.addHeaderView(listHeaderView);
@@ -731,7 +730,7 @@ protected void onPostExecute(File[] localFiles) {
731730
}
732731
}
733732
}
734-
if(files != null) {
733+
if (files != null) {
735734
adapter = new FileListAdapter(FilePickerActivity.this, files, scopeType);
736735
FilePickerActivity.this.setListAdapter(adapter);
737736
}

0 commit comments

Comments
 (0)