Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4b087fbd authored by Heemin Seog's avatar Heemin Seog Committed by android-build-merger
Browse files

Merge "Send data warning intents with the current user" into qt-dev

am: f1f6146e

Change-Id: Ibca6cb2ebc72bfe33f4812d4c2f92af04a3de8d1
parents ecd6a219 f1f6146e
Loading
Loading
Loading
Loading
+41 −9
Original line number Original line Diff line number Diff line
@@ -217,6 +217,7 @@ import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
import com.android.internal.notification.SystemNotificationChannels;
import com.android.internal.notification.SystemNotificationChannels;
import com.android.internal.os.RoSystemProperties;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.util.ArrayUtils;
import com.android.internal.util.ArrayUtils;
import com.android.internal.util.ConcurrentUtils;
import com.android.internal.util.ConcurrentUtils;
@@ -1353,9 +1354,15 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
                        mContext, 0, snoozeIntent, PendingIntent.FLAG_UPDATE_CURRENT));
                        mContext, 0, snoozeIntent, PendingIntent.FLAG_UPDATE_CURRENT));


                final Intent viewIntent = buildViewDataUsageIntent(res, policy.template);
                final Intent viewIntent = buildViewDataUsageIntent(res, policy.template);
                // TODO: Resolve to single code path.
                if (isHeadlessSystemUserBuild()) {
                    builder.setContentIntent(PendingIntent.getActivityAsUser(
                            mContext, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT,
                            /* options= */ null, UserHandle.CURRENT));
                } else {
                    builder.setContentIntent(PendingIntent.getActivity(
                    builder.setContentIntent(PendingIntent.getActivity(
                            mContext, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT));
                            mContext, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT));

                }
                break;
                break;
            }
            }
            case TYPE_LIMIT: {
            case TYPE_LIMIT: {
@@ -1375,8 +1382,15 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
                builder.setSmallIcon(R.drawable.stat_notify_disabled_data);
                builder.setSmallIcon(R.drawable.stat_notify_disabled_data);


                final Intent intent = buildNetworkOverLimitIntent(res, policy.template);
                final Intent intent = buildNetworkOverLimitIntent(res, policy.template);
                // TODO: Resolve to single code path.
                if (isHeadlessSystemUserBuild()) {
                    builder.setContentIntent(PendingIntent.getActivityAsUser(
                            mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT,
                            /* options= */ null, UserHandle.CURRENT));
                } else {
                    builder.setContentIntent(PendingIntent.getActivity(
                    builder.setContentIntent(PendingIntent.getActivity(
                            mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
                            mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
                }
                break;
                break;
            }
            }
            case TYPE_LIMIT_SNOOZED: {
            case TYPE_LIMIT_SNOOZED: {
@@ -1399,8 +1413,15 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
                builder.setChannelId(SystemNotificationChannels.NETWORK_STATUS);
                builder.setChannelId(SystemNotificationChannels.NETWORK_STATUS);


                final Intent intent = buildViewDataUsageIntent(res, policy.template);
                final Intent intent = buildViewDataUsageIntent(res, policy.template);
                // TODO: Resolve to single code path.
                if (isHeadlessSystemUserBuild()) {
                    builder.setContentIntent(PendingIntent.getActivityAsUser(
                            mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT,
                            /* options= */ null, UserHandle.CURRENT));
                } else {
                    builder.setContentIntent(PendingIntent.getActivity(
                    builder.setContentIntent(PendingIntent.getActivity(
                            mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
                            mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
                }
                break;
                break;
            }
            }
            case TYPE_RAPID: {
            case TYPE_RAPID: {
@@ -1419,8 +1440,15 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
                        mContext, 0, snoozeIntent, PendingIntent.FLAG_UPDATE_CURRENT));
                        mContext, 0, snoozeIntent, PendingIntent.FLAG_UPDATE_CURRENT));


                final Intent viewIntent = buildViewDataUsageIntent(res, policy.template);
                final Intent viewIntent = buildViewDataUsageIntent(res, policy.template);
                // TODO: Resolve to single code path.
                if (isHeadlessSystemUserBuild()) {
                    builder.setContentIntent(PendingIntent.getActivityAsUser(
                            mContext, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT,
                            /* options= */ null, UserHandle.CURRENT));
                } else {
                    builder.setContentIntent(PendingIntent.getActivity(
                    builder.setContentIntent(PendingIntent.getActivity(
                            mContext, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT));
                            mContext, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT));
                }
                break;
                break;
            }
            }
            default: {
            default: {
@@ -5264,6 +5292,10 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
        return (bundle != null) ? bundle.getBoolean(key, defaultValue) : defaultValue;
        return (bundle != null) ? bundle.getBoolean(key, defaultValue) : defaultValue;
    }
    }


    private static boolean isHeadlessSystemUserBuild() {
        return RoSystemProperties.MULTIUSER_HEADLESS_SYSTEM_USER;
    }

    private class NotificationId {
    private class NotificationId {
        private final String mTag;
        private final String mTag;
        private final int mId;
        private final int mId;