From 48f57eea665d5bba42e52a23304a57155d39a43d Mon Sep 17 00:00:00 2001 From: Philipp Crocoll Date: Mon, 2 Jul 2018 12:01:47 +0200 Subject: [PATCH] fix bug with progress dialog not disappearing somtimes --- src/Kp2aBusinessLogic/ProgressTask.cs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/Kp2aBusinessLogic/ProgressTask.cs b/src/Kp2aBusinessLogic/ProgressTask.cs index 08c76b70..06db519f 100644 --- a/src/Kp2aBusinessLogic/ProgressTask.cs +++ b/src/Kp2aBusinessLogic/ProgressTask.cs @@ -95,7 +95,15 @@ namespace keepass2android currentMessage = _progressDialogStatusLogger.Message; currentSubmessage = _progressDialogStatusLogger.SubMessage; } - + + if (_progressDialog != null) + { + var pd = _progressDialog; + app.UiThreadHandler.Post(() => + { + pd.Dismiss(); + }); + } // Show process dialog _progressDialog = app.CreateProgressDialog(_activeActivity); @@ -118,7 +126,6 @@ namespace keepass2android // Start Thread to Run task _thread = new Thread(_task.Run); _thread.Start(); - } public void JoinWorkerThread() @@ -140,7 +147,10 @@ namespace keepass2android if (Handler != null) //can be null in tests { // Remove the progress dialog - Handler.Post(delegate { _progressTask._progressDialog.Dismiss(); }); + Handler.Post(delegate + { + _progressTask._progressDialog.Dismiss(); + }); } else {