From 0e5700c6521244fb326ca48712d2d4092e061651 Mon Sep 17 00:00:00 2001 From: mike castleman Date: Sat, 1 Jun 2019 15:29:15 -0400 Subject: [PATCH] enhance bad-domain detection --- .../com/keylesspalace/tusky/LoginActivity.kt | 7 ++++--- .../com/keylesspalace/tusky/util/RickRoll.kt | 20 +++++++++---------- app/src/main/res/values/donottranslate.xml | 1 + 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt b/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt index 7359dee4..02e3d54e 100644 --- a/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt +++ b/app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt @@ -33,8 +33,9 @@ import com.keylesspalace.tusky.di.Injectable import com.keylesspalace.tusky.entity.AccessToken import com.keylesspalace.tusky.entity.AppCredentials import com.keylesspalace.tusky.network.MastodonApi -import com.keylesspalace.tusky.util.RickRoll import com.keylesspalace.tusky.util.ThemeUtils +import com.keylesspalace.tusky.util.rickRoll +import com.keylesspalace.tusky.util.shouldRickRoll import kotlinx.android.synthetic.main.activity_login.* import okhttp3.HttpUrl import retrofit2.Call @@ -139,8 +140,8 @@ class LoginActivity : BaseActivity(), Injectable { return } - if (RickRoll.shouldRickRoll(this, domain)) { - RickRoll.rickRoll(this) + if (shouldRickRoll(this, domain)) { + rickRoll(this) return } diff --git a/app/src/main/java/com/keylesspalace/tusky/util/RickRoll.kt b/app/src/main/java/com/keylesspalace/tusky/util/RickRoll.kt index 3adfd6b9..03c3339f 100644 --- a/app/src/main/java/com/keylesspalace/tusky/util/RickRoll.kt +++ b/app/src/main/java/com/keylesspalace/tusky/util/RickRoll.kt @@ -5,16 +5,16 @@ import android.content.Intent import android.net.Uri import com.keylesspalace.tusky.R -object RickRoll { - fun shouldRickRoll(context: Context, domain: String) = - context.resources.getStringArray(R.array.rick_roll_domains).contains(domain) - - fun rickRoll(context: Context) { - val uri = Uri.parse(context.getString(R.string.rick_roll_url)) - val intent = Intent(Intent.ACTION_VIEW, uri).apply { - addCategory(Intent.CATEGORY_BROWSABLE) - addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) +fun shouldRickRoll(context: Context, domain: String) = + context.resources.getStringArray(R.array.rick_roll_domains).any { candidate -> + domain.equals(candidate, true) || domain.endsWith(".$candidate", true) } - context.startActivity(intent) + +fun rickRoll(context: Context) { + val uri = Uri.parse(context.getString(R.string.rick_roll_url)) + val intent = Intent(Intent.ACTION_VIEW, uri).apply { + addCategory(Intent.CATEGORY_BROWSABLE) + addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) } + context.startActivity(intent) } diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 45a19323..7084bcd2 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -107,6 +107,7 @@ gab.com + gab.ai https://www.youtube.com/watch?v=dQw4w9WgXcQ