Make the DisplayWindow use a GtkListView

Review Request #2227 — Created Feb. 7, 2023 and submitted

Information

pidgin/pidgin
default

Reviewers

The traditional pattern of using a TreeView and Notebook/stack has been
removed. This now use a ListView with a model that contains the child widgets,
and an AdwBin where we swap the children in and out.

I didn't implement everything, as now that this window is a bit more mixed
content, things aren't as clear cut. I left some TODO's in the code describing
these scenarios.

Tested opening and closing chats in the ui. Verified the keybinds work for navigating everything thing.

Summary ID
Make the DisplayWindow use a GtkListView
The traditional pattern of using a TreeView and Notebook/stack has been removed. This now use a ListView with a model that contains the child widgets, and an AdwBin where we swap the children in and out. I didn't implement everything, as now that this window is a bit more mixed content, things aren't as clear cut. I left some TODO's in the code describing these scenarios.
392840f0156459ea2af8418412fdb26b620a1214
Description From Last Updated

s/that represents/that's

ivanhoeivanhoe

I guess one "widget" is enough?

ivanhoeivanhoe

s/the are/there are

ivanhoeivanhoe
ivanhoe
  1. 
      
  2. pidgin/pidgindisplayitem.h (Diff revision 1)
     
     
    Show all issues

    s/that represents/that's

  3. pidgin/pidgindisplayitem.h (Diff revision 1)
     
     
    Show all issues

    I guess one "widget" is enough?

  4. pidgin/pidgindisplayitem.h (Diff revision 1)
     
     
    Show all issues

    s/the are/there are

  5. 
      
grim
ivanhoe
  1. 
      
  2. pidgin/pidgindisplaywindow.c (Diff revision 2)
     
     

    Who takes care of freeing that tree_model?

  3. pidgin/pidgindisplaywindow.c (Diff revision 2)
     
     

    Who takes care of freeing that item?

  4. 
      
grim
ivanhoe
  1. Ship It!
  2. 
      
grim
Review request changed
Status:
Completed