[gnome-control-center/Kate/WIP/event-description: 1/3] panel: firmware-security: Show description for each event
- From: Kate Hsuan <khsuan src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center/Kate/WIP/event-description: 1/3] panel: firmware-security: Show description for each event
- Date: Tue, 26 Jul 2022 11:08:09 +0000 (UTC)
commit 9c0ab0c3d6742ba2e699a2016aaa14848b55e67a
Author: Kate Hsuan <hpa redhat com>
Date: Mon Jul 11 15:52:18 2022 +0800
panel: firmware-security: Show description for each event
Showing the event description to improve the user friendly.
Link: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1938
Signed-off-by: Kate Hsuan <hpa redhat com>
.../firmware-security/cc-firmware-security-panel.c | 24 ++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
---
diff --git a/panels/firmware-security/cc-firmware-security-panel.c
b/panels/firmware-security/cc-firmware-security-panel.c
index ebd152834..e2bdb5c7b 100644
--- a/panels/firmware-security/cc-firmware-security-panel.c
+++ b/panels/firmware-security/cc-firmware-security-panel.c
@@ -131,9 +131,11 @@ parse_event_variant_iter (CcfirmwareSecurityPanel *self,
const gchar *appstream_id = NULL;
const gchar *key;
const gchar *event_msg;
+ const gchar *description = NULL;
guint64 timestamp = 0;
GVariant *value;
GtkWidget *row;
+ GtkWidget *subrow;
while (g_variant_iter_next (iter, "{&sv}", &key, &value))
{
@@ -145,6 +147,8 @@ parse_event_variant_iter (CcfirmwareSecurityPanel *self,
result = g_variant_get_uint32 (value);
else if (g_strcmp0 (key, "Created") == 0)
timestamp = g_variant_get_uint64 (value);
+ else if (g_strcmp0 (key, "Description") == 0)
+ description = g_variant_get_string (value, NULL);
g_variant_unref (value);
}
@@ -159,20 +163,32 @@ parse_event_variant_iter (CcfirmwareSecurityPanel *self,
/* build new row */
date = g_date_time_new_from_unix_local (timestamp);
date_string = g_date_time_format (date, "\%F \%H:\%m:\%S");
- row = adw_action_row_new ();
+
+ row = adw_expander_row_new ();
if (flags & FWUPD_SECURITY_ATTR_FLAG_SUCCESS)
{
- adw_action_row_set_icon_name (ADW_ACTION_ROW (row), "emblem-default-symbolic");
+ adw_expander_row_set_icon_name (ADW_EXPANDER_ROW (row), "emblem-default-symbolic");
gtk_widget_add_css_class (row, "success-icon");
}
else
{
- adw_action_row_set_icon_name (ADW_ACTION_ROW (row), "dialog-warning-symbolic");
+ adw_expander_row_set_icon_name (ADW_EXPANDER_ROW (row), "dialog-warning-symbolic");
gtk_widget_add_css_class (row, "warning-icon");
}
+ if (description)
+ {
+ subrow = adw_action_row_new ();
+ adw_preferences_row_set_title (ADW_PREFERENCES_ROW (subrow), dgettext ("fwupd", description));
+ adw_expander_row_add_row (ADW_EXPANDER_ROW (row), subrow);
+ }
+ else
+ {
+ adw_expander_row_set_enable_expansion (ADW_EXPANDER_ROW (row), false);
+ }
+
adw_preferences_row_set_title (ADW_PREFERENCES_ROW (row), event_msg);
- adw_action_row_set_subtitle (ADW_ACTION_ROW (row), date_string);
+ adw_expander_row_set_subtitle (ADW_EXPANDER_ROW (row), date_string);
adw_preferences_group_add (ADW_PREFERENCES_GROUP (self->firmware_security_log_pgroup), GTK_WIDGET (row));
adw_view_stack_set_visible_child_name (ADW_VIEW_STACK (self->firmware_security_log_stack), "page2");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]