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

Commit d388c758 authored by Evan Rosky's avatar Evan Rosky
Browse files

Add support for a custom left affordance icon

Bug: 32872231
Test: manually tested as described in ag/1627217
Change-Id: I42e50c592ffcc59939971d21ed376fba85c5bb27
parent 7c73dd6a
Loading
Loading
Loading
Loading
+15 −1
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.res.Configuration;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.IBinder;
@@ -141,6 +142,7 @@ public class KeyguardBottomAreaView extends FrameLayout implements View.OnClickL

    private boolean mLeftIsVoiceAssist;
    private AssistManager mAssistManager;
    private Drawable mLeftAssistIcon;

    private IntentButton mRightButton = new DefaultRightButton();
    private IntentButton mLeftButton = new DefaultLeftButton();
@@ -340,6 +342,14 @@ public class KeyguardBottomAreaView extends FrameLayout implements View.OnClickL
                ? View.VISIBLE : View.GONE);
    }

    /**
     * Set an alternate icon for the left assist affordance (replace the mic icon)
     */
    public void setLeftAssistIcon(Drawable drawable) {
        mLeftAssistIcon = drawable;
        updateLeftAffordanceIcon();
    }

    private void updateLeftAffordanceIcon() {
        IconState state = mLeftButton.getIcon();
        mLeftAffordanceView.setVisibility(state.isVisible ? View.VISIBLE : View.GONE);
@@ -806,7 +816,11 @@ public class KeyguardBottomAreaView extends FrameLayout implements View.OnClickL
            mLeftIsVoiceAssist = canLaunchVoiceAssist();
            if (mLeftIsVoiceAssist) {
                mIconState.isVisible = mUserSetupComplete;
                if (mLeftAssistIcon == null) {
                    mIconState.drawable = mContext.getDrawable(R.drawable.ic_mic_26dp);
                } else {
                    mIconState.drawable = mLeftAssistIcon;
                }
                mIconState.contentDescription = mContext.getString(
                        R.string.accessibility_voice_assist_button);
            } else {