sysprof: sort before filter and make incremental

Doing this in reverse *and* making it incremental seems to work better than
just making them incremental. So do that so the UI stays responsive even
if it flickers to an empty set momentarily.
This commit is contained in:
Christian Hergert
2023-08-31 12:24:07 -07:00
parent c451cd0e19
commit ab026a973e

View File

@ -76,12 +76,14 @@
<property name="model">
<object class="GtkSingleSelection" id="selection">
<property name="model">
<object class="GtkSortListModel">
<binding name="sorter">
<lookup name="sorter">column_view</lookup>
</binding>
<object class="GtkFilterListModel">
<property name="incremental">true</property>
<property name="model">
<object class="GtkFilterListModel">
<object class="GtkSortListModel">
<property name="incremental">true</property>
<binding name="sorter">
<lookup name="sorter">column_view</lookup>
</binding>
<property name="model">
<object class="SysprofTimeFilterModel">
<binding name="time-span">
@ -98,66 +100,66 @@
</binding>
</object>
</property>
<property name="filter">
<object class="GtkAnyFilter">
<!-- support searching in all fields -->
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="sender" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="destination" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="path" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="interface" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="member" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
</object>
</property>
<property name="filter">
<object class="GtkAnyFilter">
<!-- support searching in all fields -->
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="sender" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</property>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="destination" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="path" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="interface" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
<child>
<object class="GtkStringFilter">
<property name="match-mode">substring</property>
<property name="expression">
<lookup name="member" type="SysprofDocumentDBusMessage" />
</property>
<binding name="search">
<lookup name="text">filter_search_entry</lookup>
</binding>
</object>
</child>
</object>
</property>
</object>