@@ -78,24 +78,11 @@ public FilteredArrayAdapter(Context context, int resource, int textViewResourceI
78
78
this .originalObjects = objects ;
79
79
}
80
80
81
- @ SuppressWarnings ( "unchecked" )
81
+ @ NonNull
82
82
@ 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 () {
97
84
if (filter == null )
98
- filter = new AppFilter (originalObjects );
85
+ filter = new AppFilter ();
99
86
return filter ;
100
87
}
101
88
@@ -117,20 +104,10 @@ public void notifyDataSetInvalidated(){
117
104
*/
118
105
private class AppFilter extends Filter {
119
106
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
-
132
107
@ Override
133
108
protected FilterResults performFiltering (CharSequence chars ) {
109
+ ArrayList <T > sourceObjects = new ArrayList <T >(originalObjects );
110
+
134
111
FilterResults result = new FilterResults ();
135
112
if (chars != null && chars .length () > 0 ) {
136
113
String mask = chars .toString ();
0 commit comments