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

Commit 678de6fb authored by Matías Hernández's avatar Matías Hernández Committed by Automerger Merge Worker
Browse files

Merge "Inline NO_SORT_BY_INTERRUPTIVENESS" into udc-qpr-dev am: 14ec5e1a am: a7b3fcc7

parents 8ca82849 a7b3fcc7
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -70,10 +70,6 @@ public class SystemUiSystemPropertiesFlags {
        public static final Flag OTP_REDACTION =
                devFlag("persist.sysui.notification.otp_redaction");

        /** Gating the removal of sorting-notifications-by-interruptiveness. */
        public static final Flag NO_SORT_BY_INTERRUPTIVENESS =
                releasedFlag("persist.sysui.notification.no_sort_by_interruptiveness");

        /** Gating the logging of DND state change events. */
        public static final Flag LOG_DND_STATE_EVENTS =
                releasedFlag("persist.sysui.notification.log_dnd_state_events");
+0 −12
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.telecom.TelecomManager;

import com.android.internal.config.sysui.SystemUiSystemPropertiesFlags;
import com.android.internal.util.NotificationMessagingUtil;

import java.util.Comparator;
@@ -39,7 +38,6 @@ public class NotificationComparator

    private final Context mContext;
    private final NotificationMessagingUtil mMessagingUtil;
    private final boolean mSortByInterruptiveness;
    private String mDefaultPhoneApp;

    public NotificationComparator(Context context) {
@@ -47,8 +45,6 @@ public class NotificationComparator
        mContext.registerReceiver(mPhoneAppBroadcastReceiver,
                new IntentFilter(TelecomManager.ACTION_DEFAULT_DIALER_CHANGED));
        mMessagingUtil = new NotificationMessagingUtil(mContext);
        mSortByInterruptiveness = !SystemUiSystemPropertiesFlags.getResolver().isEnabled(
                SystemUiSystemPropertiesFlags.NotificationFlags.NO_SORT_BY_INTERRUPTIVENESS);
    }

    @Override
@@ -139,14 +135,6 @@ public class NotificationComparator
            return -1 * Integer.compare(leftPriority, rightPriority);
        }

        if (mSortByInterruptiveness) {
            final boolean leftInterruptive = left.isInterruptive();
            final boolean rightInterruptive = right.isInterruptive();
            if (leftInterruptive != rightInterruptive) {
                return -1 * Boolean.compare(leftInterruptive, rightInterruptive);
            }
        }

        // then break ties by time, most recent first
        return -1 * Long.compare(left.getRankingTimeMs(), right.getRankingTimeMs());
    }
+6 −31
Original line number Diff line number Diff line
@@ -15,8 +15,6 @@
 */
package com.android.server.notification;

import static com.android.internal.config.sysui.SystemUiSystemPropertiesFlags.NotificationFlags.NO_SORT_BY_INTERRUPTIVENESS;

import static com.google.common.truth.Truth.assertThat;

import static org.junit.Assert.assertFalse;
@@ -47,6 +45,8 @@ import android.service.notification.StatusBarNotification;
import android.telecom.TelecomManager;
import android.test.suitebuilder.annotation.SmallTest;

import androidx.test.runner.AndroidJUnit4;

import com.android.internal.config.sysui.SystemUiSystemPropertiesFlags;
import com.android.server.UiServiceTestCase;

@@ -54,7 +54,6 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

@@ -63,7 +62,7 @@ import java.util.Collections;
import java.util.List;

@SmallTest
@RunWith(Parameterized.class)
@RunWith(AndroidJUnit4.class)
public class NotificationComparatorTest extends UiServiceTestCase {
    @Mock Context mMockContext;
    @Mock TelecomManager mTm;
@@ -97,24 +96,9 @@ public class NotificationComparatorTest extends UiServiceTestCase {
    private NotificationRecord mRecordColorized;
    private NotificationRecord mRecordColorizedCall;

    @Parameterized.Parameters(name = "sortByInterruptiveness={0}")
    public static Boolean[] getSortByInterruptiveness() {
        return new Boolean[] { true, false };
    }

    @Parameterized.Parameter
    public boolean mSortByInterruptiveness;

    @Before
    public void setUp() {
        MockitoAnnotations.initMocks(this);
        SystemUiSystemPropertiesFlags.TEST_RESOLVER = flag -> {
            if (flag.mSysPropKey.equals(NO_SORT_BY_INTERRUPTIVENESS.mSysPropKey)) {
                return !mSortByInterruptiveness;
            }
            return new SystemUiSystemPropertiesFlags.DebugResolver().isEnabled(flag);
        };

        int userId = UserHandle.myUserId();

        final Resources res = mContext.getResources();
@@ -309,13 +293,8 @@ public class NotificationComparatorTest extends UiServiceTestCase {
        expected.add(mNoMediaSessionMedia);
        expected.add(mRecordCheater);
        expected.add(mRecordCheaterColorized);
        if (mSortByInterruptiveness) {
            expected.add(mRecordMinCall);
            expected.add(mRecordMinCallNonInterruptive);
        } else {
        expected.add(mRecordMinCallNonInterruptive);
        expected.add(mRecordMinCall);
        }

        List<NotificationRecord> actual = new ArrayList<>();
        actual.addAll(expected);
@@ -330,11 +309,7 @@ public class NotificationComparatorTest extends UiServiceTestCase {
    public void testRankingScoreOverrides() {
        NotificationComparator comp = new NotificationComparator(mMockContext);
        NotificationRecord recordMinCallNonInterruptive = spy(mRecordMinCallNonInterruptive);
        if (mSortByInterruptiveness) {
            assertTrue(comp.compare(mRecordMinCall, recordMinCallNonInterruptive) < 0);
        } else {
        assertTrue(comp.compare(mRecordMinCall, recordMinCallNonInterruptive) > 0);
        }

        when(recordMinCallNonInterruptive.getRankingScore()).thenReturn(1f);
        assertTrue(comp.compare(mRecordMinCall, recordMinCallNonInterruptive) > 0);