Changing contact name ellipsis to TruncateAt.END on tablet
Change-Id: Id3b17fda68cf8dcdc8ab4b6e211b68365a3039db
diff --git a/src/com/android/contacts/list/ContactListAdapter.java b/src/com/android/contacts/list/ContactListAdapter.java
index 2b1970e..4b34323 100644
--- a/src/com/android/contacts/list/ContactListAdapter.java
+++ b/src/com/android/contacts/list/ContactListAdapter.java
@@ -221,6 +221,7 @@
view.setUnknownNameText(mUnknownNameText);
view.setTextWithHighlightingFactory(getTextWithHighlightingFactory());
view.setQuickContactEnabled(isQuickContactEnabled());
+ view.setActivatedStateSupported(isSelectionVisible());
return view;
}
diff --git a/src/com/android/contacts/list/ContactListItemView.java b/src/com/android/contacts/list/ContactListItemView.java
index ecfa8e9..2c37242 100644
--- a/src/com/android/contacts/list/ContactListItemView.java
+++ b/src/com/android/contacts/list/ContactListItemView.java
@@ -110,6 +110,8 @@
private CharSequence mUnknownNameText;
+ private boolean mActivatedStateSupported;
+
/**
* Special class to allow the parent to be pressed without being pressed itself.
* This way the line of a tab can be pressed, but the image itself is not.
@@ -600,7 +602,7 @@
if (mNameTextView == null) {
mNameTextView = new TextView(mContext);
mNameTextView.setSingleLine(true);
- mNameTextView.setEllipsize(TruncateAt.MARQUEE);
+ mNameTextView.setEllipsize(getTextEllipsis());
mNameTextView.setTextAppearance(mContext, android.R.style.TextAppearance_Large);
mNameTextView.setGravity(Gravity.CENTER_VERTICAL);
addView(mNameTextView);
@@ -655,7 +657,7 @@
if (mPhoneticNameTextView == null) {
mPhoneticNameTextView = new TextView(mContext);
mPhoneticNameTextView.setSingleLine(true);
- mPhoneticNameTextView.setEllipsize(TruncateAt.MARQUEE);
+ mPhoneticNameTextView.setEllipsize(getTextEllipsis());
mPhoneticNameTextView.setTextAppearance(mContext, android.R.style.TextAppearance_Small);
mPhoneticNameTextView.setTypeface(mPhoneticNameTextView.getTypeface(), Typeface.BOLD);
addView(mPhoneticNameTextView);
@@ -700,7 +702,7 @@
if (mLabelView == null) {
mLabelView = new TextView(mContext);
mLabelView.setSingleLine(true);
- mLabelView.setEllipsize(TruncateAt.MARQUEE);
+ mLabelView.setEllipsize(getTextEllipsis());
mLabelView.setTextAppearance(mContext, android.R.style.TextAppearance_Small);
mLabelView.setTypeface(mLabelView.getTypeface(), Typeface.BOLD);
addView(mLabelView);
@@ -731,7 +733,7 @@
if (mDataView == null) {
mDataView = new TextView(mContext);
mDataView.setSingleLine(true);
- mDataView.setEllipsize(TruncateAt.MARQUEE);
+ mDataView.setEllipsize(getTextEllipsis());
mDataView.setTextAppearance(mContext, android.R.style.TextAppearance_Small);
addView(mDataView);
}
@@ -760,7 +762,7 @@
if (mSnippetView == null) {
mSnippetView = new TextView(mContext);
mSnippetView.setSingleLine(true);
- mSnippetView.setEllipsize(TruncateAt.MARQUEE);
+ mSnippetView.setEllipsize(getTextEllipsis());
mSnippetView.setTextAppearance(mContext, android.R.style.TextAppearance_Small);
mSnippetView.setTypeface(mSnippetView.getTypeface(), Typeface.BOLD);
addView(mSnippetView);
@@ -787,6 +789,10 @@
}
}
+ private TruncateAt getTextEllipsis() {
+ return mActivatedStateSupported ? TruncateAt.START : TruncateAt.MARQUEE;
+ }
+
public void showDisplayName(Cursor cursor, int nameColumnIndex, boolean highlightingEnabled,
int alternativeNameColumnIndex) {
cursor.copyStringToBuffer(nameColumnIndex, nameBuffer);
@@ -881,6 +887,10 @@
setData(dataBuffer.data, dataBuffer.sizeCopied);
}
+ public void setActivatedStateSupported(boolean flag) {
+ this.mActivatedStateSupported = flag;
+ }
+
@Override
public void requestLayout() {
// We will assume that once measured this will not need to resize