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=c1b3891d3fe248fdcbd951ed80b78f0cd0fad494;hp=de4ec4779fb45350bbb5a971260a376fa07acdb8;hb=ab11ca2de00c56982e46627c8e7fc670462b0b3c;hpb=d4f39c36beb5e6c3568a1e075274ad66defd8e8e 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 de4ec477..c1b3891d 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/activities/ImportExportActivity.java +++ b/app/src/main/java/com/stoutner/privacybrowser/activities/ImportExportActivity.java @@ -24,7 +24,6 @@ import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.net.Uri; -import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.preference.PreferenceManager; @@ -47,11 +46,11 @@ import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; import androidx.cardview.widget.CardView; import androidx.core.content.FileProvider; -import androidx.multidex.BuildConfig; import com.google.android.material.snackbar.Snackbar; import com.google.android.material.textfield.TextInputLayout; +import com.stoutner.privacybrowser.BuildConfig; import com.stoutner.privacybrowser.R; import com.stoutner.privacybrowser.helpers.ImportExportDatabaseHelper; @@ -117,8 +116,9 @@ public class ImportExportActivity extends AppCompatActivity { // Get a handle for the shared preferences. SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); - // Get the screenshot preference. - boolean allowScreenshots = sharedPreferences.getBoolean("allow_screenshots", false); + // Get the preferences. + boolean allowScreenshots = sharedPreferences.getBoolean(getString(R.string.allow_screenshots_key), false); + boolean bottomAppBar = sharedPreferences.getBoolean(getString(R.string.bottom_app_bar_key), false); // Disable screenshots if not allowed. if (!allowScreenshots) { @@ -132,10 +132,16 @@ public class ImportExportActivity extends AppCompatActivity { super.onCreate(savedInstanceState); // Set the content view. - setContentView(R.layout.import_export_coordinatorlayout); + if (bottomAppBar) { + setContentView(R.layout.import_export_bottom_appbar); + } else { + setContentView(R.layout.import_export_top_appbar); + } - // Set the support action bar. + // Get a handle for the toolbar. Toolbar toolbar = findViewById(R.id.import_export_toolbar); + + // Set the support action bar. setSupportActionBar(toolbar); // Get a handle for the action bar. @@ -147,9 +153,6 @@ public class ImportExportActivity extends AppCompatActivity { // Display the home arrow on the support action bar. actionBar.setDisplayHomeAsUpEnabled(true); - // Find out if the system is running KitKat - boolean runningKitKat = (Build.VERSION.SDK_INT == 19); - // Find out if OpenKeychain is installed. try { openKeychainInstalled = !getPackageManager().getPackageInfo("org.sufficientlysecure.keychain", 0).versionName.isEmpty(); @@ -161,7 +164,6 @@ public class ImportExportActivity extends AppCompatActivity { encryptionSpinner = findViewById(R.id.encryption_spinner); encryptionPasswordTextInputLayout = findViewById(R.id.encryption_password_textinputlayout); encryptionPasswordEditText = findViewById(R.id.encryption_password_edittext); - kitKatPasswordEncryptionTextView = findViewById(R.id.kitkat_password_encryption_textview); openKeychainRequiredTextView = findViewById(R.id.openkeychain_required_textview); fileLocationCardView = findViewById(R.id.file_location_cardview); importRadioButton = findViewById(R.id.import_radiobutton); @@ -210,37 +212,28 @@ public class ImportExportActivity extends AppCompatActivity { break; case PASSWORD_ENCRYPTION: - if (runningKitKat) { - // Show the KitKat password encryption message. - kitKatPasswordEncryptionTextView.setVisibility(View.VISIBLE); - - // Hide the OpenPGP required text view and the file location card. - openKeychainRequiredTextView.setVisibility(View.GONE); - fileLocationCardView.setVisibility(View.GONE); - } else { - // Hide the OpenPGP layout items. - openKeychainRequiredTextView.setVisibility(View.GONE); - openKeychainImportInstructionsTextView.setVisibility(View.GONE); + // Hide the OpenPGP layout items. + openKeychainRequiredTextView.setVisibility(View.GONE); + openKeychainImportInstructionsTextView.setVisibility(View.GONE); - // Show the password encryption layout items. - encryptionPasswordTextInputLayout.setVisibility(View.VISIBLE); + // Show the password encryption layout items. + encryptionPasswordTextInputLayout.setVisibility(View.VISIBLE); - // Show the file location card. - fileLocationCardView.setVisibility(View.VISIBLE); - - // Show the file name linear layout if either import or export is checked. - if (importRadioButton.isChecked() || exportRadioButton.isChecked()) { - fileNameLinearLayout.setVisibility(View.VISIBLE); - } + // Show the file location card. + fileLocationCardView.setVisibility(View.VISIBLE); - // Reset the text of the import button, which may have been changed to `Decrypt`. - if (importRadioButton.isChecked()) { - importExportButton.setText(R.string.import_button); - } + // Show the file name linear layout if either import or export is checked. + if (importRadioButton.isChecked() || exportRadioButton.isChecked()) { + fileNameLinearLayout.setVisibility(View.VISIBLE); + } - // Enable the import/button if both the password and the file name are populated. - importExportButton.setEnabled(!fileNameEditText.getText().toString().isEmpty() && !encryptionPasswordEditText.getText().toString().isEmpty()); + // Reset the text of the import button, which may have been changed to `Decrypt`. + if (importRadioButton.isChecked()) { + importExportButton.setText(R.string.import_button); } + + // Enable the import/button if both the password and the file name are populated. + importExportButton.setEnabled(!fileNameEditText.getText().toString().isEmpty() && !encryptionPasswordEditText.getText().toString().isEmpty()); break; case OPENPGP_ENCRYPTION: @@ -698,8 +691,7 @@ public class ImportExportActivity extends AppCompatActivity { // Close the streams. inputStream.close(); - temporaryPgpEncryptedImportFileOutputStream.flush(); - + temporaryPgpEncryptedImportFileOutputStream.close(); // Create an decryption intent for OpenKeychain. Intent openKeychainDecryptIntent = new Intent("org.sufficientlysecure.keychain.action.DECRYPT_DATA");