From 4463f5b18c239456e95d5f47dd8d99b4ada895c6 Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 1 Aug 2016 19:28:18 +0200 Subject: [PATCH] Fixed displaying wrong data --- .../eu/faircode/netguard/AdapterAccess.java | 15 +++--- .../java/eu/faircode/netguard/AdapterLog.java | 52 +++++++++---------- 2 files changed, 31 insertions(+), 36 deletions(-) diff --git a/app/src/main/java/eu/faircode/netguard/AdapterAccess.java b/app/src/main/java/eu/faircode/netguard/AdapterAccess.java index 15d39494..b9bfd001 100644 --- a/app/src/main/java/eu/faircode/netguard/AdapterAccess.java +++ b/app/src/main/java/eu/faircode/netguard/AdapterAccess.java @@ -26,6 +26,7 @@ import android.graphics.drawable.Drawable; import android.os.AsyncTask; import android.os.Build; import android.support.v4.graphics.drawable.DrawableCompat; +import android.support.v4.view.ViewCompat; import android.util.TypedValue; import android.view.LayoutInflater; import android.view.View; @@ -130,11 +131,11 @@ public class AdapterAccess extends CursorAdapter { Util.getProtocolName(protocol, version, true) + " " + daddr + (dport > 0 ? "/" + dport : "")); - if (Util.isNumericAddress(daddr) && tvDest.getTag() == null) + if (Util.isNumericAddress(daddr)) new AsyncTask() { @Override protected void onPreExecute() { - tvDest.setTag(id); + ViewCompat.setHasTransientState(tvDest, true); } @Override @@ -148,12 +149,10 @@ public class AdapterAccess extends CursorAdapter { @Override protected void onPostExecute(String addr) { - Object tag = tvDest.getTag(); - if (tag != null && (Long) tag == id) - tvDest.setText( - Util.getProtocolName(protocol, version, true) + - " >" + addr + (dport > 0 ? "/" + dport : "")); - tvDest.setTag(null); + tvDest.setText( + Util.getProtocolName(protocol, version, true) + + " >" + addr + (dport > 0 ? "/" + dport : "")); + ViewCompat.setHasTransientState(tvDest, false); } }.execute(daddr); diff --git a/app/src/main/java/eu/faircode/netguard/AdapterLog.java b/app/src/main/java/eu/faircode/netguard/AdapterLog.java index 75fe7ecc..4f5972cf 100644 --- a/app/src/main/java/eu/faircode/netguard/AdapterLog.java +++ b/app/src/main/java/eu/faircode/netguard/AdapterLog.java @@ -30,6 +30,7 @@ import android.os.AsyncTask; import android.os.Build; import android.preference.PreferenceManager; import android.support.v4.graphics.drawable.DrawableCompat; +import android.support.v4.view.ViewCompat; import android.text.TextUtils; import android.util.Log; import android.util.TypedValue; @@ -237,32 +238,28 @@ public class AdapterLog extends CursorAdapter { // Show destination address if (resolve && !isKnownAddress(daddr)) if (dname == null) { - if (tvDaddr.getTag() == null) { - tvDaddr.setText(daddr); - new AsyncTask() { - @Override - protected void onPreExecute() { - tvDaddr.setTag(id); - } + tvDaddr.setText(daddr); + new AsyncTask() { + @Override + protected void onPreExecute() { + ViewCompat.setHasTransientState(tvDaddr, true); + } - @Override - protected String doInBackground(String... args) { - try { - return InetAddress.getByName(args[0]).getHostName(); - } catch (UnknownHostException ignored) { - return args[0]; - } + @Override + protected String doInBackground(String... args) { + try { + return InetAddress.getByName(args[0]).getHostName(); + } catch (UnknownHostException ignored) { + return args[0]; } + } - @Override - protected void onPostExecute(String name) { - Object tag = tvDaddr.getTag(); - if (tag != null && (Long) tag == id) - tvDaddr.setText(">" + name); - tvDaddr.setTag(null); - } - }.execute(daddr); - } + @Override + protected void onPostExecute(String name) { + tvDaddr.setText(">" + name); + ViewCompat.setHasTransientState(tvDaddr, false); + } + }.execute(daddr); } else tvDaddr.setText(dname); else @@ -271,11 +268,11 @@ public class AdapterLog extends CursorAdapter { // Show organization tvOrganization.setVisibility(View.GONE); if (organization) { - if (!isKnownAddress(daddr) && tvOrganization.getTag() == null) + if (!isKnownAddress(daddr)) new AsyncTask() { @Override protected void onPreExecute() { - tvOrganization.setTag(id); + ViewCompat.setHasTransientState(tvOrganization, true); } @Override @@ -290,12 +287,11 @@ public class AdapterLog extends CursorAdapter { @Override protected void onPostExecute(String organization) { - Object tag = tvOrganization.getTag(); - if (organization != null && tag != null && (Long) tag == id) { + if (organization != null) { tvOrganization.setText(organization); tvOrganization.setVisibility(View.VISIBLE); } - tvOrganization.setTag(null); + ViewCompat.setHasTransientState(tvOrganization, false); } }.execute(daddr); }