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

Commit 9c6ccfbb authored by Beverly's avatar Beverly Committed by android-build-merger
Browse files

Merge "DO NOT MERGE Set click listeners on displayPreference" into pi-dev

am: cf845f36

Change-Id: Ifdbe1baa8fc2b7cff4520ef61aa9277d9aeaef15
parents 3eb0dbde cf845f36
Loading
Loading
Loading
Loading
+12 −11
Original line number Diff line number Diff line
@@ -28,6 +28,9 @@ public class ZenModeVisEffectsAllPreferenceController
        extends AbstractZenModePreferenceController
        implements ZenCustomRadioButtonPreference.OnRadioButtonClickListener {

    private final String KEY;
    private ZenCustomRadioButtonPreference mPreference;

    protected static final int EFFECTS = Policy.SUPPRESSED_EFFECT_SCREEN_OFF
            | Policy.SUPPRESSED_EFFECT_SCREEN_ON
            | Policy.SUPPRESSED_EFFECT_FULL_SCREEN_INTENT
@@ -41,6 +44,14 @@ public class ZenModeVisEffectsAllPreferenceController
    public ZenModeVisEffectsAllPreferenceController(Context context, Lifecycle lifecycle,
            String key) {
        super(context, key, lifecycle);
        KEY = key;
    }

    @Override
    public void displayPreference(PreferenceScreen screen) {
        super.displayPreference(screen);
        mPreference = (ZenCustomRadioButtonPreference) screen.findPreference(KEY);
        mPreference.setOnRadioButtonClickListener(this);
    }

    @Override
@@ -54,17 +65,7 @@ public class ZenModeVisEffectsAllPreferenceController

        boolean everythingBlocked = Policy.areAllVisualEffectsSuppressed(
                mBackend.mPolicy.suppressedVisualEffects);
        ZenCustomRadioButtonPreference pref = (ZenCustomRadioButtonPreference) preference;
        pref.setOnRadioButtonClickListener(this);
        pref.setChecked(everythingBlocked);
    }

    protected void deselect(PreferenceScreen screen) {
        ZenCustomRadioButtonPreference preference =
                (ZenCustomRadioButtonPreference) screen.findPreference(getPreferenceKey());
        if (preference != null) {
            preference.setChecked(false);
        }
        mPreference.setChecked(everythingBlocked);
    }

    @Override
+17 −7
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.settings.notification;
import android.app.NotificationManager.Policy;
import android.content.Context;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;

import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
@@ -28,6 +29,9 @@ import com.android.settingslib.core.lifecycle.Lifecycle;
public class ZenModeVisEffectsCustomPreferenceController
        extends AbstractZenModePreferenceController {

    private final String KEY;
    private ZenCustomRadioButtonPreference mPreference;

    protected static final int INTERRUPTIVE_EFFECTS = Policy.SUPPRESSED_EFFECT_AMBIENT
            | Policy.SUPPRESSED_EFFECT_PEEK
            | Policy.SUPPRESSED_EFFECT_LIGHTS
@@ -36,6 +40,7 @@ public class ZenModeVisEffectsCustomPreferenceController
    public ZenModeVisEffectsCustomPreferenceController(Context context, Lifecycle lifecycle,
            String key) {
        super(context, key, lifecycle);
        KEY = key;
    }

    @Override
@@ -44,21 +49,26 @@ public class ZenModeVisEffectsCustomPreferenceController
    }

    @Override
    public void updateState(Preference preference) {
        super.updateState(preference);
    public void displayPreference(PreferenceScreen screen) {
        super.displayPreference(screen);
        mPreference = (ZenCustomRadioButtonPreference) screen.findPreference(KEY);

        ZenCustomRadioButtonPreference pref = (ZenCustomRadioButtonPreference) preference;
        pref.setChecked(areCustomOptionsSelected());

        pref.setOnGearClickListener(p -> {
        mPreference.setOnGearClickListener(p -> {
            launchCustomSettings();
        });

        pref.setOnRadioButtonClickListener(p -> {
        mPreference.setOnRadioButtonClickListener(p -> {
            launchCustomSettings();
        });
    }

    @Override
    public void updateState(Preference preference) {
        super.updateState(preference);

        mPreference.setChecked(areCustomOptionsSelected());
    }

    protected boolean areCustomOptionsSelected() {
        boolean allEffectsSuppressed =
                Policy.areAllVisualEffectsSuppressed(mBackend.mPolicy.suppressedVisualEffects);
+12 −11
Original line number Diff line number Diff line
@@ -28,6 +28,9 @@ public class ZenModeVisEffectsNonePreferenceController
        extends AbstractZenModePreferenceController
        implements ZenCustomRadioButtonPreference.OnRadioButtonClickListener {

    private final String KEY;
    private ZenCustomRadioButtonPreference mPreference;

    protected static final int EFFECTS = Policy.SUPPRESSED_EFFECT_SCREEN_OFF
            | Policy.SUPPRESSED_EFFECT_SCREEN_ON
            | Policy.SUPPRESSED_EFFECT_FULL_SCREEN_INTENT
@@ -41,6 +44,14 @@ public class ZenModeVisEffectsNonePreferenceController
    public ZenModeVisEffectsNonePreferenceController(Context context, Lifecycle lifecycle,
            String key) {
        super(context, key, lifecycle);
        KEY = key;
    }

    @Override
    public void displayPreference(PreferenceScreen screen) {
        super.displayPreference(screen);
        mPreference = (ZenCustomRadioButtonPreference) screen.findPreference(KEY);
        mPreference.setOnRadioButtonClickListener(this);
    }

    @Override
@@ -53,9 +64,7 @@ public class ZenModeVisEffectsNonePreferenceController
        super.updateState(preference);

        boolean nothingBlocked = mBackend.mPolicy.suppressedVisualEffects == 0;
        ZenCustomRadioButtonPreference pref = (ZenCustomRadioButtonPreference) preference;
        pref.setOnRadioButtonClickListener(this);
        pref.setChecked(nothingBlocked);
        mPreference.setChecked(nothingBlocked);
    }

    @Override
@@ -64,12 +73,4 @@ public class ZenModeVisEffectsNonePreferenceController
                MetricsProto.MetricsEvent.ACTION_ZEN_SOUND_ONLY, true);
        mBackend.saveVisualEffectsPolicy(EFFECTS, false);
    }

    protected void deselect(PreferenceScreen screen) {
        ZenCustomRadioButtonPreference preference =
                (ZenCustomRadioButtonPreference) screen.findPreference(getPreferenceKey());
        if (preference != null) {
            preference.setChecked(false);
        }
    }
}
+1 −0
Original line number Diff line number Diff line
@@ -85,6 +85,7 @@ public class ZenModeVisEffectsCustomPreferenceControllerTest {
        ReflectionHelpers.setField(mController, "mBackend", mBackend);

        when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mockPref);
        mController.displayPreference(mScreen);
    }

    @Test