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

Commit cf845f36 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

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

parents cf2dc360 2f2a4d97
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