15
15
16
16
import awais .instagrabber .adapters .viewholder .StoryListViewHolder ;
17
17
import awais .instagrabber .databinding .ItemNotificationBinding ;
18
- import awais .instagrabber .models . FeedStoryModel ;
18
+ import awais .instagrabber .repositories . responses . stories . Story ;
19
19
import awais .instagrabber .utils .TextUtils ;
20
20
21
- public final class FeedStoriesListAdapter extends ListAdapter <FeedStoryModel , StoryListViewHolder > implements Filterable {
21
+ public final class FeedStoriesListAdapter extends ListAdapter <Story , StoryListViewHolder > implements Filterable {
22
22
private final OnFeedStoryClickListener listener ;
23
- private List <FeedStoryModel > list ;
23
+ private List <Story > list ;
24
24
25
25
private final Filter filter = new Filter () {
26
26
@ NonNull
27
27
@ Override
28
28
protected FilterResults performFiltering (final CharSequence filter ) {
29
29
final String query = TextUtils .isEmpty (filter ) ? null : filter .toString ().toLowerCase ();
30
- List <FeedStoryModel > filteredList = list ;
30
+ List <Story > filteredList = list ;
31
31
if (list != null && query != null ) {
32
32
filteredList = list .stream ()
33
- .filter (feedStoryModel -> feedStoryModel .getProfileModel ()
33
+ .filter (feedStoryModel -> feedStoryModel .getUser ()
34
34
.getUsername ()
35
35
.toLowerCase ()
36
36
.contains (query ))
@@ -45,19 +45,19 @@ protected FilterResults performFiltering(final CharSequence filter) {
45
45
@ Override
46
46
protected void publishResults (final CharSequence constraint , final FilterResults results ) {
47
47
//noinspection unchecked
48
- submitList ((List <FeedStoryModel >) results .values , true );
48
+ submitList ((List <Story >) results .values , true );
49
49
}
50
50
};
51
51
52
- private static final DiffUtil .ItemCallback <FeedStoryModel > diffCallback = new DiffUtil .ItemCallback <FeedStoryModel >() {
52
+ private static final DiffUtil .ItemCallback <Story > diffCallback = new DiffUtil .ItemCallback <Story >() {
53
53
@ Override
54
- public boolean areItemsTheSame (@ NonNull final FeedStoryModel oldItem , @ NonNull final FeedStoryModel newItem ) {
55
- return oldItem .getStoryMediaId ().equals (newItem .getStoryMediaId ());
54
+ public boolean areItemsTheSame (@ NonNull final Story oldItem , @ NonNull final Story newItem ) {
55
+ return oldItem .getId ().equals (newItem .getId ());
56
56
}
57
57
58
58
@ Override
59
- public boolean areContentsTheSame (@ NonNull final FeedStoryModel oldItem , @ NonNull final FeedStoryModel newItem ) {
60
- return oldItem .getStoryMediaId ().equals (newItem .getStoryMediaId ()) && oldItem .isFullyRead () == newItem .isFullyRead ();
59
+ public boolean areContentsTheSame (@ NonNull final Story oldItem , @ NonNull final Story newItem ) {
60
+ return oldItem .getId ().equals (newItem .getId ()) && oldItem .getSeen () == newItem .getSeen ();
61
61
}
62
62
};
63
63
@@ -71,15 +71,15 @@ public Filter getFilter() {
71
71
return filter ;
72
72
}
73
73
74
- private void submitList (@ Nullable final List <FeedStoryModel > list , final boolean isFiltered ) {
74
+ private void submitList (@ Nullable final List <Story > list , final boolean isFiltered ) {
75
75
if (!isFiltered ) {
76
76
this .list = list ;
77
77
}
78
78
super .submitList (list );
79
79
}
80
80
81
81
@ Override
82
- public void submitList (final List <FeedStoryModel > list ) {
82
+ public void submitList (final List <Story > list ) {
83
83
submitList (list , false );
84
84
}
85
85
@@ -93,12 +93,12 @@ public StoryListViewHolder onCreateViewHolder(@NonNull final ViewGroup parent, f
93
93
94
94
@ Override
95
95
public void onBindViewHolder (@ NonNull final StoryListViewHolder holder , final int position ) {
96
- final FeedStoryModel model = getItem (position );
96
+ final Story model = getItem (position );
97
97
holder .bind (model , listener );
98
98
}
99
99
100
100
public interface OnFeedStoryClickListener {
101
- void onFeedStoryClick (final FeedStoryModel model );
101
+ void onFeedStoryClick (final Story model );
102
102
103
103
void onProfileClick (final String username );
104
104
}
0 commit comments