malcontent-control: Move the app restrictions into a separate dialogue

Rather than having a scrollable listbox within a scrollable list of
widgets, move the listbox out to a separate dialogue.

This involves separating out all the code to query the apps, to get and
to set the app filter, from `MctUserControls` out into the new
`MctRestrictApplicationsSelector`. Most of it is unchanged, aside from
its interaction with the filter: the filter is now provided to the
widget by the calling code, rather than being queried by the widget
itself. The widget’s status can be queried into an
`MctAppFilterBuilder`, rather than being used to set the app filter
directly.

This commit redesigns the appearance of the relevant widgets in the main
window so that they follow the new list-box-like visual design. A
following commit will apply similar changes to the other widgest in the
main screen.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
This commit is contained in:
Philip Withnall 2020-01-28 14:16:40 +00:00
parent 93d18ed2a9
commit bffab0942f
12 changed files with 1550 additions and 529 deletions

View file

@ -7,6 +7,10 @@ malcontent-control/gs-content-rating.c
malcontent-control/main.ui
malcontent-control/org.freedesktop.MalcontentControl.appdata.xml.in
malcontent-control/org.freedesktop.MalcontentControl.desktop.in
malcontent-control/restrict-applications-dialog.c
malcontent-control/restrict-applications-dialog.ui
malcontent-control/restrict-applications-selector.c
malcontent-control/restrict-applications-selector.ui
malcontent-control/user-controls.c
malcontent-control/user-controls.ui
pam/pam_malcontent.c