Fix merge issues

This commit is contained in:
Phillip Thelen 2022-06-02 10:17:28 +02:00
parent 857a5a6ed1
commit ac51cc7c05
16 changed files with 60 additions and 56 deletions

View file

@ -1,25 +1,17 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
apply plugin: 'realm-android'
apply plugin: 'androidx.navigation.safeargs'
apply plugin: 'com.google.firebase.firebase-perf'
apply plugin: 'jacoco'
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id 'kotlin-kapt'
buildscript {
repositories {
mavenLocal()
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.1.3'
classpath 'net.sourceforge.pmd:pmd-java:5.5.3'
}
id 'com.google.gms.google-services'
id 'com.google.firebase.crashlytics'
id 'realm-android'
id 'androidx.navigation.safeargs'
id 'com.google.firebase.firebase-perf'
}
apply plugin: 'kotlin-android'
repositories {
mavenLocal()
mavenCentral()
@ -145,6 +137,8 @@ dependencies {
}
}
androidTestImplementation "org.jetbrains.kotlin:kotlin-reflect:1.6.21"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}
android {
@ -347,7 +341,7 @@ if (HRPG_PROPS_FILE.canRead()) {
}
}
} else {
throw new InvalidUserDataException('habitica.properties found but some entries are missing')
throw new MissingResourceException('habitica.properties found but some entries are missing')
}
} else {
throw new MissingResourceException('habitica.properties not found')
@ -366,7 +360,7 @@ if (HRPG_RES_FILE.canRead()) {
}
}
} else {
throw new InvalidUserDataException('habitica.resources found but some entries are missing')
throw new MissingResourceException('habitica.resources found but some entries are missing')
}
} else {
throw new MissingResourceException('habitica.resources not found')
@ -386,10 +380,6 @@ gradle.projectsEvaluated {
apply plugin: 'com.google.gms.google-services'
jacoco {
toolVersion = "0.8.7"
}
task ktlint(type: JavaExec, group: "verification") {
description = "Check Kotlin code style."
classpath = configurations.ktlint

View file

@ -53,7 +53,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:shimmer_repeat_delay="8000">
<com.habitrpg.android.habitica.ui.views.PixelArtView
<com.habitrpg.common.habitica.views.PixelArtView
android:id="@+id/pet_view"
android:layout_width="@dimen/gear_image_size"
android:layout_height="@dimen/gear_image_size"

View file

@ -12,7 +12,7 @@
tools:text="Title"
android:gravity="center"
style="@style/Subheader1"/>
<com.habitrpg.android.habitica.ui.views.PixelArtView
<com.habitrpg.common.habitica.views.PixelArtView
android:id="@+id/icon_view"
android:layout_width="@dimen/shopitem_image_size"
android:layout_height="@dimen/shopitem_image_size"

View file

@ -18,7 +18,7 @@
android:layout_height="wrap_content"
style="@style/BottomMenuItemText"
tools:text="Menu Item"/>
<com.habitrpg.android.habitica.ui.views.CurrencyView
<com.habitrpg.common.habitica.views.CurrencyView
android:id="@+id/currency_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View file

@ -7,20 +7,20 @@ import android.widget.TextView
import androidx.lifecycle.LifecycleCoroutineScope
import com.google.firebase.analytics.FirebaseAnalytics
import com.habitrpg.android.habitica.R
import com.habitrpg.common.habitica.models.Notification
import com.habitrpg.common.habitica.models.notifications.AchievementData
import com.habitrpg.common.habitica.models.notifications.ChallengeWonData
import com.habitrpg.common.habitica.models.notifications.FirstDropData
import com.habitrpg.common.habitica.models.notifications.LoginIncentiveData
import com.habitrpg.android.habitica.models.user.User
import com.habitrpg.common.habitica.extensions.loadImage
import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar
import com.habitrpg.common.habitica.views.PixelArtView
import com.habitrpg.android.habitica.ui.views.SnackbarActivity
import com.habitrpg.android.habitica.ui.views.dialogs.AchievementDialog
import com.habitrpg.android.habitica.ui.views.dialogs.FirstDropDialog
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog
import com.habitrpg.android.habitica.ui.views.dialogs.WonChallengeDialog
import com.habitrpg.common.habitica.extensions.loadImage
import com.habitrpg.common.habitica.models.Notification
import com.habitrpg.common.habitica.models.notifications.AchievementData
import com.habitrpg.common.habitica.models.notifications.ChallengeWonData
import com.habitrpg.common.habitica.models.notifications.FirstDropData
import com.habitrpg.common.habitica.models.notifications.LoginIncentiveData
import com.habitrpg.common.habitica.views.PixelArtView
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch

View file

@ -11,16 +11,15 @@ import androidx.lifecycle.ViewModel
import com.habitrpg.android.habitica.R
import com.habitrpg.android.habitica.databinding.AvatarWithBarsBinding
import com.habitrpg.android.habitica.helpers.Animations
import com.habitrpg.common.habitica.helpers.HealthFormatter
import com.habitrpg.android.habitica.helpers.MainNavigationController
import com.habitrpg.android.habitica.models.user.Stats
import com.habitrpg.android.habitica.models.user.User
import com.habitrpg.common.habitica.ui.activities.mainActivityCreatedAt
import com.habitrpg.android.habitica.ui.activities.mainActivityCreatedAt
import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel
import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper
import java.util.Date
import com.habitrpg.common.habitica.helpers.HealthFormatter
import com.habitrpg.common.habitica.models.Avatar
import io.reactivex.rxjava3.disposables.Disposable
import com.habitrpg.common.habitica.views.HabiticaIconsHelper
import java.util.Date
import java.util.Locale
import kotlin.math.floor
@ -64,7 +63,9 @@ class AvatarWithBarsViewModel(
userClass = stats.getTranslatedClassName(context)
}
binding.mpBar.visibility = if (stats.habitClass == null || stats.lvl ?: 0 < 10 || user.preferences?.disableClasses == true) View.GONE else View.VISIBLE
binding.mpBar.visibility = if (stats.habitClass == null || (stats.lvl
?: 0) < 10 || user.preferences?.disableClasses == true
) View.GONE else View.VISIBLE
if (!user.hasClass) {
setUserLevel(context, binding.lvlTv, stats.lvl)

View file

@ -16,10 +16,9 @@ import com.habitrpg.android.habitica.databinding.AdventureGuideItemBinding
import com.habitrpg.android.habitica.extensions.fromHtml
import com.habitrpg.android.habitica.helpers.AmplitudeManager
import com.habitrpg.android.habitica.models.user.User
import com.habitrpg.android.habitica.ui.helpers.loadImage
import com.habitrpg.common.habitica.extensions.loadImage
import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel
import javax.inject.Inject
import com.habitrpg.common.habitica.extensions.loadImage
class AdventureGuideActivity : BaseActivity() {
private lateinit var binding: ActivityAdventureGuideBinding

View file

@ -18,9 +18,10 @@ import com.habitrpg.android.habitica.models.user.Items
import com.habitrpg.android.habitica.models.user.Outfit
import com.habitrpg.android.habitica.models.user.Preferences
import com.habitrpg.android.habitica.models.user.User
import com.habitrpg.common.habitica.views.HabiticaIconsHelper
import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaProgressDialog
import com.habitrpg.common.habitica.views.HabiticaIconsHelper
import io.reactivex.rxjava3.functions.Consumer
import javax.inject.Inject

View file

@ -18,8 +18,8 @@ import com.habitrpg.android.habitica.helpers.Animations
import com.habitrpg.android.habitica.helpers.AppConfigManager
import com.habitrpg.android.habitica.helpers.RxErrorHandler
import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel
import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper
import com.habitrpg.android.habitica.ui.views.ads.AdButton
import com.habitrpg.common.habitica.views.HabiticaIconsHelper
import com.plattysoft.leonids.ParticleSystem
import javax.inject.Inject

View file

@ -12,15 +12,14 @@ import com.habitrpg.android.habitica.databinding.CustomizationGridItemBinding
import com.habitrpg.android.habitica.databinding.CustomizationSectionFooterBinding
import com.habitrpg.android.habitica.databinding.CustomizationSectionHeaderBinding
import com.habitrpg.android.habitica.helpers.MainNavigationController
import com.habitrpg.android.habitica.models.Avatar
import com.habitrpg.android.habitica.models.inventory.Customization
import com.habitrpg.android.habitica.models.inventory.CustomizationSet
import com.habitrpg.android.habitica.models.shops.ShopItem
import com.habitrpg.android.habitica.ui.AvatarView
import com.habitrpg.android.habitica.ui.helpers.loadImage
import com.habitrpg.common.habitica.extensions.loadImage
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog
import com.habitrpg.android.habitica.ui.views.shops.PurchaseDialog
import com.habitrpg.common.habitica.models.Avatar
import com.habitrpg.common.habitica.views.AvatarView
import io.reactivex.rxjava3.core.BackpressureStrategy
import io.reactivex.rxjava3.core.Flowable
import io.reactivex.rxjava3.subjects.PublishSubject

View file

@ -3,7 +3,7 @@ package com.habitrpg.android.habitica.ui.menu
import android.content.Context
import android.view.View
import com.habitrpg.android.habitica.databinding.MenuBottomSheetBinding
import com.habitrpg.android.habitica.ui.helpers.loadImage
import com.habitrpg.common.habitica.extensions.loadImage
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaBottomSheetDialog
class BottomSheetMenu(context: Context) : HabiticaBottomSheetDialog(context), View.OnClickListener {

View file

@ -5,8 +5,9 @@ import android.widget.TextView
import com.habitrpg.android.habitica.databinding.PurchaseDialogBackgroundBinding
import com.habitrpg.common.habitica.extensions.layoutInflater
import com.habitrpg.android.habitica.models.shops.ShopItem
import com.habitrpg.android.habitica.ui.AvatarView
import com.habitrpg.android.habitica.ui.views.PixelArtView
import com.habitrpg.common.habitica.models.Avatar
import com.habitrpg.common.habitica.views.AvatarView
import com.habitrpg.common.habitica.views.PixelArtView
import java.util.*
class PurchaseDialogBackgroundContent(context: Context) : PurchaseDialogContent(context) {

View file

@ -6,12 +6,13 @@ buildscript {
repositories {
google()
maven { url "https://plugins.gradle.org/m2/" }
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.1.3'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'com.google.gms:google-services:4.3.10'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.0'
classpath "io.realm:realm-gradle-plugin:10.10.1"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.19.0"

View file

@ -10,6 +10,7 @@ import com.habitrpg.common.habitica.models.notifications.GuildInvitationData
import com.habitrpg.common.habitica.models.notifications.LoginIncentiveData
import com.habitrpg.common.habitica.models.notifications.NewChatMessageData
import com.habitrpg.common.habitica.models.notifications.NewStuffData
import com.habitrpg.common.habitica.models.notifications.NotificationData
import com.habitrpg.common.habitica.models.notifications.PartyInvitationData
import com.habitrpg.common.habitica.models.notifications.QuestInvitationData
import com.habitrpg.common.habitica.models.notifications.UnallocatedPointsData
@ -75,7 +76,7 @@ class Notification {
var type: String? = null
var seen: Boolean? = null
//var data: NotificationData? = null
var data: NotificationData? = null
fun getDataType(): java.lang.reflect.Type? {
return when (type) {

View file

@ -18,9 +18,9 @@ import androidx.core.view.marginTop
import coil.clear
import coil.load
import com.habitrpg.common.habitica.BuildConfig
import com.habitrpg.common.habitica.extensions.dpToPx
import com.habitrpg.common.habitica.R
import com.habitrpg.common.habitica.extensions.DataBindingUtils
import com.habitrpg.common.habitica.extensions.dpToPx
import com.habitrpg.common.habitica.helpers.AppConfigManager
import com.habitrpg.common.habitica.models.Avatar
import java.util.Date
@ -34,6 +34,7 @@ class AvatarView : FrameLayout {
private var showPet = true
private var showSleeping = true
private var hasBackground: Boolean = false
private var preview: Map<LayerType, String>? = null
private var hasMount: Boolean = false
private var hasPet: Boolean = false
private val imageViewHolder = mutableListOf<ImageView>()
@ -212,7 +213,10 @@ class AvatarView : FrameLayout {
}
var backgroundName = avatar.preferences?.background
if (showBackground && backgroundName?.isNotEmpty() == true) {
if (preview != null) {
layerMap[preview?.keys?.first()] = preview?.values?.first()
if (resetHasAttributes) hasBackground = true
} else if (showBackground && backgroundName?.isNotEmpty() == true) {
backgroundName = substituteOrReturn(spriteSubstitutions["backgrounds"], backgroundName)
layerMap[LayerType.BACKGROUND] = "background_$backgroundName"
if (resetHasAttributes) hasBackground = true
@ -429,9 +433,10 @@ class AvatarView : FrameLayout {
}
}
fun setAvatar(avatar: Avatar) {
fun setAvatar(avatar: Avatar, preview: Map<LayerType, String>? = null) {
val oldUser = this.avatar
this.avatar = avatar
preview?.let { this.preview = preview }
var equals = false
if (oldUser != null) {

View file

@ -4,6 +4,7 @@ plugins {
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
}
apply plugin: 'kotlin-android'
android {
compileSdk 32
@ -65,4 +66,9 @@ dependencies {
implementation "com.google.dagger:hilt-android:2.41"
kapt "com.google.dagger:hilt-compiler:2.41"
implementation "androidx.core:core-ktx:1.7.0"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}
repositories {
mavenCentral()
}