Closed Potterd closed 2 months ago
Normally, apps usually reset the badge value to however many unread messages there are when you open an app, which was the behaviour in version 1.0.0 of the tweak since I didn't modify that part
But it led to weird behaviour where the badges you dismissed with BadgeSync reappeared if you didn't manually read them all before closing the app, since they were all originally unread
And then you would be left with badges without any notification to pair with them which was confusing for people
So I ended up blocking that behaviour in 1.1.0 and forced the badge value to match the number of notifs in the notif centre instead
IMO I still think I prefer the current behaviour since it aligns more with the idea of "syncing" the badges with the notif centre
In this example there is no notification. The behavior of the app is different depending on whether BadgeSync is active or inactive. BadgeSync changes how the app behaves, even though there is no notification involved. This seems like a problem to me but I don't have any recommendation at this point, except not to use the tweak with mail apps since mail apps can also modify the badge. If the user doesn't want to see the badge count with the mail app, they can simply turn it off. One possible solution is to not allow the tweak to modify the badges for mail apps. Will consider further .....
BadgeSync changes how the app behaves, even though there is no notification involved
Code wise, without making the tweak really complex, I can't really distinguish between when the app is reverting the badge value set by BadgeSync, or if the app is changing the badge in response to a manual "mark as unread"
I can either always force the badge value to match the # of notifs (current behaviour), or I let the app do its own thing, which leads to something like this happening:
One possible solution is to not allow the tweak to modify the badges for mail apps
But this also happens with other messaging apps like iMessage and Discord, so I think a more general approach is better
I guess this approach makes sense. Because you have added the application list, the user can control the behavior.
With this tweak installed and active for the Outlook app:
If I change the status of a message to "unread", I expect the badge to be re-displayed. With BadgeSync installed there is no badge re-displayed. With BadgeSync removed the behavior is as expected - the badge is re-displayed.
In this situation, BadgeSync is removing the Badge even though this action is not related to the clearing of a notification. The expectation is that the badge will only be removed / deprecated as a result of the clearing of a notification.