diff --git a/common/src/main/java/com/habitrpg/common/habitica/extensions/DataBindingUtils.kt b/common/src/main/java/com/habitrpg/common/habitica/extensions/DataBindingUtils.kt index 962ec3350..e9f3f2b0c 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/extensions/DataBindingUtils.kt +++ b/common/src/main/java/com/habitrpg/common/habitica/extensions/DataBindingUtils.kt @@ -98,7 +98,8 @@ object DataBindingUtils { fun getFullFilename( imageName: String, - imageFormat: String? = null + imageFormat: String? = null, + disableAnimations: Boolean = false ): String { val name = when { @@ -108,7 +109,7 @@ object DataBindingUtils { else -> imageName } return name + - if (!disableAnimations && imageFormat == null && FILEFORMAT_MAP.containsKey(imageName)) { + if (!this.disableAnimations && !disableAnimations && imageFormat == null && FILEFORMAT_MAP.containsKey(imageName)) { "." + FILEFORMAT_MAP[imageName] } else if (!disableAnimations) { ".${imageFormat ?: "png"}" diff --git a/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt b/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt index ca80a1574..927dc4996 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt +++ b/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt @@ -39,6 +39,7 @@ class AvatarView : FrameLayout { private var showPet = true private var showSleeping = true private var hasBackground: Boolean = false + private var canAnimate: Boolean = true private var preview: Map? = null private var hasMount: Boolean = false private var hasPet: Boolean = false @@ -122,10 +123,11 @@ class AvatarView : FrameLayout { init(attrs, defStyle) } - constructor(context: Context, showBackground: Boolean, showMount: Boolean, showPet: Boolean) : super(context) { + constructor(context: Context, showBackground: Boolean, showMount: Boolean, showPet: Boolean, canAnimate: Boolean = true) : super(context) { this.showBackground = showBackground this.showMount = showMount this.showPet = showPet + this.canAnimate = canAnimate } private fun init( @@ -185,7 +187,8 @@ class AvatarView : FrameLayout { imageView.load( DataBindingUtils.BASE_IMAGE_URL + DataBindingUtils.getFullFilename( - layerName + layerName, + disableAnimations = !canAnimate ) ) { allowHardware(false)