Set layoutDirection for PinnedHeaderView on creation
Fixes crash when typing a character into the contact picker
caused by trying to access a null view.
Bug 8575063
Change-Id: Ie379b81cc1662143e395d89cad031a9c0749ebbb
diff --git a/src/com/android/contacts/common/list/IndexerListAdapter.java b/src/com/android/contacts/common/list/IndexerListAdapter.java
index 830ea81..14243ce 100644
--- a/src/com/android/contacts/common/list/IndexerListAdapter.java
+++ b/src/com/android/contacts/common/list/IndexerListAdapter.java
@@ -149,6 +149,7 @@
if (isSectionHeaderDisplayEnabled() && viewIndex == getPinnedHeaderCount() - 1) {
if (mHeader == null) {
mHeader = createPinnedSectionHeaderView(mContext, parent);
+ mHeader.setLayoutDirection(parent.getLayoutDirection());
}
return mHeader;
} else {
diff --git a/src/com/android/contacts/common/list/PinnedHeaderListAdapter.java b/src/com/android/contacts/common/list/PinnedHeaderListAdapter.java
index 9591092..de5ea4f 100644
--- a/src/com/android/contacts/common/list/PinnedHeaderListAdapter.java
+++ b/src/com/android/contacts/common/list/PinnedHeaderListAdapter.java
@@ -83,6 +83,7 @@
view.setEnabled(false);
}
bindHeaderView(view, partition, getCursor(partition));
+ view.setLayoutDirection(parent.getLayoutDirection());
return view;
} else {
return null;
diff --git a/src/com/android/contacts/common/list/PinnedHeaderListView.java b/src/com/android/contacts/common/list/PinnedHeaderListView.java
index 3f207a5..9e166df 100644
--- a/src/com/android/contacts/common/list/PinnedHeaderListView.java
+++ b/src/com/android/contacts/common/list/PinnedHeaderListView.java
@@ -170,7 +170,6 @@
mHeaders[i] = new PinnedHeader();
}
mHeaders[i].view = mAdapter.getPinnedHeaderView(i, mHeaders[i].view, this);
- mHeaders[i].view.setLayoutDirection(getLayoutDirection());
}
mAnimationTargetTime = System.currentTimeMillis() + mAnimationDuration;