aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt11
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostContentContract.kt37
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt16
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentBase.kt2
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentContract.kt2
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/views/FrostRecyclerView.kt9
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/views/FrostWebView.kt5
-rw-r--r--app/src/main/res/values/strings.xml2
-rw-r--r--app/src/test/kotlin/com/pitchedapps/frost/facebook/FbConstTest.kt18
9 files changed, 2 insertions, 100 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt
index 99c11b4d..394969cb 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt
@@ -846,7 +846,7 @@ abstract class BaseMainActivity : BaseActivity(), MainActivityContract,
.setCustomView(BadgedIcon(this@BaseMainActivity).apply {
iicon = fbItem.icon
}.also {
- it.init(index, fbItem)
+ it.setAllAlpha(if (index == 0) SELECTED_TAB_ALPHA else UNSELECTED_TAB_ALPHA)
})
)
}
@@ -861,15 +861,6 @@ abstract class BaseMainActivity : BaseActivity(), MainActivityContract,
}
}
- private fun BadgedIcon.init(index: Int, fbItem: FbItem) {
- setAllAlpha(if (index == 0) SELECTED_TAB_ALPHA else UNSELECTED_TAB_ALPHA)
- setOnLongClickListener {
- if (index != contentBinding.viewpager.currentItem) return@setOnLongClickListener false
- currentFragment?.onTabLongClick()
- true
- }
- }
-
fun saveInstanceState(outState: Bundle) {
outState.putStringArrayList(STATE_FORCE_FALLBACK, ArrayList(forcedFallbacks))
}
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostContentContract.kt b/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostContentContract.kt
index a5d4e191..b8d0d86f 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostContentContract.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostContentContract.kt
@@ -16,19 +16,11 @@
*/
package com.pitchedapps.frost.contracts
-import android.content.Context
import android.view.View
-import ca.allanwang.kau.utils.materialDialog
-import com.pitchedapps.frost.R
-import com.pitchedapps.frost.db.CookieDao
-import com.pitchedapps.frost.db.updateMessengerCookie
-import com.pitchedapps.frost.facebook.FbCookie
import com.pitchedapps.frost.facebook.FbItem
-import com.pitchedapps.frost.prefs.Prefs
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.channels.BroadcastChannel
-import kotlinx.coroutines.launch
/**
* Created by Allan Wang on 20/12/17.
@@ -180,36 +172,7 @@ interface FrostContentCore : DynamicUiContract {
fun onTabClicked()
/**
- * Triggered when view is within viewpager
- * and tab is long clicked
- */
- fun onTabLongClicked()
-
- /**
* Signal destruction to release some content manually
*/
fun destroy()
}
-
-internal fun FrostContentCore.onTabLongClicked(
- context: Context,
- prefs: Prefs,
- fbCookie: FbCookie,
- cookieDao: CookieDao
-) {
- when (parent.baseEnum) {
- FbItem.MESSENGER -> {
- context.materialDialog {
- message(R.string.messenger_logout)
- positiveButton(R.string.kau_logout) {
- scope.launch {
- fbCookie.removeMessengerCookie()
- cookieDao.updateMessengerCookie(prefs.userId, null)
- reloadBase(true)
- }
- }
- negativeButton(R.string.kau_cancel)
- }
- }
- }
-}
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
index eb3580d4..4e932d09 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt
@@ -110,22 +110,6 @@ class FbCookie(private val prefs: Prefs, private val cookieDao: CookieDao) {
}
}
- /**
- * As far as I'm aware there is no way to remove a specific cookie.
- * As we only care about fb and messenger cookies, this is a workaround
- * in which we remove all cookies then add back the fb one.
- */
- suspend fun removeMessengerCookie() {
- withContext(Dispatchers.Main + NonCancellable) {
- val fbCookie = webCookie
- with(CookieManager.getInstance()) {
- removeAllCookies()
- suspendSetWebCookie(FB_COOKIE_DOMAIN, fbCookie)
- flush()
- }
- }
- }
-
suspend fun switchUser(id: Long) {
val cookie = cookieDao.selectById(id) ?: return L.e { "No cookie for id" }
switchUser(cookie)
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentBase.kt b/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentBase.kt
index e91069c8..c07884bc 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentBase.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentBase.kt
@@ -251,6 +251,4 @@ abstract class BaseFragment : Fragment(), CoroutineScope, FragmentContract,
override fun onBackPressed(): Boolean = content?.core?.onBackPressed() ?: false
override fun onTabClick(): Unit = content?.core?.onTabClicked() ?: Unit
-
- override fun onTabLongClick(): Unit = content?.core?.onTabLongClicked() ?: Unit
}
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentContract.kt b/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentContract.kt
index 3cd06bc9..10c612c5 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentContract.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/fragments/FragmentContract.kt
@@ -96,8 +96,6 @@ interface FragmentContract : FrostContentContainer {
fun onBackPressed(): Boolean
fun onTabClick()
-
- fun onTabLongClick()
}
interface RecyclerContentContract {
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/views/FrostRecyclerView.kt b/app/src/main/kotlin/com/pitchedapps/frost/views/FrostRecyclerView.kt
index f4f0fe11..89009b56 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/views/FrostRecyclerView.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/views/FrostRecyclerView.kt
@@ -26,9 +26,6 @@ import ca.allanwang.kau.utils.fadeOut
import com.pitchedapps.frost.contracts.FrostContentContainer
import com.pitchedapps.frost.contracts.FrostContentCore
import com.pitchedapps.frost.contracts.FrostContentParent
-import com.pitchedapps.frost.contracts.onTabLongClicked
-import com.pitchedapps.frost.db.CookieDao
-import com.pitchedapps.frost.facebook.FbCookie
import com.pitchedapps.frost.fragments.RecyclerContentContract
import com.pitchedapps.frost.prefs.Prefs
import kotlinx.coroutines.ExperimentalCoroutinesApi
@@ -50,8 +47,6 @@ class FrostRecyclerView @JvmOverloads constructor(
FrostContentCore {
private val prefs: Prefs by inject()
- private val fbCookie: FbCookie by inject()
- private val cookieDao: CookieDao by inject()
override fun reload(animate: Boolean) = reloadBase(animate)
@@ -112,10 +107,6 @@ class FrostRecyclerView @JvmOverloads constructor(
else scrollToTop()
}
- override fun onTabLongClicked() {
- onTabLongClicked(context, prefs, fbCookie, cookieDao)
- }
-
private fun scrollToTop() {
stopScroll()
smoothScrollToPosition(0)
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/views/FrostWebView.kt b/app/src/main/kotlin/com/pitchedapps/frost/views/FrostWebView.kt
index 887d17f0..ecd8c093 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/views/FrostWebView.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/views/FrostWebView.kt
@@ -29,7 +29,6 @@ import ca.allanwang.kau.utils.launchMain
import com.pitchedapps.frost.contracts.FrostContentContainer
import com.pitchedapps.frost.contracts.FrostContentCore
import com.pitchedapps.frost.contracts.FrostContentParent
-import com.pitchedapps.frost.contracts.onTabLongClicked
import com.pitchedapps.frost.db.CookieDao
import com.pitchedapps.frost.db.currentCookie
import com.pitchedapps.frost.facebook.FB_HOME_URL
@@ -197,10 +196,6 @@ class FrostWebView @JvmOverloads constructor(
private fun smoothScrollBy(y: Int) = smoothScrollTo(max(0, scrollY + y))
- override fun onTabLongClicked() {
- onTabLongClicked(context, prefs, fbCookie, cookieDao)
- }
-
override var active: Boolean = true
set(value) {
if (field == value) return
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 53b291a2..860895e5 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -79,6 +79,4 @@
<string name="disclaimer">Disclaimer</string>
- <string name="messenger_logout">Log out of Messenger?</string>
-
</resources>
diff --git a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbConstTest.kt b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbConstTest.kt
index 83bce973..8a8c42d6 100644
--- a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbConstTest.kt
+++ b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbConstTest.kt
@@ -1,19 +1,3 @@
-/*
- * Copyright 2021 Allan Wang
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
package com.pitchedapps.frost.facebook
import kotlin.test.Test
@@ -50,4 +34,4 @@ class FbConstTest {
)
}
}
-}
+} \ No newline at end of file