summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/drawable
diff options
context:
space:
mode:
authorWei Liu <luciferleo@google.com>2015-08-24 17:29:04 -0700
committerWei Liu <luciferleo@google.com>2015-08-25 11:02:59 -0700
commit6e58d516f05bbceabdddd3aa08a94fcc32858e71 (patch)
treef98c32d08edee6b49a33ecbfdc48ada7c38c502a /src/com/android/settings/drawable
parent0e309b867d1872b8cd0d6d435e10d6d3be48a3bd (diff)
downloadpackages_apps_Settings-6e58d516f05bbceabdddd3aa08a94fcc32858e71.zip
packages_apps_Settings-6e58d516f05bbceabdddd3aa08a94fcc32858e71.tar.gz
packages_apps_Settings-6e58d516f05bbceabdddd3aa08a94fcc32858e71.tar.bz2
Refactor UidDetailProvider and its dependencies to SettingsLib.
so that it can be reused by Wear app data usage. Change-Id: Id05f888274e15fbeffa175ee8073de02a8966867
Diffstat (limited to 'src/com/android/settings/drawable')
-rw-r--r--src/com/android/settings/drawable/CircleFramedDrawable.java136
1 files changed, 0 insertions, 136 deletions
diff --git a/src/com/android/settings/drawable/CircleFramedDrawable.java b/src/com/android/settings/drawable/CircleFramedDrawable.java
deleted file mode 100644
index 31b8922..0000000
--- a/src/com/android/settings/drawable/CircleFramedDrawable.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.drawable;
-
-import android.content.Context;
-import android.content.res.Resources;
-import android.graphics.Bitmap;
-import android.graphics.Canvas;
-import android.graphics.Color;
-import android.graphics.ColorFilter;
-import android.graphics.Paint;
-import android.graphics.Path;
-import android.graphics.PixelFormat;
-import android.graphics.PorterDuff;
-import android.graphics.PorterDuffXfermode;
-import android.graphics.Rect;
-import android.graphics.RectF;
-import android.graphics.drawable.Drawable;
-
-import com.android.settings.R;
-
-/**
- * Converts the user avatar icon to a circularly clipped one.
- * TODO: Move this to an internal framework class and share with the one in Keyguard.
- */
-public class CircleFramedDrawable extends Drawable {
-
- private final Bitmap mBitmap;
- private final int mSize;
- private final Paint mPaint;
-
- private float mScale;
- private Rect mSrcRect;
- private RectF mDstRect;
-
- public static CircleFramedDrawable getInstance(Context context, Bitmap icon) {
- Resources res = context.getResources();
- float iconSize = res.getDimension(R.dimen.circle_avatar_size);
-
- CircleFramedDrawable instance = new CircleFramedDrawable(icon, (int) iconSize);
- return instance;
- }
-
- public CircleFramedDrawable(Bitmap icon, int size) {
- super();
- mSize = size;
-
- mBitmap = Bitmap.createBitmap(mSize, mSize, Bitmap.Config.ARGB_8888);
- final Canvas canvas = new Canvas(mBitmap);
-
- final int width = icon.getWidth();
- final int height = icon.getHeight();
- final int square = Math.min(width, height);
-
- final Rect cropRect = new Rect((width - square) / 2, (height - square) / 2, square, square);
- final RectF circleRect = new RectF(0f, 0f, mSize, mSize);
-
- final Path fillPath = new Path();
- fillPath.addArc(circleRect, 0f, 360f);
-
- canvas.drawColor(0, PorterDuff.Mode.CLEAR);
-
- // opaque circle matte
- mPaint = new Paint();
- mPaint.setAntiAlias(true);
- mPaint.setColor(Color.BLACK);
- mPaint.setStyle(Paint.Style.FILL);
- canvas.drawPath(fillPath, mPaint);
-
- // mask in the icon where the bitmap is opaque
- mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
- canvas.drawBitmap(icon, cropRect, circleRect, mPaint);
-
- // prepare paint for frame drawing
- mPaint.setXfermode(null);
-
- mScale = 1f;
-
- mSrcRect = new Rect(0, 0, mSize, mSize);
- mDstRect = new RectF(0, 0, mSize, mSize);
- }
-
- @Override
- public void draw(Canvas canvas) {
- final float inside = mScale * mSize;
- final float pad = (mSize - inside) / 2f;
-
- mDstRect.set(pad, pad, mSize - pad, mSize - pad);
- canvas.drawBitmap(mBitmap, mSrcRect, mDstRect, null);
- }
-
- public void setScale(float scale) {
- mScale = scale;
- }
-
- public float getScale() {
- return mScale;
- }
-
- @Override
- public int getOpacity() {
- return PixelFormat.TRANSLUCENT;
- }
-
- @Override
- public void setAlpha(int alpha) {
- }
-
- @Override
- public void setColorFilter(ColorFilter cf) {
- }
-
- @Override
- public int getIntrinsicWidth() {
- return mSize;
- }
-
- @Override
- public int getIntrinsicHeight() {
- return mSize;
- }
-}