Skip to content

Use selection and filter models to list contacts

Niels De Graef requested to merge store-listmodel into main

GTK4 added some interesting concepts on top of / in conjunction with list models, for example to map one list model on another by sorting and/or filtering. Another example is to use this with selections.

This commit applies that concept to Contacts, which now uses the Contacts.Store to build a base list model on top of the Folks.IndividualAggregator, on top a sorted model (which can be adjusted to sort on First/Last name, and finally a filter model, to filter on the text in the search entry.

Another reason to do this, is that it allows us to use a Gtk.ListView in the future. It's not possible to do so already due to the fact that we need to differentiate between "Favorites" and "Other Contacts", which needs extra API on Gtk.Listview side.

Merge request reports