window: Move game filters to ui.games

This commit is contained in:
Jamie Gravendeel
2025-12-29 21:39:23 +01:00
committed by Laura Kramolis
parent 00795b83fd
commit 7bc9d6aee9
2 changed files with 18 additions and 11 deletions

View File

@@ -19,7 +19,24 @@ _SORT_MODES = {
"oldest": ("added", False),
}
model = Gtk.FlattenListModel.new(sources.model)
filter_ = Gtk.EveryFilter()
filter_.append(
Gtk.BoolFilter(
expression=Gtk.PropertyExpression.new(Game, None, "removed"),
invert=True,
)
)
filter_.append(
Gtk.BoolFilter(
expression=Gtk.PropertyExpression.new(Game, None, "blacklisted"),
invert=True,
)
)
model = Gtk.FilterListModel(
model=Gtk.FlattenListModel.new(sources.model),
filter=filter_,
watch_items=True, # pyright: ignore[reportCallIssue]
)
class GameSorter(Gtk.Sorter):

View File

@@ -262,16 +262,6 @@ template $Window: Adw.ApplicationWindow {
expression: expr item as <$Game>.hidden;
invert: bind template.show-hidden inverted;
}
BoolFilter {
expression: expr item as <$Game>.removed;
invert: true;
}
BoolFilter {
expression: expr item as <$Game>.blacklisted;
invert: true;
}
};
model: bind template.model;