From e8891d775b613781529e2f86cb063ee2f16a229f Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Thu, 14 Jun 2018 04:59:24 +0200 Subject: global: supply backend asynchronously We can't block for IO, so move everything to async workers or to callbacks. Signed-off-by: Jason A. Donenfeld --- .../wireguard/android/preference/VersionPreference.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'app/src/main/java/com/wireguard/android/preference/VersionPreference.java') diff --git a/app/src/main/java/com/wireguard/android/preference/VersionPreference.java b/app/src/main/java/com/wireguard/android/preference/VersionPreference.java index ab51644f..6b21977a 100644 --- a/app/src/main/java/com/wireguard/android/preference/VersionPreference.java +++ b/app/src/main/java/com/wireguard/android/preference/VersionPreference.java @@ -27,13 +27,14 @@ public class VersionPreference extends Preference { public VersionPreference(final Context context, final AttributeSet attrs) { super(context, attrs); - final Backend backend = Application.getBackend(); - versionSummary = getContext().getString(R.string.version_summary_checking, backend.getTypeName().toLowerCase()); - Application.getAsyncWorker().supplyAsync(backend::getVersion).whenComplete((version, exception) -> { - versionSummary = exception == null - ? getContext().getString(R.string.version_summary, backend.getTypeName(), version) - : getContext().getString(R.string.version_summary_unknown, backend.getTypeName().toLowerCase()); - notifyChanged(); + Application.onHaveBackend(backend -> { + versionSummary = getContext().getString(R.string.version_summary_checking, backend.getTypeName().toLowerCase()); + Application.getAsyncWorker().supplyAsync(backend::getVersion).whenComplete((version, exception) -> { + versionSummary = exception == null + ? getContext().getString(R.string.version_summary, backend.getTypeName(), version) + : getContext().getString(R.string.version_summary_unknown, backend.getTypeName().toLowerCase()); + notifyChanged(); + }); }); } -- cgit v1.2.3-59-g8ed1b