From 1f26c25fe96816ee493bae6bbb713f3621199047 Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Wed, 5 Nov 2025 11:44:20 -0600 Subject: [PATCH] fix(#3622): Do not favorite node when sending a dm from a CLIENT_BASE device (#3623) --- .../org/meshtastic/feature/messaging/MessageViewModel.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/feature/messaging/src/main/kotlin/org/meshtastic/feature/messaging/MessageViewModel.kt b/feature/messaging/src/main/kotlin/org/meshtastic/feature/messaging/MessageViewModel.kt index 04b9bba49..0864b9dcf 100644 --- a/feature/messaging/src/main/kotlin/org/meshtastic/feature/messaging/MessageViewModel.kt +++ b/feature/messaging/src/main/kotlin/org/meshtastic/feature/messaging/MessageViewModel.kt @@ -42,6 +42,7 @@ import org.meshtastic.core.service.MeshServiceNotifications import org.meshtastic.core.service.ServiceAction import org.meshtastic.core.service.ServiceRepository import org.meshtastic.core.ui.viewmodel.stateInWhileSubscribed +import org.meshtastic.proto.ConfigProtos.Config.DeviceConfig.Role import org.meshtastic.proto.channelSet import org.meshtastic.proto.sharedContact import timber.log.Timber @@ -130,7 +131,7 @@ constructor( if (channel == null) { // no channel specified, so we assume it's a direct message val fwVersion = ourNodeInfo.value?.metadata?.firmwareVersion val destNode = nodeRepository.getNode(dest) - + val isClientBase = ourNodeInfo.value?.user?.role == Role.CLIENT_BASE fwVersion?.let { fw -> val ver = DeviceVersion(asString = fw) val verifiedSharedContactsVersion = @@ -141,7 +142,7 @@ constructor( if (ver >= verifiedSharedContactsVersion) { sendSharedContact(destNode) } else { - if (!destNode.isFavorite) { + if (!destNode.isFavorite && !isClientBase) { favoriteNode(destNode) } }