From fcd85dc8e14353b975855832a68cb4de55c28b7d Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Wed, 16 Aug 2023 11:27:57 +0530 Subject: [PATCH] feat(android): feature flag "read posts" feature --- android/build.gradle.kts | 10 ++++++++++ .../main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt | 9 +++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/android/build.gradle.kts b/android/build.gradle.kts index caae4f45..317d5536 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -6,6 +6,7 @@ */ @file:Suppress("UnstableApiUsage") +import com.android.build.api.variant.BuildConfigField import dev.msfjarvis.claw.gradle.addTestDependencies plugins { @@ -34,6 +35,15 @@ android { packagingOptions.resources.pickFirsts += "**/*.bin" } +androidComponents { + onVariants { variant -> + variant.buildConfigFields.put( + "ENABLE_READ_COMMENTS", + BuildConfigField("boolean", "false", "Not yet buddy boy") + ) + } +} + baselineProfile { dexLayoutOptimization = true mergeIntoMain = true diff --git a/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt b/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt index b0f32422..e95c43d5 100644 --- a/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt +++ b/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt @@ -12,6 +12,7 @@ import androidx.activity.ComponentActivity import androidx.compose.runtime.Composable import androidx.compose.runtime.remember import androidx.navigation.NavController +import dev.msfjarvis.claw.android.BuildConfig import dev.msfjarvis.claw.android.ui.navigation.Destinations import dev.msfjarvis.claw.android.viewmodel.ClawViewModel import dev.msfjarvis.claw.common.posts.PostActions @@ -37,12 +38,16 @@ fun rememberPostActions( return remember { object : PostActions { override fun viewPost(postId: String, postUrl: String, commentsUrl: String) { - viewModel.markPostAsRead(postId) + if (BuildConfig.ENABLE_READ_COMMENTS) { + viewModel.markPostAsRead(postId) + } urlLauncher.openUri(postUrl.ifEmpty { commentsUrl }) } override fun viewComments(postId: String) { - viewModel.markPostAsRead(postId) + if (BuildConfig.ENABLE_READ_COMMENTS) { + viewModel.markPostAsRead(postId) + } val currentRoute = navController.currentDestination?.route val newRoute = Destinations.Comments.route.replace(Destinations.Comments.placeholder, postId)