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:
parent
402cab5765
commit
528a29891d
9 changed files with 2 additions and 28 deletions
|
|
@ -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).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
### Fixed
|
||||||
|
- Fixed stale/missing notification badge on some devices
|
||||||
|
|
||||||
## [1.2.2] - 2025-08-01
|
## [1.2.2] - 2025-08-01
|
||||||
### Changed
|
### Changed
|
||||||
|
|
|
||||||
|
|
@ -142,7 +142,6 @@ dependencies {
|
||||||
implementation(libs.eventbus)
|
implementation(libs.eventbus)
|
||||||
implementation(libs.indicator.fast.scroll)
|
implementation(libs.indicator.fast.scroll)
|
||||||
implementation(libs.android.smsmms)
|
implementation(libs.android.smsmms)
|
||||||
implementation(libs.shortcut.badger)
|
|
||||||
implementation(libs.androidx.swiperefreshlayout)
|
implementation(libs.androidx.swiperefreshlayout)
|
||||||
implementation(libs.androidx.constraintlayout)
|
implementation(libs.androidx.constraintlayout)
|
||||||
implementation(libs.androidx.lifecycle.process)
|
implementation(libs.androidx.lifecycle.process)
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,6 @@ import org.fossify.messages.extensions.getConversations
|
||||||
import org.fossify.messages.extensions.getMessages
|
import org.fossify.messages.extensions.getMessages
|
||||||
import org.fossify.messages.extensions.insertOrUpdateConversation
|
import org.fossify.messages.extensions.insertOrUpdateConversation
|
||||||
import org.fossify.messages.extensions.messagesDB
|
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.SEARCHED_MESSAGE_ID
|
||||||
import org.fossify.messages.helpers.THREAD_ID
|
import org.fossify.messages.helpers.THREAD_ID
|
||||||
import org.fossify.messages.helpers.THREAD_TITLE
|
import org.fossify.messages.helpers.THREAD_TITLE
|
||||||
|
|
@ -312,7 +311,6 @@ class MainActivity : SimpleActivity() {
|
||||||
listOf()
|
listOf()
|
||||||
}
|
}
|
||||||
|
|
||||||
updateUnreadCountBadge(conversations)
|
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
setupConversations(conversations, cached = true)
|
setupConversations(conversations, cached = true)
|
||||||
getNewConversations(
|
getNewConversations(
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,6 @@ import com.bumptech.glide.Glide
|
||||||
import com.bumptech.glide.load.engine.DiskCacheStrategy
|
import com.bumptech.glide.load.engine.DiskCacheStrategy
|
||||||
import com.bumptech.glide.request.RequestOptions
|
import com.bumptech.glide.request.RequestOptions
|
||||||
import com.google.android.mms.pdu_alt.PduHeaders
|
import com.google.android.mms.pdu_alt.PduHeaders
|
||||||
import me.leolin.shortcutbadger.ShortcutBadger
|
|
||||||
import org.fossify.commons.extensions.areDigitsOnly
|
import org.fossify.commons.extensions.areDigitsOnly
|
||||||
import org.fossify.commons.extensions.getBlockedNumbers
|
import org.fossify.commons.extensions.getBlockedNumbers
|
||||||
import org.fossify.commons.extensions.getIntValue
|
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")
|
@SuppressLint("NewApi")
|
||||||
fun Context.getThreadId(address: String): Long {
|
fun Context.getThreadId(address: String): Long {
|
||||||
return try {
|
return try {
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,8 @@ import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import org.fossify.commons.extensions.notificationManager
|
import org.fossify.commons.extensions.notificationManager
|
||||||
import org.fossify.commons.helpers.ensureBackgroundThread
|
import org.fossify.commons.helpers.ensureBackgroundThread
|
||||||
import org.fossify.messages.extensions.conversationsDB
|
|
||||||
import org.fossify.messages.extensions.deleteMessage
|
import org.fossify.messages.extensions.deleteMessage
|
||||||
import org.fossify.messages.extensions.updateLastConversationMessage
|
import org.fossify.messages.extensions.updateLastConversationMessage
|
||||||
import org.fossify.messages.extensions.updateUnreadCountBadge
|
|
||||||
import org.fossify.messages.helpers.IS_MMS
|
import org.fossify.messages.helpers.IS_MMS
|
||||||
import org.fossify.messages.helpers.MESSAGE_ID
|
import org.fossify.messages.helpers.MESSAGE_ID
|
||||||
import org.fossify.messages.helpers.THREAD_ID
|
import org.fossify.messages.helpers.THREAD_ID
|
||||||
|
|
@ -23,7 +21,6 @@ class DeleteSmsReceiver : BroadcastReceiver() {
|
||||||
context.notificationManager.cancel(threadId.hashCode())
|
context.notificationManager.cancel(threadId.hashCode())
|
||||||
ensureBackgroundThread {
|
ensureBackgroundThread {
|
||||||
context.deleteMessage(messageId, isMms)
|
context.deleteMessage(messageId, isMms)
|
||||||
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
|
|
||||||
context.updateLastConversationMessage(threadId)
|
context.updateLastConversationMessage(threadId)
|
||||||
refreshMessages()
|
refreshMessages()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import org.fossify.commons.extensions.notificationManager
|
||||||
import org.fossify.commons.helpers.ensureBackgroundThread
|
import org.fossify.commons.helpers.ensureBackgroundThread
|
||||||
import org.fossify.messages.extensions.conversationsDB
|
import org.fossify.messages.extensions.conversationsDB
|
||||||
import org.fossify.messages.extensions.markThreadMessagesRead
|
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.MARK_AS_READ
|
||||||
import org.fossify.messages.helpers.THREAD_ID
|
import org.fossify.messages.helpers.THREAD_ID
|
||||||
import org.fossify.messages.helpers.refreshMessages
|
import org.fossify.messages.helpers.refreshMessages
|
||||||
|
|
@ -21,7 +20,6 @@ class MarkAsReadReceiver : BroadcastReceiver() {
|
||||||
ensureBackgroundThread {
|
ensureBackgroundThread {
|
||||||
context.markThreadMessagesRead(threadId)
|
context.markThreadMessagesRead(threadId)
|
||||||
context.conversationsDB.markRead(threadId)
|
context.conversationsDB.markRead(threadId)
|
||||||
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
|
|
||||||
refreshMessages()
|
refreshMessages()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,12 +14,10 @@ import org.fossify.commons.extensions.showErrorToast
|
||||||
import org.fossify.commons.helpers.SimpleContactsHelper
|
import org.fossify.commons.helpers.SimpleContactsHelper
|
||||||
import org.fossify.commons.helpers.ensureBackgroundThread
|
import org.fossify.commons.helpers.ensureBackgroundThread
|
||||||
import org.fossify.messages.R
|
import org.fossify.messages.R
|
||||||
import org.fossify.messages.extensions.conversationsDB
|
|
||||||
import org.fossify.messages.extensions.getConversations
|
import org.fossify.messages.extensions.getConversations
|
||||||
import org.fossify.messages.extensions.getLatestMMS
|
import org.fossify.messages.extensions.getLatestMMS
|
||||||
import org.fossify.messages.extensions.insertOrUpdateConversation
|
import org.fossify.messages.extensions.insertOrUpdateConversation
|
||||||
import org.fossify.messages.extensions.showReceivedMessageNotification
|
import org.fossify.messages.extensions.showReceivedMessageNotification
|
||||||
import org.fossify.messages.extensions.updateUnreadCountBadge
|
|
||||||
import org.fossify.messages.helpers.ReceiverUtils.isMessageFilteredOut
|
import org.fossify.messages.helpers.ReceiverUtils.isMessageFilteredOut
|
||||||
import org.fossify.messages.helpers.refreshMessages
|
import org.fossify.messages.helpers.refreshMessages
|
||||||
import org.fossify.messages.models.Message
|
import org.fossify.messages.models.Message
|
||||||
|
|
@ -90,7 +88,6 @@ class MmsReceiver : MmsReceivedReceiver() {
|
||||||
val conversation = context.getConversations(mms.threadId).firstOrNull()
|
val conversation = context.getConversations(mms.threadId).firstOrNull()
|
||||||
?: return@ensureBackgroundThread
|
?: return@ensureBackgroundThread
|
||||||
context.insertOrUpdateConversation(conversation)
|
context.insertOrUpdateConversation(conversation)
|
||||||
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
|
|
||||||
refreshMessages()
|
refreshMessages()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,11 +84,6 @@ class SmsReceiver : BroadcastReceiver() {
|
||||||
} catch (ignored: Exception) {
|
} catch (ignored: Exception) {
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
|
||||||
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
|
|
||||||
} catch (ignored: Exception) {
|
|
||||||
}
|
|
||||||
|
|
||||||
val senderName = context.getNameFromAddress(address, privateCursor)
|
val senderName = context.getNameFromAddress(address, privateCursor)
|
||||||
val phoneNumber = PhoneNumber(address, 0, "", address)
|
val phoneNumber = PhoneNumber(address, 0, "", address)
|
||||||
val participant = SimpleContact(0, 0, senderName, photoUri, arrayListOf(phoneNumber), ArrayList(), ArrayList())
|
val participant = SimpleContact(0, 0, senderName, photoUri, arrayListOf(phoneNumber), ArrayList(), ArrayList())
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,6 @@ app-build-javaVersion = "VERSION_17"
|
||||||
app-build-kotlinJVMTarget = "17"
|
app-build-kotlinJVMTarget = "17"
|
||||||
#Helpers
|
#Helpers
|
||||||
ez-vcard = "0.12.1"
|
ez-vcard = "0.12.1"
|
||||||
shortcut-badger = "1.1.22"
|
|
||||||
[libraries]
|
[libraries]
|
||||||
#AndroidX
|
#AndroidX
|
||||||
androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintlayout" }
|
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" }
|
eventbus = { module = "org.greenrobot:eventbus", version.ref = "eventbus" }
|
||||||
#Helpers
|
#Helpers
|
||||||
ez-vcard = { module = "com.googlecode.ez-vcard:ez-vcard", version.ref = "ez-vcard" }
|
ez-vcard = { module = "com.googlecode.ez-vcard:ez-vcard", version.ref = "ez-vcard" }
|
||||||
shortcut-badger = { module = "me.leolin:ShortcutBadger", version.ref = "shortcut-badger" }
|
|
||||||
#Kotlin
|
#Kotlin
|
||||||
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinxSerializationJson" }
|
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinxSerializationJson" }
|
||||||
[bundles]
|
[bundles]
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue