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

Commit ec0d7f51 authored by shaoweishen's avatar shaoweishen Committed by Shaowei Shen
Browse files

DO NOT MERGE: Downbranch merge conflict [Output Switcher] Make checkbox...

DO NOT MERGE: Downbranch merge conflict [Output Switcher] Make checkbox disable if a device is not deselectable

Bug: 229503847
Test: N/A
Change-Id: I5866dc5f544cebe504a03429730cc47d684ccdd6
parent 100004b0
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -176,6 +176,8 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
                            true /* showProgressBar */, false /* showStatus */);
                } else if (mController.getSelectedMediaDevice().size() > 1
                        && isDeviceIncluded(mController.getSelectedMediaDevice(), device)) {
                    boolean isDeviceDeselectable = isDeviceIncluded(
                            mController.getDeselectableMediaDevice(), device);
                    mTitleText.setTextColor(mController.getColorItemContent());
                    setSingleLineLayout(getItemTitle(device), true /* bFocused */,
                            true /* showSeekBar */,
@@ -184,13 +186,20 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
                    mCheckBox.setOnCheckedChangeListener(null);
                    mCheckBox.setVisibility(View.VISIBLE);
                    mCheckBox.setChecked(true);
                    mCheckBox.setOnCheckedChangeListener(
                            (buttonView, isChecked) -> onGroupActionTriggered(false, device));
                    mCheckBox.setOnCheckedChangeListener(isDeviceDeselectable
                            ? (buttonView, isChecked) -> onGroupActionTriggered(false, device)
                            : null);
                    mCheckBox.setEnabled(isDeviceDeselectable);
                    mCheckBox.setAlpha(
                            isDeviceDeselectable ? DEVICE_CONNECTED_ALPHA
                                    : DEVICE_DISCONNECTED_ALPHA
                    );
                    setCheckBoxColor(mCheckBox, mController.getColorItemContent());
                    initSeekbar(device, isCurrentSeekbarInvisible);
                    mEndTouchArea.setVisibility(View.VISIBLE);
                    mEndTouchArea.setOnClickListener(null);
                    mEndTouchArea.setOnClickListener((v) -> mCheckBox.performClick());
                    mEndTouchArea.setOnClickListener(
                            isDeviceDeselectable ? (v) -> mCheckBox.performClick() : null);
                    mEndTouchArea.setImportantForAccessibility(
                            View.IMPORTANT_FOR_ACCESSIBILITY_YES);
                    setUpContentDescriptionForView(mEndTouchArea, true, device);