Make shortcut icons adjust to hdpi display.
bc_triaged bug: http://b/issue?id=2171333
Change-Id: I3ee009e6469c0472f21a1cf82875a8419c39f59a
diff --git a/src/com/android/contacts/ContactsListActivity.java b/src/com/android/contacts/ContactsListActivity.java
index c549c9d..c4e37af 100644
--- a/src/com/android/contacts/ContactsListActivity.java
+++ b/src/com/android/contacts/ContactsListActivity.java
@@ -77,6 +77,7 @@
import android.provider.ContactsContract.Intents.UI;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
+import android.util.DisplayMetrics;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextThemeWrapper;
@@ -1355,6 +1356,7 @@
private Bitmap generatePhoneNumberIcon(long contactId, int type, int actionResId) {
final Resources r = getResources();
boolean drawPhoneOverlay = true;
+ final float scaleDensity = getResources().getDisplayMetrics().scaledDensity;
Bitmap photo = loadContactPhoto(contactId, null);
if (photo == null) {
@@ -1406,11 +1408,11 @@
}
if (overlay != null) {
Paint textPaint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG);
- textPaint.setTextSize(20.0f);
+ textPaint.setTextSize(20.0f * scaleDensity);
textPaint.setTypeface(Typeface.DEFAULT_BOLD);
textPaint.setColor(r.getColor(R.color.textColorIconOverlay));
textPaint.setShadowLayer(3f, 1, 1, r.getColor(R.color.textColorIconOverlayShadow));
- canvas.drawText(overlay, 2, 16, textPaint);
+ canvas.drawText(overlay, 2 * scaleDensity, 16 * scaleDensity, textPaint);
}
// Draw the phone action icon as an overlay
@@ -1419,7 +1421,8 @@
if (phoneIcon != null) {
src.set(0, 0, phoneIcon.getWidth(), phoneIcon.getHeight());
int iconWidth = icon.getWidth();
- dst.set(iconWidth - 20, -1, iconWidth, 19);
+ dst.set(iconWidth - ((int) (20 * scaleDensity)), -1,
+ iconWidth, ((int) (19 * scaleDensity)));
canvas.drawBitmap(phoneIcon, src, dst, photoPaint);
}
}
@@ -2742,7 +2745,7 @@
@Override
public boolean areAllItemsEnabled() {
- return mMode != MODE_STARRED
+ return mMode != MODE_STARRED
&& (mMode & MODE_MASK_SHOW_NUMBER_OF_CONTACTS) == 0
&& mSuggestionsCursorCount == 0;
}
@@ -2755,7 +2758,7 @@
}
position--;
}
-
+
if (mSuggestionsCursorCount > 0) {
return position != 0 && position != mSuggestionsCursorCount + 1;
}