mirror of
https://github.com/sudoxnym/habitica-android.git
synced 2026-04-14 11:46:32 +00:00
small code cleanup
This commit is contained in:
parent
9923f9c7f3
commit
4289042d9f
14 changed files with 51 additions and 53 deletions
|
|
@ -168,7 +168,7 @@ android {
|
|||
}
|
||||
|
||||
composeOptions {
|
||||
kotlinCompilerExtensionVersion = "1.4.4"
|
||||
kotlinCompilerExtensionVersion = "1.4.6"
|
||||
}
|
||||
|
||||
signingConfigs {
|
||||
|
|
@ -271,15 +271,14 @@ android {
|
|||
compileOptions {
|
||||
coreLibraryDesugaringEnabled true
|
||||
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
sourceCompatibility JavaVersion.VERSION_11
|
||||
targetCompatibility JavaVersion.VERSION_11
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
||||
jvmTarget = JavaVersion.VERSION_11.toString()
|
||||
}
|
||||
|
||||
|
||||
bundle {
|
||||
language {
|
||||
// Specifies that the app bundle should not support
|
||||
|
|
|
|||
|
|
@ -10,8 +10,8 @@ import com.habitrpg.android.habitica.extensions.inflate
|
|||
|
||||
class SimpleSpinnerAdapter(context: Context, resource: Int) : ArrayAdapter<CharSequence>(context, resource, R.id.textView, context.resources.getTextArray(resource)) {
|
||||
|
||||
override fun getDropDownView(position: Int, convertView: View?, parent: ViewGroup?): View {
|
||||
val view = parent?.inflate(R.layout.spinner_item, false) ?: View(context)
|
||||
override fun getDropDownView(position : Int, convertView : View?, parent : ViewGroup) : View? {
|
||||
val view = parent.inflate(R.layout.spinner_item, false) ?: View(context)
|
||||
(view as? TextView)?.text = getItem(position)
|
||||
return view
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ class PartyMemberRecyclerViewAdapter : BaseRecyclerViewAdapter<Member, GroupMemb
|
|||
override fun onBindViewHolder(holder: GroupMemberViewHolder, position: Int) {
|
||||
holder.bind(data[position], leaderID, null)
|
||||
holder.onClickEvent = {
|
||||
onUserClicked?.invoke(data[position].id ?: "")
|
||||
onUserClicked?.invoke(data[position].id)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,16 +36,6 @@ class NewsFragment : BaseMainFragment<FragmentNewsBinding>() {
|
|||
}
|
||||
|
||||
private val webviewClient = object : WebViewClient() {
|
||||
|
||||
override fun shouldOverrideUrlLoading(view: WebView?, url: String?): Boolean {
|
||||
if (url?.contains("/static/new-stuff") == true) {
|
||||
view?.loadUrl(url)
|
||||
} else if (url != null) {
|
||||
MainNavigationController.navigate(url)
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
override fun shouldOverrideUrlLoading(
|
||||
view: WebView?,
|
||||
request: WebResourceRequest?
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ class HabiticaAccountDialog(private var thisContext: Context) : DialogFragment(R
|
|||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
||||
activity?.let { activity ->
|
||||
activity?.let { _ ->
|
||||
ViewCompat.getWindowInsetsController(view)?.isAppearanceLightStatusBars = true
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@ import android.os.Bundle
|
|||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.lifecycle.Lifecycle
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import androidx.lifecycle.repeatOnLifecycle
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import com.habitrpg.android.habitica.MainNavDirections
|
||||
import com.habitrpg.android.habitica.R
|
||||
|
|
@ -28,9 +30,9 @@ import com.habitrpg.android.habitica.ui.viewmodels.GroupViewModel
|
|||
import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar.Companion.showSnackbar
|
||||
import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar.SnackbarDisplayType
|
||||
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog
|
||||
import com.habitrpg.common.habitica.helpers.launchCatching
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import javax.inject.Inject
|
||||
import kotlin.time.DurationUnit
|
||||
import kotlin.time.toDuration
|
||||
|
|
@ -119,10 +121,12 @@ class ChatFragment : BaseFragment<FragmentChatBinding>() {
|
|||
it?.flags?.communityGuidelinesAccepted == true
|
||||
}
|
||||
|
||||
lifecycleScope.launchWhenResumed {
|
||||
while (true) {
|
||||
refresh()
|
||||
delay(30.toDuration(DurationUnit.SECONDS))
|
||||
lifecycleScope.launchCatching {
|
||||
repeatOnLifecycle(Lifecycle.State.RESUMED) {
|
||||
while (true) {
|
||||
refresh()
|
||||
delay(30.toDuration(DurationUnit.SECONDS))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -276,7 +276,7 @@ class PartyDetailFragment : BaseFragment<FragmentPartyDetailBinding>() {
|
|||
val viewHolder = GroupMemberViewHolder(memberView)
|
||||
viewHolder.bind(member, leaderID ?: "", viewModel?.user?.value?.id)
|
||||
viewHolder.onClickEvent = {
|
||||
FullProfileActivity.open(member.id ?: "")
|
||||
FullProfileActivity.open(member.id)
|
||||
}
|
||||
viewHolder.sendMessageEvent = {
|
||||
member.id.let { showSendMessageToUserDialog(it, member.displayName) }
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@ import androidx.compose.foundation.background
|
|||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.IntrinsicSize
|
||||
import androidx.compose.foundation.layout.Row
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
|
|
@ -93,7 +92,7 @@ class PartySeekingViewModel @Inject constructor(
|
|||
suspend fun inviteUser(member : Member) : InviteResponse? {
|
||||
return socialRepository.inviteToGroup(
|
||||
"party", mapOf(
|
||||
"uuids" to listOf(member.id ?: "")
|
||||
"uuids" to listOf(member.id)
|
||||
)
|
||||
)?.firstOrNull()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ class AuthenticationViewModel @Inject constructor(
|
|||
) {
|
||||
val scopesString = Scopes.PROFILE + " " + Scopes.EMAIL
|
||||
val scopes = "oauth2:$scopesString"
|
||||
var newUser = false
|
||||
var newUser : Boolean
|
||||
CoroutineScope(Dispatchers.IO).launchCatching({ throwable ->
|
||||
if (recoverFromPlayServicesErrorResult == null) return@launchCatching
|
||||
if (throwable is GoogleAuthException) {
|
||||
|
|
|
|||
|
|
@ -145,7 +145,7 @@ class StableViewModel @Inject constructor(
|
|||
}
|
||||
|
||||
items.add(0, "header")
|
||||
items.removeAll { it is StableSection && (it.key as? String) == "special" && it.ownedCount == 0 }
|
||||
items.removeAll { it is StableSection && it.key == "special" && it.ownedCount == 0 }
|
||||
return items
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,9 +60,9 @@ fun GroupPlanMemberList(
|
|||
?: emptyList()
|
||||
) {
|
||||
item {
|
||||
val role = if (group?.isLeader(member.id ?: "") == true) {
|
||||
val role = if (group?.isLeader(member.id) == true) {
|
||||
stringResource(R.string.owner)
|
||||
} else if (group?.isManager(member.id ?: "") == true) {
|
||||
} else if (group?.isManager(member.id) == true) {
|
||||
stringResource(R.string.manager)
|
||||
} else {
|
||||
stringResource(R.string.member)
|
||||
|
|
|
|||
|
|
@ -117,3 +117,9 @@ tasks.named("detekt").configure {
|
|||
task allUnitTests(type: GradleBuild) {
|
||||
tasks = [':Habitica:testProdDebugUnitTest', ':wearos:testProdDebugUnitTest', ':common:testProdDebugUnitTest', ':shared:testDebugUnitTest']
|
||||
}
|
||||
|
||||
subprojects {
|
||||
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
|
||||
kotlinOptions.jvmTarget = "11"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import java.util.Properties
|
||||
import java.io.FileInputStream
|
||||
import java.util.Properties
|
||||
|
||||
plugins {
|
||||
id("com.android.library")
|
||||
|
|
@ -13,7 +13,6 @@ android {
|
|||
|
||||
defaultConfig {
|
||||
minSdk = rootExtra.get("min_sdk") as Int
|
||||
targetSdkVersion(rootExtra.get("target_sdk") as Int)
|
||||
|
||||
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||
consumerProguardFiles("consumer-rules.pro")
|
||||
|
|
@ -35,12 +34,12 @@ android {
|
|||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_11
|
||||
targetCompatibility = JavaVersion.VERSION_11
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
||||
kotlin {
|
||||
jvmToolchain(11)
|
||||
}
|
||||
namespace = "com.habitrpg.common.habitica"
|
||||
|
||||
|
|
@ -78,12 +77,12 @@ android {
|
|||
}
|
||||
}
|
||||
|
||||
val core_ktx_version = rootExtra.get("core_ktx_version")
|
||||
val appcompat_version = rootExtra.get("appcompat_version")
|
||||
val markwon_version = rootExtra.get("markwon_version")
|
||||
val coil_version = rootExtra.get("coil_version")
|
||||
val mockk_version = rootExtra.get("mockk_version")
|
||||
val kotest_version = rootExtra.get("kotest_version")
|
||||
val core_ktx_version: String by rootExtra
|
||||
val appcompat_version: String by rootExtra
|
||||
val markwon_version: String by rootExtra
|
||||
val coil_version: String by rootExtra
|
||||
val mockk_version: String by rootExtra
|
||||
val kotest_version: String by rootExtra
|
||||
|
||||
dependencies {
|
||||
implementation(fileTree(mapOf("include" to listOf("*.jar"), "dir" to "libs")))
|
||||
|
|
@ -122,17 +121,13 @@ android.testOptions {
|
|||
// Add Habitica Properties to buildConfigField
|
||||
val HRPG_PROPS_FILE = File(projectDir.absolutePath + "/../habitica.properties")
|
||||
if (HRPG_PROPS_FILE.canRead()) {
|
||||
val HRPG_PROPS = Properties()
|
||||
HRPG_PROPS.load(FileInputStream(HRPG_PROPS_FILE))
|
||||
val hrpgProps = Properties()
|
||||
hrpgProps.load(FileInputStream(HRPG_PROPS_FILE))
|
||||
|
||||
if (HRPG_PROPS != null) {
|
||||
android.buildTypes.configureEach {
|
||||
HRPG_PROPS.forEach { property ->
|
||||
buildConfigField("String", property.key as String, "\"${property.value}\"")
|
||||
}
|
||||
android.buildTypes.configureEach {
|
||||
hrpgProps.forEach { property ->
|
||||
buildConfigField("String", property.key as String, "\"${property.value}\"")
|
||||
}
|
||||
} else {
|
||||
throw InvalidUserDataException("habitica.properties found but some entries are missing")
|
||||
}
|
||||
} else {
|
||||
throw MissingResourceException("habitica.properties not found")
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ kotlin {
|
|||
sourceSets {
|
||||
val commonMain by getting {
|
||||
dependencies {
|
||||
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4")
|
||||
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:${rootProject.extra.get("coroutines_version")}")
|
||||
}
|
||||
}
|
||||
val commonTest by getting {
|
||||
|
|
@ -47,5 +47,10 @@ android {
|
|||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_11
|
||||
targetCompatibility = JavaVersion.VERSION_11
|
||||
}
|
||||
|
||||
namespace = "com.habitrpg.shared.habitica"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue