diff --git a/app/src/main/java/com/quran/labs/androidquran/presenter/translation/TranslationManagerPresenter.java b/app/src/main/java/com/quran/labs/androidquran/presenter/translation/TranslationManagerPresenter.java index 4fbf6eb84d..a636626c53 100644 --- a/app/src/main/java/com/quran/labs/androidquran/presenter/translation/TranslationManagerPresenter.java +++ b/app/src/main/java/com/quran/labs/androidquran/presenter/translation/TranslationManagerPresenter.java @@ -79,7 +79,12 @@ public void getTranslationsList(boolean forceDownload) { final Observable source = Observable.concat(getCachedTranslationListObservable(), getRemoteTranslationListObservable()); final Observable observableSource; - if (isCacheStale || forceDownload) { + if (forceDownload) { + // we only force if we pulled to refresh or are refreshing in the background, + // implying that we have data on the screen already (or don't need data in the + // background case), so just get remote data. + observableSource = getRemoteTranslationListObservable(); + } else if (isCacheStale) { observableSource = source; } else { observableSource = source.take(1);