summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/drawable-hdpi/chip_background.9.pngbin206 -> 679 bytes
-rw-r--r--res/drawable-hdpi/chip_background_invalid.9.pngbin234 -> 793 bytes
-rw-r--r--res/drawable-hdpi/chip_background_selected.9.pngbin215 -> 733 bytes
-rw-r--r--res/drawable-hdpi/chip_delete.pngbin3204 -> 488 bytes
-rw-r--r--res/drawable-mdpi/chip_background.9.pngbin209 -> 415 bytes
-rw-r--r--res/drawable-mdpi/chip_background_invalid.9.pngbin238 -> 520 bytes
-rw-r--r--res/drawable-mdpi/chip_background_selected.9.pngbin215 -> 473 bytes
-rw-r--r--res/drawable-mdpi/chip_delete.pngbin3204 -> 306 bytes
-rw-r--r--res/drawable-xhdpi/chip_background.9.pngbin229 -> 887 bytes
-rw-r--r--res/drawable-xhdpi/chip_background_invalid.9.pngbin263 -> 1054 bytes
-rw-r--r--res/drawable-xhdpi/chip_background_selected.9.pngbin236 -> 974 bytes
-rw-r--r--res/drawable-xhdpi/chip_delete.pngbin0 -> 531 bytes
-rw-r--r--res/drawable-xxhdpi/chip_background.9.pngbin0 -> 1632 bytes
-rw-r--r--res/drawable-xxhdpi/chip_background_invalid.9.pngbin0 -> 1807 bytes
-rw-r--r--res/drawable-xxhdpi/chip_background_selected.9.pngbin0 -> 1773 bytes
-rw-r--r--res/drawable-xxhdpi/chip_delete.pngbin0 -> 746 bytes
-rw-r--r--res/drawable-xxhdpi/ic_contact_picture.pngbin0 -> 1299 bytes
-rw-r--r--res/values/dimen.xml4
-rw-r--r--src/com/android/ex/chips/RecipientEditTextView.java38
19 files changed, 36 insertions, 6 deletions
diff --git a/res/drawable-hdpi/chip_background.9.png b/res/drawable-hdpi/chip_background.9.png
index 3988da5..3d6d27d 100644
--- a/res/drawable-hdpi/chip_background.9.png
+++ b/res/drawable-hdpi/chip_background.9.png
Binary files differ
diff --git a/res/drawable-hdpi/chip_background_invalid.9.png b/res/drawable-hdpi/chip_background_invalid.9.png
index 01a3d95..204a3c0 100644
--- a/res/drawable-hdpi/chip_background_invalid.9.png
+++ b/res/drawable-hdpi/chip_background_invalid.9.png
Binary files differ
diff --git a/res/drawable-hdpi/chip_background_selected.9.png b/res/drawable-hdpi/chip_background_selected.9.png
index e05657f..1d9b5ee 100644
--- a/res/drawable-hdpi/chip_background_selected.9.png
+++ b/res/drawable-hdpi/chip_background_selected.9.png
Binary files differ
diff --git a/res/drawable-hdpi/chip_delete.png b/res/drawable-hdpi/chip_delete.png
index 75cde4a..feccc69 100644
--- a/res/drawable-hdpi/chip_delete.png
+++ b/res/drawable-hdpi/chip_delete.png
Binary files differ
diff --git a/res/drawable-mdpi/chip_background.9.png b/res/drawable-mdpi/chip_background.9.png
index 99fd037..116f731 100644
--- a/res/drawable-mdpi/chip_background.9.png
+++ b/res/drawable-mdpi/chip_background.9.png
Binary files differ
diff --git a/res/drawable-mdpi/chip_background_invalid.9.png b/res/drawable-mdpi/chip_background_invalid.9.png
index f90bec5..ad349bf 100644
--- a/res/drawable-mdpi/chip_background_invalid.9.png
+++ b/res/drawable-mdpi/chip_background_invalid.9.png
Binary files differ
diff --git a/res/drawable-mdpi/chip_background_selected.9.png b/res/drawable-mdpi/chip_background_selected.9.png
index 308fa03..ceda86e 100644
--- a/res/drawable-mdpi/chip_background_selected.9.png
+++ b/res/drawable-mdpi/chip_background_selected.9.png
Binary files differ
diff --git a/res/drawable-mdpi/chip_delete.png b/res/drawable-mdpi/chip_delete.png
index 75cde4a..294db89 100644
--- a/res/drawable-mdpi/chip_delete.png
+++ b/res/drawable-mdpi/chip_delete.png
Binary files differ
diff --git a/res/drawable-xhdpi/chip_background.9.png b/res/drawable-xhdpi/chip_background.9.png
index 72b0f22..4fe3fe4 100644
--- a/res/drawable-xhdpi/chip_background.9.png
+++ b/res/drawable-xhdpi/chip_background.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/chip_background_invalid.9.png b/res/drawable-xhdpi/chip_background_invalid.9.png
index a9195ea..be64165 100644
--- a/res/drawable-xhdpi/chip_background_invalid.9.png
+++ b/res/drawable-xhdpi/chip_background_invalid.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/chip_background_selected.9.png b/res/drawable-xhdpi/chip_background_selected.9.png
index abed86a..37400f3 100644
--- a/res/drawable-xhdpi/chip_background_selected.9.png
+++ b/res/drawable-xhdpi/chip_background_selected.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/chip_delete.png b/res/drawable-xhdpi/chip_delete.png
new file mode 100644
index 0000000..bed6d67
--- /dev/null
+++ b/res/drawable-xhdpi/chip_delete.png
Binary files differ
diff --git a/res/drawable-xxhdpi/chip_background.9.png b/res/drawable-xxhdpi/chip_background.9.png
new file mode 100644
index 0000000..d8fff51
--- /dev/null
+++ b/res/drawable-xxhdpi/chip_background.9.png
Binary files differ
diff --git a/res/drawable-xxhdpi/chip_background_invalid.9.png b/res/drawable-xxhdpi/chip_background_invalid.9.png
new file mode 100644
index 0000000..4ae403e
--- /dev/null
+++ b/res/drawable-xxhdpi/chip_background_invalid.9.png
Binary files differ
diff --git a/res/drawable-xxhdpi/chip_background_selected.9.png b/res/drawable-xxhdpi/chip_background_selected.9.png
new file mode 100644
index 0000000..4e0f00e
--- /dev/null
+++ b/res/drawable-xxhdpi/chip_background_selected.9.png
Binary files differ
diff --git a/res/drawable-xxhdpi/chip_delete.png b/res/drawable-xxhdpi/chip_delete.png
new file mode 100644
index 0000000..f6d3196
--- /dev/null
+++ b/res/drawable-xxhdpi/chip_delete.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_contact_picture.png b/res/drawable-xxhdpi/ic_contact_picture.png
new file mode 100644
index 0000000..05a65f6
--- /dev/null
+++ b/res/drawable-xxhdpi/ic_contact_picture.png
Binary files differ
diff --git a/res/values/dimen.xml b/res/values/dimen.xml
index f989c86..0304e1f 100644
--- a/res/values/dimen.xml
+++ b/res/values/dimen.xml
@@ -15,8 +15,8 @@
-->
<resources>
- <dimen name="chip_padding">8dip</dimen>
- <dimen name="chip_height">32dip</dimen>
+ <dimen name="chip_padding">3dip</dimen>
+ <dimen name="chip_height">36dip</dimen>
<dimen name="chip_text_size">14sp</dimen>
<dimen name="line_spacing_extra">4dip</dimen>
<integer name="chips_max_lines">-1</integer>
diff --git a/src/com/android/ex/chips/RecipientEditTextView.java b/src/com/android/ex/chips/RecipientEditTextView.java
index 2a5405e..cd999d9 100644
--- a/src/com/android/ex/chips/RecipientEditTextView.java
+++ b/src/com/android/ex/chips/RecipientEditTextView.java
@@ -28,12 +28,16 @@ import android.content.res.Resources;
import android.content.res.TypedArray;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
+import android.graphics.BitmapShader;
import android.graphics.Canvas;
+import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
+import android.graphics.Paint.Style;
import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.RectF;
+import android.graphics.Shader.TileMode;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
@@ -827,9 +831,33 @@ public class RecipientEditTextView extends MultiAutoCompleteTextView implements
* rectangle of the canvas.
*/
protected void drawIconOnCanvas(Bitmap icon, Canvas canvas, Paint paint, RectF src, RectF dst) {
- Matrix matrix = new Matrix();
+ final Matrix matrix = new Matrix();
+
+ // Draw bitmap through shader first.
+ final BitmapShader shader = new BitmapShader(icon, TileMode.CLAMP, TileMode.CLAMP);
+ matrix.reset();
+
+ // Fit bitmap to bounds.
matrix.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
- canvas.drawBitmap(icon, matrix, paint);
+
+ shader.setLocalMatrix(matrix);
+ paint.reset();
+ paint.setShader(shader);
+ paint.setAntiAlias(true);
+ paint.setFilterBitmap(true);
+ paint.setDither(true);
+ canvas.drawCircle(dst.centerX(), dst.centerY(), dst.width() / 2f, paint);
+
+ // Then draw the border.
+ final float borderWidth = 1f;
+ paint.reset();
+ paint.setColor(Color.TRANSPARENT);
+ paint.setStyle(Style.STROKE);
+ paint.setStrokeWidth(borderWidth);
+ paint.setAntiAlias(true);
+ canvas.drawCircle(dst.centerX(), dst.centerY(), dst.width() / 2f - borderWidth / 2, paint);
+
+ paint.reset();
}
private DrawableRecipientChip constructChipSpan(RecipientEntry contact, boolean pressed)
@@ -936,8 +964,10 @@ public class RecipientEditTextView extends MultiAutoCompleteTextView implements
if (mInvalidChipBackground == null) {
mInvalidChipBackground = r.getDrawable(R.drawable.chip_background_invalid);
}
- mAvatarPosition = a.getInt(R.styleable.RecipientEditTextView_avatarPosition, 0);
- mImageSpanAlignment = a.getInt(R.styleable.RecipientEditTextView_imageSpanAlignment, 0);
+ mAvatarPosition =
+ a.getInt(R.styleable.RecipientEditTextView_avatarPosition, AVATAR_POSITION_START);
+ mImageSpanAlignment = a.getInt(R.styleable.RecipientEditTextView_imageSpanAlignment,
+ IMAGE_SPAN_ALIGNMENT_BASELINE);
mDisableDelete = a.getBoolean(R.styleable.RecipientEditTextView_disableDelete, false);
mLineSpacingExtra = r.getDimension(R.dimen.line_spacing_extra);