Fix backup sharing from notifications not working when app is in background (#1929)

This commit is contained in:
Jayman Rana
2025-03-27 13:41:30 -04:00
committed by GitHub
parent 941dde341e
commit 3e5d3d099f
3 changed files with 7 additions and 7 deletions

View File

@ -17,6 +17,7 @@ The format is a modified version of [Keep a Changelog](https://keepachangelog.co
### Fixes ### Fixes
- Fix Bangumi search results including novels ([@MajorTanya](https://github.com/MajorTanya)) ([#1885](https://github.com/mihonapp/mihon/pull/1885)) - Fix Bangumi search results including novels ([@MajorTanya](https://github.com/MajorTanya)) ([#1885](https://github.com/mihonapp/mihon/pull/1885))
- Fix next chapter button occasionally jumping to the last page of the current chapter ([@perokhe](https://github.com/perokhe)) ([#1920](https://github.com/mihonapp/mihon/pull/1920)) - Fix next chapter button occasionally jumping to the last page of the current chapter ([@perokhe](https://github.com/perokhe)) ([#1920](https://github.com/mihonapp/mihon/pull/1920))
- Fix backup sharing from notifications not working when app is in background ([@JaymanR](https://github.com/JaymanR))([#1929](https://github.com/mihonapp/mihon/pull/1929))
## [v0.18.0] - 2025-03-20 ## [v0.18.0] - 2025-03-20
### Added ### Added

View File

@ -80,7 +80,7 @@ class BackupNotifier(private val context: Context) {
addAction( addAction(
R.drawable.ic_share_24dp, R.drawable.ic_share_24dp,
context.stringResource(MR.strings.action_share), context.stringResource(MR.strings.action_share),
NotificationReceiver.shareBackupPendingBroadcast(context, file.uri), NotificationReceiver.shareBackupPendingActivity(context, file.uri),
) )
show(Notifications.ID_BACKUP_COMPLETE) show(Notifications.ID_BACKUP_COMPLETE)

View File

@ -583,18 +583,17 @@ class NotificationReceiver : BroadcastReceiver() {
} }
/** /**
* Returns [PendingIntent] that starts a share activity for a backup file. * Returns [PendingIntent] that directly launches a share activity for a backup file.
* *
* @param context context of application * @param context context of application
* @param uri uri of backup file * @param uri uri of backup file
* @return [PendingIntent] * @return [PendingIntent]
*/ */
internal fun shareBackupPendingBroadcast(context: Context, uri: Uri): PendingIntent { internal fun shareBackupPendingActivity(context: Context, uri: Uri): PendingIntent {
val intent = Intent(context, NotificationReceiver::class.java).apply { val intent = uri.toShareIntent(context, "application/x-protobuf+gzip").apply {
action = ACTION_SHARE_BACKUP addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_GRANT_READ_URI_PERMISSION)
putExtra(EXTRA_URI, uri)
} }
return PendingIntent.getBroadcast( return PendingIntent.getActivity(
context, context,
0, 0,
intent, intent,