diff options
Diffstat (limited to 'chips/src/com/android/ex/chips/BaseRecipientAdapter.java')
-rw-r--r-- | chips/src/com/android/ex/chips/BaseRecipientAdapter.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/chips/src/com/android/ex/chips/BaseRecipientAdapter.java b/chips/src/com/android/ex/chips/BaseRecipientAdapter.java index c0cfa19..c981728 100644 --- a/chips/src/com/android/ex/chips/BaseRecipientAdapter.java +++ b/chips/src/com/android/ex/chips/BaseRecipientAdapter.java @@ -499,6 +499,8 @@ public abstract class BaseRecipientAdapter extends BaseAdapter implements Filter private final DelayedMessageHandler mDelayedMessageHandler = new DelayedMessageHandler(); + private EntriesUpdatedObserver mEntriesUpdatedObserver; + /** * Constructor for email queries. */ @@ -706,9 +708,14 @@ public abstract class BaseRecipientAdapter extends BaseAdapter implements Filter return entries; } + public void registerUpdateObserver(EntriesUpdatedObserver observer) { + mEntriesUpdatedObserver = observer; + } + /** Resets {@link #mEntries} and notify the event to its parent ListView. */ private void updateEntries(List<RecipientEntry> newEntries) { mEntries = newEntries; + mEntriesUpdatedObserver.onChanged(newEntries); notifyDataSetChanged(); } @@ -967,4 +974,12 @@ public abstract class BaseRecipientAdapter extends BaseAdapter implements Filter protected int getPhotoId() { return android.R.id.icon; } + + /** + * Interface called before the BaseRecipientAdapter updates recipient + * results in the popup window. + */ + protected interface EntriesUpdatedObserver { + public void onChanged(List<RecipientEntry> entries); + } } |