Add fun to delete conversation avatar

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
Marcel Hibbe 2023-04-24 13:23:09 +02:00
parent 0063fa8c10
commit d6cec7f6b7
No known key found for this signature in database
GPG Key ID: C793F8B59F43CE7B

View File

@ -203,7 +203,7 @@ class ConversationInfoActivity :
binding.avatarUpload.setOnClickListener { pickImage.selectLocal() }
binding.avatarChoose.setOnClickListener { pickImage.selectRemote() }
binding.avatarCamera.setOnClickListener { pickImage.takePicture() }
binding.avatarDelete.setOnClickListener {}
binding.avatarDelete.setOnClickListener { deleteAvatar() }
binding.avatarImage.let { ViewCompat.setTransitionName(it, "userAvatar.transitionTag") }
}
@ -242,7 +242,7 @@ class ConversationInfoActivity :
// upload file
ncApi.uploadAvatar(
ApiUtils.getCredentials(conversationUser.username, conversationUser.token),
credentials,
ApiUtils.getUrlForConversationAvatar(1, conversationUser.baseUrl, conversation!!.token),
filePart
)
@ -272,6 +272,41 @@ class ConversationInfoActivity :
})
}
private fun deleteAvatar() {
ncApi.deleteAvatar(
credentials,
ApiUtils.getUrlForConversationAvatar(1, conversationUser.baseUrl, conversationToken)
)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(object : Observer<GenericOverall> {
override fun onSubscribe(d: Disposable) {
// unused atm
}
override fun onNext(genericOverall: GenericOverall) {
DisplayUtils.loadAvatarImage(
conversationUser,
binding.avatarImage,
true
)
}
override fun onError(e: Throwable) {
Toast.makeText(
applicationContext,
context.getString(R.string.default_error_msg),
Toast.LENGTH_LONG
).show()
Log.e(TAG, "Failed to delete avatar", e)
}
override fun onComplete() {
// unused atm
}
})
}
private fun setupActionBar() {
setSupportActionBar(binding.conversationInfoToolbar)
binding.conversationInfoToolbar.setNavigationOnClickListener {