@@ -78,24 +78,11 @@ public FilteredArrayAdapter(Context context, int resource, int textViewResourceI
7878 this .originalObjects = objects ;
7979 }
8080
81- @ SuppressWarnings ( "unchecked" )
81+ @ NonNull
8282 @ Override
83- public void notifyDataSetChanged () {
84- ((AppFilter )getFilter ()).setSourceObjects (this .originalObjects );
85- super .notifyDataSetChanged ();
86- }
87-
88- @ SuppressWarnings ("unchecked" )
89- @ Override
90- public void notifyDataSetInvalidated (){
91- ((AppFilter )getFilter ()).setSourceObjects (this .originalObjects );
92- super .notifyDataSetInvalidated ();
93- }
94-
95- @ Override
96- public @ NonNull Filter getFilter () {
83+ public Filter getFilter () {
9784 if (filter == null )
98- filter = new AppFilter (originalObjects );
85+ filter = new AppFilter ();
9986 return filter ;
10087 }
10188
@@ -117,20 +104,10 @@ public void notifyDataSetInvalidated(){
117104 */
118105 private class AppFilter extends Filter {
119106
120- private ArrayList <T > sourceObjects ;
121-
122- public AppFilter (List <T > objects ) {
123- setSourceObjects (objects );
124- }
125-
126- public void setSourceObjects (List <T > objects ) {
127- synchronized (this ) {
128- sourceObjects = new ArrayList <>(objects );
129- }
130- }
131-
132107 @ Override
133108 protected FilterResults performFiltering (CharSequence chars ) {
109+ ArrayList <T > sourceObjects = new ArrayList <T >(originalObjects );
110+
134111 FilterResults result = new FilterResults ();
135112 if (chars != null && chars .length () > 0 ) {
136113 String mask = chars .toString ();
0 commit comments