aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java')
-rw-r--r--app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java17
1 files changed, 3 insertions, 14 deletions
diff --git a/app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java b/app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java
index 36cc513e..4e4d4a4f 100644
--- a/app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java
+++ b/app/src/main/java/com/wireguard/android/preference/LogExporterPreference.java
@@ -14,12 +14,11 @@ import android.support.design.widget.Snackbar;
import android.support.v7.preference.Preference;
import android.util.AttributeSet;
import android.util.Log;
-import android.view.ContextThemeWrapper;
import com.wireguard.android.Application;
import com.wireguard.android.R;
-import com.wireguard.android.activity.SettingsActivity;
import com.wireguard.android.util.ExceptionLoggers;
+import com.wireguard.android.util.FragmentUtils;
import java.io.BufferedReader;
import java.io.File;
@@ -40,16 +39,6 @@ public class LogExporterPreference extends Preference {
super(context, attrs);
}
- private static SettingsActivity getPrefActivity(final Preference preference) {
- final Context context = preference.getContext();
- if (context instanceof ContextThemeWrapper) {
- if (((ContextThemeWrapper) context).getBaseContext() instanceof SettingsActivity) {
- return ((SettingsActivity) ((ContextThemeWrapper) context).getBaseContext());
- }
- }
- return null;
- }
-
private void exportLog() {
Application.getAsyncWorker().supplyAsync(() -> {
final File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
@@ -90,7 +79,7 @@ public class LogExporterPreference extends Preference {
final String message = getContext().getString(R.string.log_export_error, error);
Log.e(TAG, message, throwable);
Snackbar.make(
- getPrefActivity(this).findViewById(android.R.id.content),
+ FragmentUtils.getPrefActivity(this).findViewById(android.R.id.content),
message, Snackbar.LENGTH_LONG).show();
setEnabled(true);
} else {
@@ -113,7 +102,7 @@ public class LogExporterPreference extends Preference {
@Override
protected void onClick() {
- getPrefActivity(this).ensurePermissions(
+ FragmentUtils.getPrefActivity(this).ensurePermissions(
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
(permissions, granted) -> {
if (granted.length > 0 && granted[0] == PackageManager.PERMISSION_GRANTED) {