From f9df4c448a7afb0c4bd8c22339947d3a1abc50b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Deniz=20D=C3=BCzg=C3=B6ren?= Date: Wed, 7 Aug 2019 07:38:50 +0200 Subject: [PATCH] Fixed a bug that would make certain recycled cells carry the PSA cell's onClickListener --- .../denizd/substitutionplan/CardAdapter.kt | 28 +++++++++++-------- .../denizd/substitutionplan/DataFetcher.kt | 16 +++++------ .../java/com/denizd/substitutionplan/Main.kt | 2 -- .../substitutionplan/NotificationService.kt | 2 -- 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/com/denizd/substitutionplan/CardAdapter.kt b/app/src/main/java/com/denizd/substitutionplan/CardAdapter.kt index 629b10d..f1399c9 100644 --- a/app/src/main/java/com/denizd/substitutionplan/CardAdapter.kt +++ b/app/src/main/java/com/denizd/substitutionplan/CardAdapter.kt @@ -19,7 +19,8 @@ class CardAdapter(private var mSubst: List) : RecyclerView.Adapter) : RecyclerView.Adapter(R.id.planCard) + init { view.setOnClickListener(this) } + override fun onClick(v: View?) { + if (mDate.text.toString().length > 7 && mDate.text.toString().substring(3, 7) == "http") { + try { + CustomTabsIntent.Builder().build().launchUrl(mCard.context, + Uri.parse(mDate.text.toString().substring(3))) + } catch (e: ActivityNotFoundException) { + Toast.makeText(mCard.context, mCard.context.getString(R.string.chromeCompatibleNotFound), Toast.LENGTH_LONG).show() + } + } + } } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CardViewHolder { @@ -49,20 +61,12 @@ class CardAdapter(private var mSubst: List) : RecyclerView.Adapter -// val snackBarView = v.findViewById(R.id.coordination) -// Snackbar.make(snackBarView, mContext.getString(R.string.noInternet), Snackbar.LENGTH_LONG).setBackgroundTint(ContextCompat.getColor(mContext, R.color.colorError)).show() -// } -// } + } catch (e: Exception) { + mView?.let { v: View -> + val snackBarView = v.findViewById(R.id.coordination) + Snackbar.make(snackBarView, mContext.getString(R.string.noInternet), Snackbar.LENGTH_LONG).setBackgroundTint(ContextCompat.getColor(mContext, R.color.colorError)).show() + } + } return null } diff --git a/app/src/main/java/com/denizd/substitutionplan/Main.kt b/app/src/main/java/com/denizd/substitutionplan/Main.kt index 0ca99db..5aca123 100644 --- a/app/src/main/java/com/denizd/substitutionplan/Main.kt +++ b/app/src/main/java/com/denizd/substitutionplan/Main.kt @@ -8,7 +8,6 @@ import android.content.Intent import android.content.SharedPreferences import android.os.Build import android.os.Bundle -import android.os.Handler import android.preference.PreferenceManager import android.view.* import android.widget.TextView @@ -22,7 +21,6 @@ import androidx.fragment.app.FragmentTransaction import androidx.recyclerview.widget.RecyclerView import com.google.android.material.appbar.AppBarLayout import com.google.android.material.bottomnavigation.BottomNavigationView -import com.google.android.material.chip.Chip import com.google.android.material.snackbar.Snackbar import com.jaredrummler.android.device.DeviceName import java.lang.IllegalArgumentException diff --git a/app/src/main/java/com/denizd/substitutionplan/NotificationService.kt b/app/src/main/java/com/denizd/substitutionplan/NotificationService.kt index 2fc100b..a96f0ca 100644 --- a/app/src/main/java/com/denizd/substitutionplan/NotificationService.kt +++ b/app/src/main/java/com/denizd/substitutionplan/NotificationService.kt @@ -5,8 +5,6 @@ import android.app.job.JobService import android.content.Context import android.net.ConnectivityManager import android.preference.PreferenceManager -import org.jsoup.Jsoup -import java.net.URL class NotificationService : JobService() {