fix: remove shortcut badger (#484)

* fix: remove shortcut badger
* docs: update changelog

Refs: https://github.com/FossifyOrg/Messages/issues/64, https://github.com/FossifyOrg/Messages/issues/483
This commit is contained in:
Naveen Singh 2025-08-11 18:48:44 +05:30 committed by GitHub
parent 402cab5765
commit 528a29891d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 2 additions and 28 deletions

View file

@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Fixed
- Fixed stale/missing notification badge on some devices
## [1.2.2] - 2025-08-01
### Changed

View file

@ -142,7 +142,6 @@ dependencies {
implementation(libs.eventbus)
implementation(libs.indicator.fast.scroll)
implementation(libs.android.smsmms)
implementation(libs.shortcut.badger)
implementation(libs.androidx.swiperefreshlayout)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.lifecycle.process)

View file

@ -66,7 +66,6 @@ import org.fossify.messages.extensions.getConversations
import org.fossify.messages.extensions.getMessages
import org.fossify.messages.extensions.insertOrUpdateConversation
import org.fossify.messages.extensions.messagesDB
import org.fossify.messages.extensions.updateUnreadCountBadge
import org.fossify.messages.helpers.SEARCHED_MESSAGE_ID
import org.fossify.messages.helpers.THREAD_ID
import org.fossify.messages.helpers.THREAD_TITLE
@ -312,7 +311,6 @@ class MainActivity : SimpleActivity() {
listOf()
}
updateUnreadCountBadge(conversations)
runOnUiThread {
setupConversations(conversations, cached = true)
getNewConversations(

View file

@ -26,7 +26,6 @@ import com.bumptech.glide.Glide
import com.bumptech.glide.load.engine.DiskCacheStrategy
import com.bumptech.glide.request.RequestOptions
import com.google.android.mms.pdu_alt.PduHeaders
import me.leolin.shortcutbadger.ShortcutBadger
import org.fossify.commons.extensions.areDigitsOnly
import org.fossify.commons.extensions.getBlockedNumbers
import org.fossify.commons.extensions.getIntValue
@ -1005,15 +1004,6 @@ fun Context.markThreadMessagesUnread(threadId: Long) {
}
}
fun Context.updateUnreadCountBadge(conversations: List<Conversation>) {
val unreadCount = conversations.count { !it.read }
if (unreadCount == 0) {
ShortcutBadger.removeCount(this)
} else {
ShortcutBadger.applyCount(this, unreadCount)
}
}
@SuppressLint("NewApi")
fun Context.getThreadId(address: String): Long {
return try {

View file

@ -5,10 +5,8 @@ import android.content.Context
import android.content.Intent
import org.fossify.commons.extensions.notificationManager
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.messages.extensions.conversationsDB
import org.fossify.messages.extensions.deleteMessage
import org.fossify.messages.extensions.updateLastConversationMessage
import org.fossify.messages.extensions.updateUnreadCountBadge
import org.fossify.messages.helpers.IS_MMS
import org.fossify.messages.helpers.MESSAGE_ID
import org.fossify.messages.helpers.THREAD_ID
@ -23,7 +21,6 @@ class DeleteSmsReceiver : BroadcastReceiver() {
context.notificationManager.cancel(threadId.hashCode())
ensureBackgroundThread {
context.deleteMessage(messageId, isMms)
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
context.updateLastConversationMessage(threadId)
refreshMessages()
}

View file

@ -7,7 +7,6 @@ import org.fossify.commons.extensions.notificationManager
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.messages.extensions.conversationsDB
import org.fossify.messages.extensions.markThreadMessagesRead
import org.fossify.messages.extensions.updateUnreadCountBadge
import org.fossify.messages.helpers.MARK_AS_READ
import org.fossify.messages.helpers.THREAD_ID
import org.fossify.messages.helpers.refreshMessages
@ -21,7 +20,6 @@ class MarkAsReadReceiver : BroadcastReceiver() {
ensureBackgroundThread {
context.markThreadMessagesRead(threadId)
context.conversationsDB.markRead(threadId)
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
refreshMessages()
}
}

View file

@ -14,12 +14,10 @@ import org.fossify.commons.extensions.showErrorToast
import org.fossify.commons.helpers.SimpleContactsHelper
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.messages.R
import org.fossify.messages.extensions.conversationsDB
import org.fossify.messages.extensions.getConversations
import org.fossify.messages.extensions.getLatestMMS
import org.fossify.messages.extensions.insertOrUpdateConversation
import org.fossify.messages.extensions.showReceivedMessageNotification
import org.fossify.messages.extensions.updateUnreadCountBadge
import org.fossify.messages.helpers.ReceiverUtils.isMessageFilteredOut
import org.fossify.messages.helpers.refreshMessages
import org.fossify.messages.models.Message
@ -90,7 +88,6 @@ class MmsReceiver : MmsReceivedReceiver() {
val conversation = context.getConversations(mms.threadId).firstOrNull()
?: return@ensureBackgroundThread
context.insertOrUpdateConversation(conversation)
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
refreshMessages()
}
}

View file

@ -84,11 +84,6 @@ class SmsReceiver : BroadcastReceiver() {
} catch (ignored: Exception) {
}
try {
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
} catch (ignored: Exception) {
}
val senderName = context.getNameFromAddress(address, privateCursor)
val phoneNumber = PhoneNumber(address, 0, "", address)
val participant = SimpleContact(0, 0, senderName, photoUri, arrayListOf(phoneNumber), ArrayList(), ArrayList())

View file

@ -29,7 +29,6 @@ app-build-javaVersion = "VERSION_17"
app-build-kotlinJVMTarget = "17"
#Helpers
ez-vcard = "0.12.1"
shortcut-badger = "1.1.22"
[libraries]
#AndroidX
androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintlayout" }
@ -49,7 +48,6 @@ android-smsmms = { module = "org.fossify:android-smsmms", version.ref = "android
eventbus = { module = "org.greenrobot:eventbus", version.ref = "eventbus" }
#Helpers
ez-vcard = { module = "com.googlecode.ez-vcard:ez-vcard", version.ref = "ez-vcard" }
shortcut-badger = { module = "me.leolin:ShortcutBadger", version.ref = "shortcut-badger" }
#Kotlin
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinxSerializationJson" }
[bundles]