| Index: chrome/android/java/src/org/chromium/chrome/browser/widget/DateDividedAdapter.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/widget/DateDividedAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/widget/DateDividedAdapter.java
|
| index ad4c281961dfe9b570808ab911b68ff015eea5b1..ee707031eb1d11075098289c351d2c33d21edbf3 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/widget/DateDividedAdapter.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/widget/DateDividedAdapter.java
|
| @@ -288,15 +288,20 @@ public abstract class DateDividedAdapter extends Adapter<RecyclerView.ViewHolder
|
| }
|
| }
|
|
|
| - // Tell each group where they start in the list.
|
| + setGroupPositions();
|
| + notifyDataSetChanged();
|
| + }
|
| +
|
| + /**
|
| + * Tells each group where they start in the list.
|
| + */
|
| + private void setGroupPositions() {
|
| int startIndex = 0;
|
| for (ItemGroup group : mGroups) {
|
| group.resetPosition();
|
| group.setPosition(startIndex);
|
| startIndex += group.size();
|
| }
|
| -
|
| - notifyDataSetChanged();
|
| }
|
|
|
| /**
|
| @@ -314,6 +319,27 @@ public abstract class DateDividedAdapter extends Adapter<RecyclerView.ViewHolder
|
| }
|
|
|
| /**
|
| + * Removes the list headrer.
|
| + */
|
| + public void removeHeader() {
|
| + if (!mHasListHeader) return;
|
| +
|
| + mGroups.remove(mGroups.first());
|
| + mSize--;
|
| + mHasListHeader = false;
|
| +
|
| + setGroupPositions();
|
| + notifyDataSetChanged();
|
| + }
|
| +
|
| + /**
|
| + * Whether the adapter has a list header.
|
| + */
|
| + public boolean hasListHeader() {
|
| + return mHasListHeader;
|
| + }
|
| +
|
| + /**
|
| * Adds a footer as the last group in this adapter.
|
| */
|
| public void addFooter() {
|
| @@ -456,6 +482,7 @@ public abstract class DateDividedAdapter extends Adapter<RecyclerView.ViewHolder
|
| mSize--;
|
| }
|
|
|
| + setGroupPositions();
|
| notifyDataSetChanged();
|
| }
|
|
|
|
|