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:
parent
93d18ed2a9
commit
bffab0942f
12 changed files with 1550 additions and 529 deletions
32
malcontent-control/restrict-applications-selector.ui
Normal file
32
malcontent-control/restrict-applications-selector.ui
Normal file
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Copyright © 2020 Endless, Inc. -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.12"/>
|
||||
<template class="MctRestrictApplicationsSelector" parent="GtkBox">
|
||||
<child>
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="visible">True</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="hscrollbar-policy">never</property>
|
||||
<property name="min-content-height">100</property>
|
||||
<property name="max-content-height">400</property>
|
||||
<property name="propagate-natural-height">True</property>
|
||||
<property name="shadow-type">etched-in</property>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBox" id="listbox">
|
||||
<property name="visible">True</property>
|
||||
<property name="selection-mode">none</property>
|
||||
|
||||
<child type="placeholder">
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">No applications found to restrict.</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</template>
|
||||
</interface>
|
Loading…
Add table
Add a link
Reference in a new issue