libmalcontent-ui: Load restricted apps and OARS when loading app filter
While the label for the OARS pseudo-combobox was updated when loading a user’s app filter, the internal state (`self->selected_age`) was not. Similarly, the set of restricted apps wasn’t loaded until the restricted apps dialog was opened. This caused problems when loading a user’s parental controls and then editing a control which *wasn’t* restricted apps or the OARS level. The resulting app filter would be built using default values for those two controls, overwriting and losing their previous values when it was saved. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
This commit is contained in:
parent
e7588a2333
commit
ecfb3035d5
|
@ -313,6 +313,12 @@ update_app_filter_from_user (MctUserControls *self)
|
||||||
g_debug ("Retrieved new app filter for user '%s'", act_user_get_user_name (self->user));
|
g_debug ("Retrieved new app filter for user '%s'", act_user_get_user_name (self->user));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
update_restricted_apps (MctUserControls *self)
|
||||||
|
{
|
||||||
|
mct_restrict_applications_dialog_set_app_filter (self->restrict_applications_dialog, self->filter);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
update_categories_from_language (MctUserControls *self)
|
update_categories_from_language (MctUserControls *self)
|
||||||
{
|
{
|
||||||
|
@ -385,7 +391,7 @@ update_oars_level (MctUserControls *self)
|
||||||
{
|
{
|
||||||
GsContentRatingSystem rating_system;
|
GsContentRatingSystem rating_system;
|
||||||
g_autofree gchar *rating_age_category = NULL;
|
g_autofree gchar *rating_age_category = NULL;
|
||||||
guint maximum_age;
|
guint maximum_age, selected_age;
|
||||||
gsize i;
|
gsize i;
|
||||||
gboolean all_categories_unset;
|
gboolean all_categories_unset;
|
||||||
#if AS_CHECK_VERSION(0, 7, 15)
|
#if AS_CHECK_VERSION(0, 7, 15)
|
||||||
|
@ -423,9 +429,15 @@ update_oars_level (MctUserControls *self)
|
||||||
{
|
{
|
||||||
g_clear_pointer (&rating_age_category, g_free);
|
g_clear_pointer (&rating_age_category, g_free);
|
||||||
rating_age_category = g_strdup (_("All Ages"));
|
rating_age_category = g_strdup (_("All Ages"));
|
||||||
|
selected_age = oars_disabled_age;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
selected_age = maximum_age;
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_label_set_label (self->oars_button_label, rating_age_category);
|
gtk_label_set_label (self->oars_button_label, rating_age_category);
|
||||||
|
self->selected_age = selected_age;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -550,6 +562,7 @@ setup_parental_control_settings (MctUserControls *self)
|
||||||
|
|
||||||
gtk_widget_set_sensitive (GTK_WIDGET (self), is_authorized);
|
gtk_widget_set_sensitive (GTK_WIDGET (self), is_authorized);
|
||||||
|
|
||||||
|
update_restricted_apps (self);
|
||||||
update_categories_from_language (self);
|
update_categories_from_language (self);
|
||||||
update_oars_level (self);
|
update_oars_level (self);
|
||||||
update_allow_app_installation (self);
|
update_allow_app_installation (self);
|
||||||
|
|
Loading…
Reference in New Issue