From 4721e663981e9e4b4d3a3894c59a73eeb04b0817 Mon Sep 17 00:00:00 2001 From: gouri-panda Date: Mon, 13 Apr 2020 17:28:41 +0530 Subject: [PATCH 1/2] fixed logout problem fixed logout problem fixed logout problem fixed logout problem fixed logout problem --- .../fr/free/nrw/commons/CommonsApplication.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java index 779dc24734..bc64a19174 100644 --- a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java +++ b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java @@ -20,6 +20,7 @@ import com.squareup.leakcanary.LeakCanary; import com.squareup.leakcanary.RefWatcher; +import io.reactivex.Completable; import org.acra.ACRA; import org.acra.annotation.AcraCore; import org.acra.annotation.AcraDialog; @@ -267,15 +268,19 @@ public void clearApplicationData(Context context, LogoutListener logoutListener) } sessionManager.logout() + .andThen(Completable.fromAction(() ->{ + Timber.d("All accounts have been removed"); + clearImageCache(); + //TODO: fix preference manager + defaultPrefs.clearAll(); + defaultPrefs.putBoolean("firstrun", false); + updateAllDatabases(); + + } + )).doOnError(Timber::e) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(() -> { - Timber.d("All accounts have been removed"); - clearImageCache(); - //TODO: fix preference manager - defaultPrefs.clearAll(); - defaultPrefs.putBoolean("firstrun", false); - updateAllDatabases(); logoutListener.onLogoutComplete(); }); } From 57a5cde9af858e1b675e67ac18bfdeeec07df39e Mon Sep 17 00:00:00 2001 From: gouri-panda Date: Tue, 14 Apr 2020 15:42:19 +0530 Subject: [PATCH 2/2] added error handling on logout --- .../java/fr/free/nrw/commons/CommonsApplication.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java index bc64a19174..b50c746a79 100644 --- a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java +++ b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java @@ -275,14 +275,11 @@ public void clearApplicationData(Context context, LogoutListener logoutListener) defaultPrefs.clearAll(); defaultPrefs.putBoolean("firstrun", false); updateAllDatabases(); - } - )).doOnError(Timber::e) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(() -> { - logoutListener.onLogoutComplete(); - }); + )) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(logoutListener::onLogoutComplete, Timber::e); } /**