diff --git a/assets/release_notes.md b/assets/release_notes.md index 72324c1..8c91ef4 100644 --- a/assets/release_notes.md +++ b/assets/release_notes.md @@ -3,7 +3,8 @@ - Support display of custom status codes - Fix default values for list sorting - +- Fix bug related to null values in list filters +- Updated translations ### 0.21.2 - January 2026 --- diff --git a/lib/widget/paginator.dart b/lib/widget/paginator.dart index 123c7ab..6bbf355 100644 --- a/lib/widget/paginator.dart +++ b/lib/widget/paginator.dart @@ -61,6 +61,14 @@ abstract class PaginatedSearchState backup, ); + if (result == "null") { + if (tristate) { + return null; + } else { + return backup; + } + } + return result; } @@ -69,7 +77,7 @@ abstract class PaginatedSearchState final String settings_key = "${prefix}filter_${key}"; if (value == null) { - await InvenTreeSettingsManager().removeValue(settings_key); + await InvenTreeSettingsManager().setValue(settings_key, "null"); } else { await InvenTreeSettingsManager().setValue(settings_key, value); } diff --git a/lib/widget/part/bom_list.dart b/lib/widget/part/bom_list.dart index 5e17e53..0e87506 100644 --- a/lib/widget/part/bom_list.dart +++ b/lib/widget/part/bom_list.dart @@ -123,10 +123,22 @@ class _PaginatedBomListState extends PaginatedSearchState { @override Map> get filterOptions => { + "sub_part_active": { + "label": L10().filterActive, + "help_text": L10().filterActiveDetail, + "tristate": true, + "default": true, + }, "sub_part_assembly": { "label": L10().filterAssembly, "help_text": L10().filterAssemblyDetail, }, + "sub_part_virtual": { + "label": L10().filterVirtual, + "help_text": L10().filterVirtualDetail, + "tristate": true, + "default": true, + }, }; @override