Convert GtkTreeView in status editor to GtkColumnView
Review Request #2199 — Created Jan. 17, 2023 and submitted — Latest diff uploaded
There is a (big or small, up to you) hack in this implementation:
PidginSavedStatus
is a boxed type and so cannot be placed in aGListModel
. Thus the model uses a dummyGObject
instance for each row that works similar to eachGtkTreeModel
row. This is annoying, but means the rest of the.ui
remains similar to how it would be with a non-boxed type.Compared to before, this is only missing search.
Like the account manager, we might want to redesign this entirely, but this is just a straight move away from
GtkTreeView
due to its impending deprecation. Also, now I have some idea howGtkColumnView
works at least.
Double-clicked a few saved statuses to confirm the editor dialogs opened, then clicked Modify to confirm that it opened the existing editor dialog.
Added a new saved status and confirmed that they were in the view.
Deleted a saved status and confirmed it was no longer in the view.
Closed the manager window with editor dialogs opened and confirmed all the editor dialogs closed as they used to.
Confirmed that Remove button was disabled when selecting an in-use status.
Clicked the column headers and confirmed that the statuses were sorted by them.