X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserAndroid.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Factivities%2FImportExportActivity.java;h=ca4703af5243f936774f8ffd68cf2ec7e57a7ab1;hp=bea58d3fe7a7e95542867389ecf2a1fdf5bf490e;hb=5d3cafb4a4fbb2bf851d36f973cc1e8b23ecebab;hpb=c1c9a0bf83ecef671356d554bb6e4927392b1cc8 diff --git a/app/src/main/java/com/stoutner/privacybrowser/activities/ImportExportActivity.java b/app/src/main/java/com/stoutner/privacybrowser/activities/ImportExportActivity.java index bea58d3f..ca4703af 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/activities/ImportExportActivity.java +++ b/app/src/main/java/com/stoutner/privacybrowser/activities/ImportExportActivity.java @@ -25,6 +25,7 @@ import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.media.MediaScannerConnection; +import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.os.Environment; @@ -116,7 +117,7 @@ public class ImportExportActivity extends AppCompatActivity implements StoragePe // Set the content view. setContentView(R.layout.import_export_coordinatorlayout); - // Use the `SupportActionBar` from `android.support.v7.app.ActionBar` until the minimum API is >= 21. + // Set the support action bar. Toolbar toolbar = findViewById(R.id.import_export_toolbar); setSupportActionBar(toolbar); @@ -129,7 +130,7 @@ public class ImportExportActivity extends AppCompatActivity implements StoragePe // Display the home arrow on the support action bar. actionBar.setDisplayHomeAsUpEnabled(true); - // Find out if we are running KitKat + // Find out if the system is running KitKat boolean runningKitKat = (Build.VERSION.SDK_INT == 19); // Find out if OpenKeychain is installed. @@ -518,7 +519,7 @@ public class ImportExportActivity extends AppCompatActivity implements StoragePe // Check if the user has previously denied the storage permission. if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) { // Show a dialog explaining the request first. // Instantiate the storage permission alert dialog. - DialogFragment storagePermissionDialogFragment = new StoragePermissionDialog(); + DialogFragment storagePermissionDialogFragment = StoragePermissionDialog.displayDialog(0); // Show the storage permission alert dialog. The permission will be requested when the dialog is closed. storagePermissionDialogFragment.show(getSupportFragmentManager(), getString(R.string.storage_permission)); @@ -531,7 +532,7 @@ public class ImportExportActivity extends AppCompatActivity implements StoragePe } @Override - public void onCloseStoragePermissionDialog() { + public void onCloseStoragePermissionDialog(int type) { // Request the write external storage permission. The import/export will be run when it finishes. ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE}, 0); } @@ -558,7 +559,10 @@ public class ImportExportActivity extends AppCompatActivity implements StoragePe } @Override - public void onActivityResult(int requestCode, int resultCode, Intent data) { + public void onActivityResult(int requestCode, int resultCode, Intent intent) { + // Run the default commands. + super.onActivityResult(requestCode, resultCode, intent); + switch (requestCode) { case (BROWSE_RESULT_CODE): // Don't do anything if the user pressed back from the file picker. @@ -569,11 +573,17 @@ public class ImportExportActivity extends AppCompatActivity implements StoragePe // Instantiate the file name helper. FileNameHelper fileNameHelper = new FileNameHelper(); - // Convert the file name URI to a file name path. - String fileNamePath = fileNameHelper.convertUriToFileNamePath(data.getData()); + // Get the file path URI from the intent. + Uri filePathUri = intent.getData(); - // Set the file name path as the text of the file name edit text. - fileNameEditText.setText(fileNamePath); + // Use the file path from the intent if it exists. + if (filePathUri != null) { + // Convert the file name URI to a file name path. + String fileNamePath = fileNameHelper.convertUriToFileNamePath(filePathUri); + + // Set the file name path as the text of the file name edit text. + fileNameEditText.setText(fileNamePath); + } } break;