aboutsummaryrefslogtreecommitdiffstats
path: root/src/de/gultsch/chat/utils/Beautifier.java
diff options
context:
space:
mode:
authorDaniel Gultsch <daniel.gultsch@rwth-aachen.de>2014-02-01 01:25:56 +0100
committerDaniel Gultsch <daniel.gultsch@rwth-aachen.de>2014-02-01 01:25:56 +0100
commit43531113b798cda6b2f76257641f38b0af986437 (patch)
tree73107f086ec5d772a9041aa3ad4b1c7b8e0dcce9 /src/de/gultsch/chat/utils/Beautifier.java
parentc3e4f0eaacf8ab32ceab32b8f46e8b7d85c71cfb (diff)
more code cleanup for xmpp parser. more eventy. nice unknown contact pictures
Diffstat (limited to 'src/de/gultsch/chat/utils/Beautifier.java')
-rw-r--r--src/de/gultsch/chat/utils/Beautifier.java43
1 files changed, 39 insertions, 4 deletions
diff --git a/src/de/gultsch/chat/utils/Beautifier.java b/src/de/gultsch/chat/utils/Beautifier.java
index 43b7acc2..5184c0c7 100644
--- a/src/de/gultsch/chat/utils/Beautifier.java
+++ b/src/de/gultsch/chat/utils/Beautifier.java
@@ -3,18 +3,24 @@ package de.gultsch.chat.utils;
import java.text.SimpleDateFormat;
import java.util.Date;
+import android.graphics.Bitmap;
+import android.graphics.Canvas;
+import android.graphics.Paint;
+import android.graphics.Rect;
+import android.util.DisplayMetrics;
+
public class Beautifier {
public static String readableTimeDifference(long time) {
- if (time==0) {
+ if (time == 0) {
return "just now";
}
Date date = new Date(time);
long difference = (System.currentTimeMillis() - time) / 1000;
- if (difference<60) {
+ if (difference < 60) {
return "just now";
- } else if (difference<60*10) {
+ } else if (difference < 60 * 10) {
return difference / 60 + " min ago";
- } else if (difference<60*60*24) {
+ } else if (difference < 60 * 60 * 24) {
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
return sdf.format(date);
} else {
@@ -22,4 +28,33 @@ public class Beautifier {
return sdf.format(date);
}
}
+
+ public static Bitmap getUnknownContactPicture(String name, int size) {
+ String firstLetter = name.substring(0, 1).toUpperCase();
+ String centerLetter = name.substring(name.length() / 2,
+ (name.length() / 2) + 1);
+
+ int holoColors[] = { 0xFF1da9da, 0xFFb368d9, 0xFF83b600, 0xFFffa713,
+ 0xFFe92727 };
+
+ int color = holoColors[centerLetter.charAt(0) % holoColors.length];
+
+ Bitmap bitmap = Bitmap
+ .createBitmap(size, size, Bitmap.Config.ARGB_8888);
+ Canvas canvas = new Canvas(bitmap);
+
+ bitmap.eraseColor(color);
+
+ Paint paint = new Paint();
+ paint.setColor(0xffe5e5e5);
+ paint.setTextSize((float) (size * 0.9));
+ paint.setAntiAlias(true);
+ Rect rect = new Rect();
+ paint.getTextBounds(firstLetter, 0, 1, rect);
+ float width = paint.measureText(firstLetter);
+ canvas.drawText(firstLetter, (size / 2) - (width / 2), (size / 2)
+ + (rect.height() / 2), paint);
+
+ return bitmap;
+ }
}