Loading packages/SystemUI/src/com/android/systemui/volume/SegmentedButtons.java +6 −6 Original line number Diff line number Diff line Loading @@ -57,7 +57,7 @@ public class SegmentedButtons extends LinearLayout { return mSelectedValue; } public void setSelectedValue(Object value) { public void setSelectedValue(Object value, boolean fromClick) { if (Objects.equals(value, mSelectedValue)) return; mSelectedValue = value; for (int i = 0; i < getChildCount(); i++) { Loading @@ -67,7 +67,7 @@ public class SegmentedButtons extends LinearLayout { c.setSelected(selected); c.setTypeface(selected ? MEDIUM : REGULAR); } fireOnSelected(); fireOnSelected(fromClick); } public void addButton(int labelResId, int contentDescriptionResId, Object value) { Loading Loading @@ -100,9 +100,9 @@ public class SegmentedButtons extends LinearLayout { } } private void fireOnSelected() { private void fireOnSelected(boolean fromClick) { if (mCallback != null) { mCallback.onSelected(mSelectedValue); mCallback.onSelected(mSelectedValue, fromClick); } } Loading @@ -115,11 +115,11 @@ public class SegmentedButtons extends LinearLayout { private final View.OnClickListener mClick = new View.OnClickListener() { @Override public void onClick(View v) { setSelectedValue(v.getTag()); setSelectedValue(v.getTag(), true /* fromClick */); } }; public interface Callback extends Interaction.Callback { void onSelected(Object value); void onSelected(Object value, boolean fromClick); } } packages/SystemUI/src/com/android/systemui/volume/ZenModePanel.java +5 −3 Original line number Diff line number Diff line Loading @@ -391,7 +391,7 @@ public class ZenModePanel extends LinearLayout { setExpanded(isShown()); mSessionZen = zen; } mZenButtons.setSelectedValue(zen); mZenButtons.setSelectedValue(zen, false /* fromClick */); updateWidgets(); handleUpdateConditions(); if (mExpanded) { Loading Loading @@ -968,10 +968,12 @@ public class ZenModePanel extends LinearLayout { private final SegmentedButtons.Callback mZenButtonsCallback = new SegmentedButtons.Callback() { @Override public void onSelected(final Object value) { public void onSelected(final Object value, boolean fromClick) { if (value != null && mZenButtons.isShown() && isAttachedToWindow()) { final int zen = (Integer) value; if (fromClick) { MetricsLogger.action(mContext, MetricsLogger.QS_DND_ZEN_SELECT, zen); } if (DEBUG) Log.d(mTag, "mZenButtonsCallback selected=" + zen); final Uri realConditionId = getRealConditionId(mSessionExitCondition); AsyncTask.execute(new Runnable() { Loading Loading
packages/SystemUI/src/com/android/systemui/volume/SegmentedButtons.java +6 −6 Original line number Diff line number Diff line Loading @@ -57,7 +57,7 @@ public class SegmentedButtons extends LinearLayout { return mSelectedValue; } public void setSelectedValue(Object value) { public void setSelectedValue(Object value, boolean fromClick) { if (Objects.equals(value, mSelectedValue)) return; mSelectedValue = value; for (int i = 0; i < getChildCount(); i++) { Loading @@ -67,7 +67,7 @@ public class SegmentedButtons extends LinearLayout { c.setSelected(selected); c.setTypeface(selected ? MEDIUM : REGULAR); } fireOnSelected(); fireOnSelected(fromClick); } public void addButton(int labelResId, int contentDescriptionResId, Object value) { Loading Loading @@ -100,9 +100,9 @@ public class SegmentedButtons extends LinearLayout { } } private void fireOnSelected() { private void fireOnSelected(boolean fromClick) { if (mCallback != null) { mCallback.onSelected(mSelectedValue); mCallback.onSelected(mSelectedValue, fromClick); } } Loading @@ -115,11 +115,11 @@ public class SegmentedButtons extends LinearLayout { private final View.OnClickListener mClick = new View.OnClickListener() { @Override public void onClick(View v) { setSelectedValue(v.getTag()); setSelectedValue(v.getTag(), true /* fromClick */); } }; public interface Callback extends Interaction.Callback { void onSelected(Object value); void onSelected(Object value, boolean fromClick); } }
packages/SystemUI/src/com/android/systemui/volume/ZenModePanel.java +5 −3 Original line number Diff line number Diff line Loading @@ -391,7 +391,7 @@ public class ZenModePanel extends LinearLayout { setExpanded(isShown()); mSessionZen = zen; } mZenButtons.setSelectedValue(zen); mZenButtons.setSelectedValue(zen, false /* fromClick */); updateWidgets(); handleUpdateConditions(); if (mExpanded) { Loading Loading @@ -968,10 +968,12 @@ public class ZenModePanel extends LinearLayout { private final SegmentedButtons.Callback mZenButtonsCallback = new SegmentedButtons.Callback() { @Override public void onSelected(final Object value) { public void onSelected(final Object value, boolean fromClick) { if (value != null && mZenButtons.isShown() && isAttachedToWindow()) { final int zen = (Integer) value; if (fromClick) { MetricsLogger.action(mContext, MetricsLogger.QS_DND_ZEN_SELECT, zen); } if (DEBUG) Log.d(mTag, "mZenButtonsCallback selected=" + zen); final Uri realConditionId = getRealConditionId(mSessionExitCondition); AsyncTask.execute(new Runnable() { Loading