Skip to content

screencastwidget: Make window_list model based

Corey Berla requested to merge wip/corey/screencast into main

The window_list GtkListBox refreshes upon ::windows-changed. During the refresh, all ListBoxRow children are removed and then readded. This becomes problematic if a user selects an item and there's a subsequent window change event, in which case the selection changes to the first item in the list. The user may not be aware and starts sharing the wrong window.

Make the ListBox model based and only add / remove items if they are new or no longer exist.

Merge request reports