diff --git a/app/src/main/java/org/linphone/ui/main/contacts/fragment/EditContactFragment.kt b/app/src/main/java/org/linphone/ui/main/contacts/fragment/EditContactFragment.kt
index 693e8d881..588491eb9 100644
--- a/app/src/main/java/org/linphone/ui/main/contacts/fragment/EditContactFragment.kt
+++ b/app/src/main/java/org/linphone/ui/main/contacts/fragment/EditContactFragment.kt
@@ -139,6 +139,10 @@ class EditContactFragment : GenericFragment() {
pickImage()
}
+ binding.setDeleteImageClickListener {
+ viewModel.picturePath.value = ""
+ }
+
viewModel.saveChangesEvent.observe(viewLifecycleOwner) {
it.consume { refKey ->
if (refKey.isNotEmpty()) {
diff --git a/app/src/main/java/org/linphone/ui/main/contacts/fragment/NewContactFragment.kt b/app/src/main/java/org/linphone/ui/main/contacts/fragment/NewContactFragment.kt
index b6c64e61a..4e00e3ce0 100644
--- a/app/src/main/java/org/linphone/ui/main/contacts/fragment/NewContactFragment.kt
+++ b/app/src/main/java/org/linphone/ui/main/contacts/fragment/NewContactFragment.kt
@@ -126,6 +126,10 @@ class NewContactFragment : GenericFragment() {
pickImage()
}
+ binding.setDeleteImageClickListener {
+ viewModel.picturePath.value = ""
+ }
+
viewModel.saveChangesEvent.observe(viewLifecycleOwner) {
it.consume { refKey ->
if (refKey.isNotEmpty()) {
diff --git a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt
index 89dd767da..eb5963990 100644
--- a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt
+++ b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt
@@ -102,7 +102,10 @@ class ContactNewOrEditViewModel @UiThread constructor() : ViewModel() {
// TODO ? What to do when vCard is null
}
- picturePath.postValue(friend.photo)
+ val photo = friend.photo.orEmpty()
+ if (photo.isNotEmpty()) {
+ picturePath.postValue(photo)
+ }
for (address in friend.addresses) {
addSipAddress(address.asStringUriOnly())
@@ -146,6 +149,8 @@ class ContactNewOrEditViewModel @UiThread constructor() : ViewModel() {
val picture = picturePath.value.orEmpty()
if (picture.isNotEmpty()) {
friend.photo = FileUtils.getProperFilePath(picture)
+ } else {
+ friend.photo = null
}
}
diff --git a/app/src/main/java/org/linphone/ui/main/settings/fragment/AccountProfileFragment.kt b/app/src/main/java/org/linphone/ui/main/settings/fragment/AccountProfileFragment.kt
index 5b51bb473..77e8f077a 100644
--- a/app/src/main/java/org/linphone/ui/main/settings/fragment/AccountProfileFragment.kt
+++ b/app/src/main/java/org/linphone/ui/main/settings/fragment/AccountProfileFragment.kt
@@ -83,6 +83,10 @@ class AccountProfileFragment : GenericFragment() {
pickImage()
}
+ binding.setDeleteImageClickListener {
+ viewModel.setNewPicturePath("")
+ }
+
binding.setChangeModeClickListener {
val action = AccountProfileFragmentDirections.actionAccountProfileFragmentToAccountProfileModeFragment()
findNavController().navigate(action)
diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt
index 81fa014f1..1ced18665 100644
--- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt
+++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt
@@ -133,6 +133,9 @@ class AccountProfileViewModel @UiThread constructor() : ViewModel() {
if (path.isNotEmpty() && path != params.pictureUri) {
Log.i("$TAG New account profile picture [$path]")
copy.pictureUri = path
+ } else {
+ Log.i("$TAG Account profile picture removed")
+ copy.pictureUri = null
}
accountModel.value?.avatar?.postValue(path)
diff --git a/app/src/main/res/layout/account_profile_fragment.xml b/app/src/main/res/layout/account_profile_fragment.xml
index 04f9cb2dd..408b615da 100644
--- a/app/src/main/res/layout/account_profile_fragment.xml
+++ b/app/src/main/res/layout/account_profile_fragment.xml
@@ -11,6 +11,9 @@
+
@@ -108,17 +111,6 @@
app:layout_constraintStart_toStartOf="@id/avatar"
app:layout_constraintBottom_toBottomOf="@id/avatar"/>
-
-
+
+
+
+
+
+
+ app:layout_constraintTop_toBottomOf="@id/avatar_barrier"/>
+
@@ -99,6 +102,7 @@
app:layout_constraintBottom_toBottomOf="@id/avatar" />
+
+
+
+
+
+
+ app:layout_constraintTop_toBottomOf="@id/avatar_barrier"/>
Devices
Add a picture
Edit picture
+ Remove picture
This account in online, everybody can call you.
Account has been disabled, you won\'t receive any call or message.
Account is connecting to the server, please wait…