From c12702ef2fe1ee8eeb332fc5a71308faebe200dc Mon Sep 17 00:00:00 2001 From: Corewala Date: Mon, 20 Jun 2022 17:53:26 -0400 Subject: [PATCH] Fixed broken check for valid URI --- .../java/corewala/buran/ui/GemActivity.kt | 52 +++++++++++-------- 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/app/src/main/java/corewala/buran/ui/GemActivity.kt b/app/src/main/java/corewala/buran/ui/GemActivity.kt index 4e02803..98d7acf 100644 --- a/app/src/main/java/corewala/buran/ui/GemActivity.kt +++ b/app/src/main/java/corewala/buran/ui/GemActivity.kt @@ -86,6 +86,8 @@ class GemActivity : AppCompatActivity() { lateinit var adapter: AbstractGemtextAdapter + lateinit var home: String + private val onLink: (link: URI, longTap: Boolean, adapterPosition: Int) -> Unit = { uri, longTap, _: Int -> if(longTap){ val globalURI = if(!uri.toString().contains("//") and !uri.toString().contains(":")){ @@ -157,6 +159,19 @@ class GemActivity : AppCompatActivity() { binding.gemtextRecycler.adapter = adapter + home = prefs.getString( + "home_capsule", + Buran.DEFAULT_HOME_CAPSULE + ) ?: Buran.DEFAULT_HOME_CAPSULE + + if( + !home.startsWith("gemini://") + or home.contains(" ") + or !home.contains(".") + ){ + home = "" + } + if(getInternetStatus()){ initialise() }else{ @@ -286,12 +301,8 @@ class GemActivity : AppCompatActivity() { } binding.home.setOnClickListener { - val home = PreferenceManager.getDefaultSharedPreferences(this).getString( - "home_capsule", - Buran.DEFAULT_HOME_CAPSULE - ) omniTerm.history.clear() - gemRequest(home!!, false) + gemRequest(home, false) } binding.pullToRefresh.setOnRefreshListener { @@ -317,6 +328,19 @@ class GemActivity : AppCompatActivity() { override fun onResume() { super.onResume() + home = prefs.getString( + "home_capsule", + Buran.DEFAULT_HOME_CAPSULE + ) ?: Buran.DEFAULT_HOME_CAPSULE + + if( + !home.startsWith("gemini://") + or home.contains(" ") + or !home.contains(".") + ){ + home = "" + } + when { prefs.contains("background_colour") -> { when (val backgroundColor = prefs.getString("background_colour", "#XXXXXX")) { @@ -773,24 +797,8 @@ class GemActivity : AppCompatActivity() { bookmarkDatasource = db.bookmarks() if(intent.data == null){ - var home = prefs.getString( - "home_capsule", - Buran.DEFAULT_HOME_CAPSULE - ) ?: Buran.DEFAULT_HOME_CAPSULE - - if( - home.startsWith("gemini://") - and !home.contains(" ") - and home.contains(".") - ){ - home = "" - } - model.initialise( - home = prefs.getString( - "home_capsule", - Buran.DEFAULT_HOME_CAPSULE - ) ?: Buran.DEFAULT_HOME_CAPSULE, + home = home, gemini = Datasource.factory(this, db.history()), db = db, onState = this::handleState