Fix Intent flags
This commit is contained in:
+3
-1
@@ -15,6 +15,7 @@ import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
|
||||
import org.chromium.base.ContextUtils;
|
||||
import org.chromium.base.IntentUtils;
|
||||
import org.chromium.chrome.R;
|
||||
import org.chromium.chrome.browser.app.BraveActivity;
|
||||
import org.chromium.chrome.browser.dialogs.BraveAdsNotificationDialog;
|
||||
@@ -84,7 +85,8 @@ public class BraveOnboardingNotification extends BroadcastReceiver {
|
||||
Intent intent = new Intent(context, BraveOnboardingNotification.class);
|
||||
intent.setAction(DEEP_LINK);
|
||||
return new PendingIntentProvider(
|
||||
PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT),
|
||||
PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT
|
||||
| IntentUtils.getPendingIntentMutabilityFlag(true)),
|
||||
0, 0);
|
||||
}
|
||||
|
||||
|
||||
+8
-4
@@ -22,6 +22,7 @@ import android.provider.Settings;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
|
||||
import org.chromium.base.ContextUtils;
|
||||
import org.chromium.base.IntentUtils;
|
||||
import org.chromium.base.task.PostTask;
|
||||
import org.chromium.base.task.TaskTraits;
|
||||
import org.chromium.chrome.R;
|
||||
@@ -139,7 +140,8 @@ public class BraveSetDefaultBrowserNotificationService extends BroadcastReceiver
|
||||
intent.setAction(DEEP_LINK);
|
||||
intent.putExtra(DEEP_LINK, SHOW_DEFAULT_APP_SETTINGS);
|
||||
intent.putExtra(NOTIFICATION_ID_EXTRA, NOTIFICATION_ID);
|
||||
return PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
return PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT
|
||||
| IntentUtils.getPendingIntentMutabilityFlag(true));
|
||||
}
|
||||
|
||||
public static PendingIntent getDismissIntent(Context context, int notification_id) {
|
||||
@@ -147,7 +149,7 @@ public class BraveSetDefaultBrowserNotificationService extends BroadcastReceiver
|
||||
intent.setAction(CANCEL_NOTIFICATION);
|
||||
intent.putExtra(NOTIFICATION_ID_EXTRA, notification_id);
|
||||
|
||||
return PendingIntent.getBroadcast(context, notification_id, intent, 0);
|
||||
return PendingIntent.getBroadcast(context, notification_id, intent, 0 | IntentUtils.getPendingIntentMutabilityFlag(true));
|
||||
}
|
||||
|
||||
private boolean hasAskedAt1122() {
|
||||
@@ -177,8 +179,10 @@ public class BraveSetDefaultBrowserNotificationService extends BroadcastReceiver
|
||||
Intent intent = new Intent(mContext, BraveSetDefaultBrowserNotificationService.class);
|
||||
intent.putExtra(INTENT_TYPE, AT_11_22);
|
||||
intent.setAction(AT_11_22);
|
||||
am.setExact(AlarmManager.RTC_WAKEUP, currentTime.getTimeInMillis(),
|
||||
PendingIntent.getBroadcast(mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
am.set(AlarmManager.RTC_WAKEUP, currentTime.getTimeInMillis(),
|
||||
PendingIntent.getBroadcast(mContext, 0, intent,
|
||||
PendingIntent.FLAG_UPDATE_CURRENT
|
||||
| IntentUtils.getPendingIntentMutabilityFlag(true)));
|
||||
}
|
||||
|
||||
private void handleBraveSetDefaultBrowserDeepLink(Intent intent) {
|
||||
|
||||
+8
-4
@@ -15,6 +15,7 @@ import android.util.Pair;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
|
||||
import org.chromium.base.ContextUtils;
|
||||
import org.chromium.base.IntentUtils;
|
||||
import org.chromium.base.Log;
|
||||
import org.chromium.chrome.R;
|
||||
import org.chromium.chrome.browser.brave_stats.BraveStatsUtil;
|
||||
@@ -149,14 +150,16 @@ public class RetentionNotificationUtil {
|
||||
Intent intent = new Intent(context, RetentionNotificationPublisher.class);
|
||||
intent.setAction(RetentionNotificationPublisher.RETENTION_NOTIFICATION_ACTION);
|
||||
intent.putExtra(NOTIFICATION_TYPE, notificationType);
|
||||
return PendingIntent.getBroadcast(context, getNotificationObject(notificationType).getNotificationId(), intent, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
return PendingIntent.getBroadcast(context, getNotificationObject(notificationType).getNotificationId(), intent,
|
||||
PendingIntent.FLAG_UPDATE_CURRENT | IntentUtils.getPendingIntentMutabilityFlag(true));
|
||||
}
|
||||
|
||||
public static void scheduleNotification(Context context, String notificationType) {
|
||||
RetentionNotification retentionNotification = getNotificationObject(notificationType);
|
||||
Intent notificationIntent = new Intent(context, RetentionNotificationPublisher.class);
|
||||
notificationIntent.putExtra(NOTIFICATION_TYPE, notificationType);
|
||||
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, retentionNotification.getNotificationId(), notificationIntent, 0);
|
||||
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, retentionNotification.getNotificationId(), notificationIntent,
|
||||
0 | IntentUtils.getPendingIntentMutabilityFlag(true));
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
calendar.setTimeInMillis(System.currentTimeMillis());
|
||||
calendar.add(Calendar.MINUTE, retentionNotification.getNotificationTime());
|
||||
@@ -164,7 +167,7 @@ public class RetentionNotificationUtil {
|
||||
Date date = calendar.getTime();
|
||||
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
|
||||
assert alarmManager != null;
|
||||
alarmManager.setExact(AlarmManager.RTC_WAKEUP, date.getTime(), pendingIntent);
|
||||
alarmManager.set(AlarmManager.RTC_WAKEUP, date.getTime(), pendingIntent);
|
||||
}
|
||||
|
||||
public static void scheduleNotificationForEverySunday(Context context, String notificationType) {
|
||||
@@ -180,7 +183,8 @@ public class RetentionNotificationUtil {
|
||||
|
||||
Intent notificationIntent = new Intent(context, RetentionNotificationPublisher.class);
|
||||
notificationIntent.putExtra(NOTIFICATION_TYPE, notificationType);
|
||||
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, retentionNotification.getNotificationId(), notificationIntent, 0);
|
||||
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, retentionNotification.getNotificationId(), notificationIntent,
|
||||
0 | IntentUtils.getPendingIntentMutabilityFlag(true));
|
||||
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
|
||||
assert am != null;
|
||||
am.setRepeating(AlarmManager.RTC_WAKEUP, currentDate.getTimeInMillis(), AlarmManager.INTERVAL_DAY * 7, pendingIntent);
|
||||
|
||||
Reference in New Issue
Block a user