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

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

Merge "Round mobile icon slash and fix color" into oc-dr1-dev

parents 61d1af57 dfe4f3fe
Loading
Loading
Loading
Loading
+4 −3
Original line number Original line Diff line number Diff line
@@ -33,11 +33,12 @@ import android.graphics.PorterDuff.Mode;
import android.graphics.Rect;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.RectF;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.Drawable;
import android.util.Log;
import android.util.FloatProperty;
import android.util.FloatProperty;


public class SlashDrawable extends Drawable {
public class SlashDrawable extends Drawable {


    public static final float CORNER_RADIUS = 1f;

    private final Path mPath = new Path();
    private final Path mPath = new Path();
    private final Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
    private final Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);


@@ -141,8 +142,8 @@ public class SlashDrawable extends Drawable {
        Matrix m = new Matrix();
        Matrix m = new Matrix();
        final int width = getBounds().width();
        final int width = getBounds().width();
        final int height = getBounds().height();
        final int height = getBounds().height();
        final float radiusX = scale(1f, width);
        final float radiusX = scale(CORNER_RADIUS, width);
        final float radiusY = scale(1f, height);
        final float radiusY = scale(CORNER_RADIUS, height);
        updateRect(
        updateRect(
                scale(LEFT, width),
                scale(LEFT, width),
                scale(TOP, height),
                scale(TOP, height),
+7 −6
Original line number Original line Diff line number Diff line
@@ -36,6 +36,7 @@ import android.util.LayoutDirection;


import com.android.settingslib.R;
import com.android.settingslib.R;
import com.android.settingslib.Utils;
import com.android.settingslib.Utils;
import com.android.systemui.qs.SlashDrawable;


public class SignalDrawable extends Drawable {
public class SignalDrawable extends Drawable {


@@ -333,10 +334,9 @@ public class SignalDrawable extends Drawable {
            mForegroundPath.reset();
            mForegroundPath.reset();
            mFullPath.op(mCutPath, Path.Op.DIFFERENCE);
            mFullPath.op(mCutPath, Path.Op.DIFFERENCE);
        } else if (mState == STATE_AIRPLANE) {
        } else if (mState == STATE_AIRPLANE) {
            // Airplane mode is slashed, full-signal
            // Airplane mode is slashed, fully drawn background
            mForegroundPath.set(mFullPath);
            mForegroundPath.reset();
            mFullPath.reset();
            mSlash.draw((int) height, (int) width, canvas, mPaint);
            mSlash.draw((int) height, (int) width, canvas, mForegroundPaint);
        } else if (mState != STATE_CARRIER_CHANGE) {
        } else if (mState != STATE_CARRIER_CHANGE) {
            mForegroundPath.reset();
            mForegroundPath.reset();
            int sigWidth = Math.round(calcFit(mLevel / (mNumLevels - 1)) * (width - 2 * padding));
            int sigWidth = Math.round(calcFit(mLevel / (mNumLevels - 1)) * (width - 2 * padding));
@@ -473,6 +473,7 @@ public class SignalDrawable extends Drawable {


        void draw(int height, int width, @NonNull Canvas canvas, Paint paint) {
        void draw(int height, int width, @NonNull Canvas canvas, Paint paint) {
            Matrix m = new Matrix();
            Matrix m = new Matrix();
            final float radius = scale(SlashDrawable.CORNER_RADIUS, width);
            updateRect(
            updateRect(
                    scale(LEFT, width),
                    scale(LEFT, width),
                    scale(TOP, height),
                    scale(TOP, height),
@@ -481,7 +482,7 @@ public class SignalDrawable extends Drawable {


            mPath.reset();
            mPath.reset();
            // Draw the slash vertically
            // Draw the slash vertically
            mPath.addRect(mSlashRect, Direction.CW);
            mPath.addRoundRect(mSlashRect, radius, radius, Direction.CW);
            m.setRotate(ROTATION, width / 2, height / 2);
            m.setRotate(ROTATION, width / 2, height / 2);
            mPath.transform(m);
            mPath.transform(m);
            canvas.drawPath(mPath, paint);
            canvas.drawPath(mPath, paint);
@@ -491,7 +492,7 @@ public class SignalDrawable extends Drawable {
            mPath.transform(m);
            mPath.transform(m);
            m.setTranslate(mSlashRect.width(), 0);
            m.setTranslate(mSlashRect.width(), 0);
            mPath.transform(m);
            mPath.transform(m);
            mPath.addRect(mSlashRect, Direction.CW);
            mPath.addRoundRect(mSlashRect, radius, radius, Direction.CW);
            m.setRotate(ROTATION, width / 2, height / 2);
            m.setRotate(ROTATION, width / 2, height / 2);
            mPath.transform(m);
            mPath.transform(m);
            canvas.clipOutPath(mPath);
            canvas.clipOutPath(mPath);