From 364af7908a782f708b29c094de45faf80542f255 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Wed, 21 May 2025 20:03:06 +0200 Subject: [PATCH 1/3] ktlintFormat Signed-off-by: sowjanyakch --- .../talk/extensions/ImageViewExtensions.kt | 5 +++++ app/src/main/res/drawable/outline_call_24.xml | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 app/src/main/res/drawable/outline_call_24.xml diff --git a/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt b/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt index ae058621e..523042e6c 100644 --- a/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt +++ b/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt @@ -206,6 +206,11 @@ fun ImageView.loadAvatarWithUrl(user: User? = null, url: String): io.reactivex.d return loadAvatarInternal(user, url, false, null) } +fun ImageView.loadPhoneAvatar(viewThemeUtils: ViewThemeUtils): io.reactivex.disposables.Disposable { + val data: Any = viewThemeUtils.talk.themePlaceholderAvatar(this, R.drawable.outline_call_24) as Any + return loadUserAvatar(data) +} + fun ImageView.loadThumbnail(url: String, user: User): io.reactivex.disposables.Disposable { val requestBuilder = ImageRequest.Builder(context) .data(url) diff --git a/app/src/main/res/drawable/outline_call_24.xml b/app/src/main/res/drawable/outline_call_24.xml new file mode 100644 index 000000000..b1aac7380 --- /dev/null +++ b/app/src/main/res/drawable/outline_call_24.xml @@ -0,0 +1,19 @@ + + + + + + + From 799b19d03a6cc6265d40b3777421aa3299314e22 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Tue, 27 May 2025 17:01:39 +0200 Subject: [PATCH 2/3] add drawable and use existing icon Signed-off-by: sowjanyakch --- .../talk/adapters/items/ParticipantItem.kt | 5 +++++ .../talk/chat/data/model/ChatMessage.kt | 3 ++- .../talk/extensions/ImageViewExtensions.kt | 4 ++-- .../json/converters/EnumActorTypeConverter.kt | 4 ++++ .../EnumSystemMessageTypeConverter.kt | 5 ++++- .../models/json/participants/Participant.kt | 3 ++- app/src/main/res/drawable/outline_call_24.xml | 19 ------------------- 7 files changed, 19 insertions(+), 24 deletions(-) delete mode 100644 app/src/main/res/drawable/outline_call_24.xml diff --git a/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt b/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt index 0d7d53083..787269849 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt @@ -25,6 +25,7 @@ import com.nextcloud.talk.extensions.loadDefaultAvatar import com.nextcloud.talk.extensions.loadDefaultGroupCallAvatar import com.nextcloud.talk.extensions.loadFederatedUserAvatar import com.nextcloud.talk.extensions.loadFirstLetterAvatar +import com.nextcloud.talk.extensions.loadPhoneAvatar import com.nextcloud.talk.extensions.loadTeamAvatar import com.nextcloud.talk.extensions.loadUserAvatar import com.nextcloud.talk.models.domain.ConversationModel @@ -242,6 +243,10 @@ class ParticipantItem( ) } + Participant.ActorType.PHONES ->{ + holder.binding.avatarView.loadPhoneAvatar(viewThemeUtils) + } + else -> { Log.w(TAG, "Avatar not shown because of unknown ActorType " + model.calculatedActorType) } diff --git a/app/src/main/java/com/nextcloud/talk/chat/data/model/ChatMessage.kt b/app/src/main/java/com/nextcloud/talk/chat/data/model/ChatMessage.kt index 3be97d912..151f02551 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/data/model/ChatMessage.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/data/model/ChatMessage.kt @@ -422,7 +422,8 @@ data class ChatMessage( AVATAR_SET, AVATAR_REMOVED, FEDERATED_USER_ADDED, - FEDERATED_USER_REMOVED + FEDERATED_USER_REMOVED, + PHONE_ADDED } companion object { diff --git a/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt b/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt index 523042e6c..3b18c225a 100644 --- a/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt +++ b/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt @@ -207,8 +207,8 @@ fun ImageView.loadAvatarWithUrl(user: User? = null, url: String): io.reactivex.d } fun ImageView.loadPhoneAvatar(viewThemeUtils: ViewThemeUtils): io.reactivex.disposables.Disposable { - val data: Any = viewThemeUtils.talk.themePlaceholderAvatar(this, R.drawable.outline_call_24) as Any - return loadUserAvatar(data) + val drawable = viewThemeUtils.talk.themePlaceholderAvatar(this, R.drawable.ic_phone) + return loadUserAvatar(drawable) } fun ImageView.loadThumbnail(url: String, user: User): io.reactivex.disposables.Disposable { diff --git a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt index 1cb703a56..e59d26119 100644 --- a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt +++ b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt @@ -16,6 +16,8 @@ import com.nextcloud.talk.models.json.participants.Participant.ActorType.FEDERAT import com.nextcloud.talk.models.json.participants.Participant.ActorType.GROUPS import com.nextcloud.talk.models.json.participants.Participant.ActorType.GUESTS import com.nextcloud.talk.models.json.participants.Participant.ActorType.USERS +import com.nextcloud.talk.models.json.participants.Participant.ActorType.PHONES + class EnumActorTypeConverter : StringBasedTypeConverter() { override fun getFromString(string: String?): Participant.ActorType { @@ -26,6 +28,7 @@ class EnumActorTypeConverter : StringBasedTypeConverter() "users" -> USERS "circles" -> CIRCLES "federated_users" -> FEDERATED + "phones" -> PHONES else -> DUMMY } } @@ -42,6 +45,7 @@ class EnumActorTypeConverter : StringBasedTypeConverter() USERS -> "users" CIRCLES -> "circles" FEDERATED -> "federated_users" + PHONES -> "phones" else -> "" } } diff --git a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt index 9613c8f82..f2a9507c7 100644 --- a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt +++ b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt @@ -71,6 +71,7 @@ import com.nextcloud.talk.chat.data.model.ChatMessage.SystemMessageType.RECORDIN import com.nextcloud.talk.chat.data.model.ChatMessage.SystemMessageType.RECORDING_STOPPED import com.nextcloud.talk.chat.data.model.ChatMessage.SystemMessageType.USER_ADDED import com.nextcloud.talk.chat.data.model.ChatMessage.SystemMessageType.USER_REMOVED +import com.nextcloud.talk.chat.data.model.ChatMessage.SystemMessageType.PHONE_ADDED /* * see https://nextcloud-talk.readthedocs.io/en/latest/chat/#system-messages @@ -141,7 +142,8 @@ class EnumSystemMessageTypeConverter : StringBasedTypeConverter AVATAR_REMOVED "federated_user_added" -> FEDERATED_USER_ADDED "federated_user_removed" -> FEDERATED_USER_REMOVED - else -> DUMMY + "phone_added" -> PHONE_ADDED + else -> DUMMY } } @@ -210,6 +212,7 @@ class EnumSystemMessageTypeConverter : StringBasedTypeConverter "avatar_removed" FEDERATED_USER_ADDED -> "federated_user_added" FEDERATED_USER_REMOVED -> "federated_user_removed" + PHONE_ADDED -> "phone_added" else -> "" } } diff --git a/app/src/main/java/com/nextcloud/talk/models/json/participants/Participant.kt b/app/src/main/java/com/nextcloud/talk/models/json/participants/Participant.kt index ae8b374c9..0583c47fe 100644 --- a/app/src/main/java/com/nextcloud/talk/models/json/participants/Participant.kt +++ b/app/src/main/java/com/nextcloud/talk/models/json/participants/Participant.kt @@ -117,7 +117,8 @@ data class Participant( GUESTS, USERS, CIRCLES, - FEDERATED + FEDERATED, + PHONES } enum class ParticipantType { diff --git a/app/src/main/res/drawable/outline_call_24.xml b/app/src/main/res/drawable/outline_call_24.xml deleted file mode 100644 index b1aac7380..000000000 --- a/app/src/main/res/drawable/outline_call_24.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - From ef71e5f04eab81f115dd2bf31bf982e5e0a78d61 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Fri, 30 May 2025 16:03:12 +0200 Subject: [PATCH 3/3] ktlintFormat Signed-off-by: sowjanyakch --- .../java/com/nextcloud/talk/adapters/items/ParticipantItem.kt | 2 +- .../talk/models/json/converters/EnumActorTypeConverter.kt | 1 - .../models/json/converters/EnumSystemMessageTypeConverter.kt | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt b/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt index 787269849..95c0150f8 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/items/ParticipantItem.kt @@ -243,7 +243,7 @@ class ParticipantItem( ) } - Participant.ActorType.PHONES ->{ + Participant.ActorType.PHONES -> { holder.binding.avatarView.loadPhoneAvatar(viewThemeUtils) } diff --git a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt index e59d26119..a8b70ddc4 100644 --- a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt +++ b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumActorTypeConverter.kt @@ -18,7 +18,6 @@ import com.nextcloud.talk.models.json.participants.Participant.ActorType.GUESTS import com.nextcloud.talk.models.json.participants.Participant.ActorType.USERS import com.nextcloud.talk.models.json.participants.Participant.ActorType.PHONES - class EnumActorTypeConverter : StringBasedTypeConverter() { override fun getFromString(string: String?): Participant.ActorType { return when (string) { diff --git a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt index f2a9507c7..7aa081aa1 100644 --- a/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt +++ b/app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.kt @@ -143,7 +143,7 @@ class EnumSystemMessageTypeConverter : StringBasedTypeConverter FEDERATED_USER_ADDED "federated_user_removed" -> FEDERATED_USER_REMOVED "phone_added" -> PHONE_ADDED - else -> DUMMY + else -> DUMMY } }