From 3bc3fbcf78007504f645e001b6ceac03fe66178f Mon Sep 17 00:00:00 2001 From: Zach Strudler Date: Mon, 22 Feb 2016 01:53:21 -0500 Subject: [PATCH] Show popup in UI thread --- .../core/gui/navigation/NavigationHelper.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/transdroid/core/gui/navigation/NavigationHelper.java b/app/src/main/java/org/transdroid/core/gui/navigation/NavigationHelper.java index f70c16fc..e99c5d11 100644 --- a/app/src/main/java/org/transdroid/core/gui/navigation/NavigationHelper.java +++ b/app/src/main/java/org/transdroid/core/gui/navigation/NavigationHelper.java @@ -92,13 +92,17 @@ public class NavigationHelper { return true; if (!ActivityCompat.shouldShowRequestPermissionRationale(activity, permission)) { // Never asked again: show a dialog with an explanation - new MaterialDialog.Builder(context).content(R.string.permission_readtorrent).positiveText(android.R.string.ok) - .onPositive(new MaterialDialog.SingleButtonCallback() { - @Override - public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) { - ActivityCompat.requestPermissions(activity, new String[]{permission}, requestCode); - } - }).show(); + activity.runOnUiThread(new Runnable() { + public void run() { + new MaterialDialog.Builder(context).content(R.string.permission_readtorrent).positiveText(android.R.string.ok) + .onPositive(new MaterialDialog.SingleButtonCallback() { + @Override + public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) { + ActivityCompat.requestPermissions(activity, new String[]{permission}, requestCode); + } + }).show(); + } + }); return false; } // Permission not granted (and we asked for it already before)