Convert GtkTreeView in status editor to GtkColumnView
Review Request #2199 — Created Jan. 17, 2023 and submitted
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.
Summary | ID |
---|---|
6e4caa0eaedf534b4adf0f84dbc665e55f2a0b44 |
Description | From | Last Updated |
---|---|---|
We determined we don't need to set object if this the parent widget we're defining correct? |
grim |
- Change Summary:
-
Remove extra
object
in signal connections. - Testing Done:
-
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. ~ 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. - Commits:
-
Summary ID c4526f4e8ccbf8d6c5721e7fe962e425b826fbf0 6e4caa0eaedf534b4adf0f84dbc665e55f2a0b44