Improved rule search

This commit is contained in:
M66B
2022-04-01 08:49:40 +02:00
parent f2cbbeb83a
commit a4f0198b36
2 changed files with 38 additions and 17 deletions

View File

@@ -551,24 +551,9 @@ public class AdapterRule extends RecyclerView.Adapter<AdapterRule.ViewHolder> {
else {
items = new ArrayList<>();
String query = search.toLowerCase().trim();
for (TupleRuleEx rule : rules) {
if (rule.name.toLowerCase().contains(query))
for (TupleRuleEx rule : rules)
if (rule.matches(query))
items.add(rule);
else
try {
JSONObject jcondition = new JSONObject(rule.condition);
Iterator<String> keys = jcondition.keys();
while (keys.hasNext()) {
String key = keys.next();
if (jcondition.get(key).toString().toLowerCase().contains(query)) {
items.add(rule);
break;
}
}
} catch (JSONException ex) {
Log.e(ex);
}
}
}
DiffUtil.DiffResult diff = DiffUtil.calculateDiff(new DiffCallback(selected, items), false);