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

Commit 4cee8e3e authored by Selim Cinek's avatar Selim Cinek Committed by Automerger Merge Worker
Browse files

Merge "Fixed an issue where the Device output chip lost its alpha" into...

Merge "Fixed an issue where the Device output chip lost its alpha" into rvc-dev am: fc8443cf am: b10928c2 am: 597c740c

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11840046

Change-Id: I182fd31fb89944a2642aeaaafc2cc7f344350449
parents c00e1b7d 597c740c
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -257,16 +257,18 @@ public class MediaControlPanel {
        rect.setColor(Color.TRANSPARENT);

        final MediaDeviceData device = data.getDevice();
        int seamlessId = mViewHolder.getSeamless().getId();
        if (device != null && !device.getEnabled()) {
            mViewHolder.getSeamless().setEnabled(false);
            // TODO(b/156875717): setEnabled should cause the alpha to change.
            mViewHolder.getSeamless().setAlpha(0.38f);
            expandedSet.setAlpha(seamlessId, 0.38f);
            collapsedSet.setAlpha(seamlessId, 0.38f);
            iconView.setImageResource(R.drawable.ic_hardware_speaker);
            iconView.setVisibility(View.VISIBLE);
            deviceName.setText(R.string.media_seamless_remote_device);
        } else if (device != null) {
            mViewHolder.getSeamless().setEnabled(true);
            mViewHolder.getSeamless().setAlpha(1f);
            expandedSet.setAlpha(seamlessId, 1.0f);
            collapsedSet.setAlpha(seamlessId, 1.0f);
            Drawable icon = device.getIcon();
            iconView.setVisibility(View.VISIBLE);

@@ -282,7 +284,8 @@ public class MediaControlPanel {
            // Reset to default
            Log.w(TAG, "device is null. Not binding output chip.");
            mViewHolder.getSeamless().setEnabled(true);
            mViewHolder.getSeamless().setAlpha(1f);
            expandedSet.setAlpha(seamlessId, 1.0f);
            collapsedSet.setAlpha(seamlessId, 1.0f);
            iconView.setVisibility(View.GONE);
            deviceName.setText(com.android.internal.R.string.ext_media_seamless_action);
        }
+4 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ class TransitionLayout @JvmOverloads constructor(
) : ConstraintLayout(context, attrs, defStyleAttr) {

    private val originalGoneChildrenSet: MutableSet<Int> = mutableSetOf()
    private val originalViewAlphas: MutableMap<Int, Float> = mutableMapOf()
    private var measureAsConstraint: Boolean = false
    private var currentState: TransitionViewState = TransitionViewState()
    private var updateScheduled = false
@@ -67,6 +68,7 @@ class TransitionLayout @JvmOverloads constructor(
            if (child.visibility == GONE) {
                originalGoneChildrenSet.add(child.id)
            }
            originalViewAlphas[child.id] = child.alpha
        }
    }

@@ -198,6 +200,8 @@ class TransitionLayout @JvmOverloads constructor(
            if (originalGoneChildrenSet.contains(child.id)) {
                child.visibility = View.GONE
            }
            // Reset the alphas, to only have the alphas present from the constraintset
            child.alpha = originalViewAlphas[child.id] ?: 1.0f
        }
        // Let's now apply the constraintSet to get the full state
        constraintSet.applyTo(this)