From ad5a9c848d1705aeb1ba3b2aee20833518d2928f Mon Sep 17 00:00:00 2001 From: Thibault Deckers Date: Sun, 13 Apr 2025 19:02:29 +0200 Subject: [PATCH] #1507 syntax for extension filtering in title filter --- lib/model/filters/query.dart | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/model/filters/query.dart b/lib/model/filters/query.dart index e5c47c42b..9dc19092b 100644 --- a/lib/model/filters/query.dart +++ b/lib/model/filters/query.dart @@ -21,6 +21,7 @@ class QueryFilter extends CollectionFilter { static final _fieldPattern = RegExp(r'(.+)([=<>])(.+)'); static final _fileSizePattern = RegExp(r'(\d+)([KMG])?'); + static const keyContentExtension = 'EXT'; static const keyContentId = 'ID'; static const keyContentYear = 'YEAR'; static const keyContentMonth = 'MONTH'; @@ -112,6 +113,11 @@ class QueryFilter extends CollectionFilter { final valueInt = int.tryParse(valueString); switch (key) { + case keyContentExtension: + if (op == opEqual) { + final extension = '.$valueString'; + return (entry) => entry.extension?.toUpperCase() == extension; + } case keyContentId: if (valueInt == null) return null; if (op == opEqual) {