After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 782737 - GtkListStore doesn't update sorting after a row is changed, only after a new value is set
GtkListStore doesn't update sorting after a row is changed, only after a new ...
Status: RESOLVED OBSOLETE
Product: gtk+
Classification: Platform
Component: .General
3.22.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2017-05-17 09:17 UTC by Benjamin Berg
Modified: 2018-04-15 00:03 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Benjamin Berg 2017-05-17 09:17:50 UTC
When using a sort function combined with e.g. GObject that is stored in a GtkListStore the sort order might change every time the GObject changes. In this case it is currently not sufficient to call gtk_tree_model_row_changed but instead calling gtk_list_store_set on the affected column is a must (i.e. simply setting it to the current value).

So the code seems to assume that the type of the sort column is immutable so that the sort order cannot change without the value itself being updated.

An example of this is in bug #778685.
Comment 1 Bastien Nocera 2017-05-17 10:34:39 UTC
This is the sort of bug that needs a minimal reproducer if you want it to be looked at.

I'm pretty certain that the tree model itself doesn't listen to its own "row-changed" signal, and as you're not storing the title in the model, the model's last updated timestamp won't be updated.
Comment 2 Matthias Clasen 2018-04-15 00:03:54 UTC
As announced a while ago, we are migrating to gitlab, and bugs that haven't seen activity in the last year or so will be not be migrated, but closed out in bugzilla.

If this bug is still relevant to you, you can open a new issue describing the symptoms and how to reproduce it with gtk 3.22.x or master in gitlab:

https://gitlab.gnome.org/GNOME/gtk/issues/new