user-accounts: Fix bug when name is changed to contain markup
When changing to a "display name" that contains markup, such as "Foo & Bar", the code to update the user list on the left wasn't escaping the text correctly.
This commit is contained in:
parent
b8c2826e3d
commit
f66e7bb4dd
1 changed files with 10 additions and 9 deletions
|
@ -116,6 +116,14 @@ get_selected_user (UmUserPanelPrivate *d)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static char *
|
||||||
|
get_name_col_str (UmUser *user)
|
||||||
|
{
|
||||||
|
return g_markup_printf_escaped ("<b>%s</b>\n<i>%s</i>",
|
||||||
|
um_user_get_display_name (user),
|
||||||
|
um_account_type_get_name (um_user_get_account_type (user)));
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
user_added (UmUserManager *um, UmUser *user, UmUserPanelPrivate *d)
|
user_added (UmUserManager *um, UmUser *user, UmUserPanelPrivate *d)
|
||||||
{
|
{
|
||||||
|
@ -128,7 +136,6 @@ user_added (UmUserManager *um, UmUser *user, UmUserPanelPrivate *d)
|
||||||
gchar *text;
|
gchar *text;
|
||||||
GtkTreeSelection *selection;
|
GtkTreeSelection *selection;
|
||||||
gint sort_key;
|
gint sort_key;
|
||||||
gchar *escaped_name;
|
|
||||||
gboolean is_autologin;
|
gboolean is_autologin;
|
||||||
|
|
||||||
g_debug ("user added: %d %s\n", um_user_get_uid (user), um_user_get_real_name (user));
|
g_debug ("user added: %d %s\n", um_user_get_uid (user), um_user_get_real_name (user));
|
||||||
|
@ -138,11 +145,7 @@ user_added (UmUserManager *um, UmUser *user, UmUserPanelPrivate *d)
|
||||||
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (widget));
|
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (widget));
|
||||||
|
|
||||||
pixbuf = um_user_render_icon (user, TRUE, 48);
|
pixbuf = um_user_render_icon (user, TRUE, 48);
|
||||||
escaped_name = g_markup_escape_text (um_user_get_display_name (user), -1);
|
text = get_name_col_str (user);
|
||||||
text = g_strdup_printf ("<b>%s</b>\n<i>%s</i>",
|
|
||||||
escaped_name,
|
|
||||||
um_account_type_get_name (um_user_get_account_type (user)));
|
|
||||||
g_free (escaped_name);
|
|
||||||
|
|
||||||
is_autologin = um_user_get_automatic_login (user);
|
is_autologin = um_user_get_automatic_login (user);
|
||||||
|
|
||||||
|
@ -269,9 +272,7 @@ user_changed (UmUserManager *um, UmUser *user, UmUserPanelPrivate *d)
|
||||||
gtk_tree_model_get (model, &iter, USER_COL, ¤t, -1);
|
gtk_tree_model_get (model, &iter, USER_COL, ¤t, -1);
|
||||||
if (current == user) {
|
if (current == user) {
|
||||||
pixbuf = um_user_render_icon (user, TRUE, 48);
|
pixbuf = um_user_render_icon (user, TRUE, 48);
|
||||||
text = g_strdup_printf ("<b>%s</b>\n<i>%s</i>",
|
text = get_name_col_str (user);
|
||||||
um_user_get_display_name (user),
|
|
||||||
um_account_type_get_name (um_user_get_account_type (user)));
|
|
||||||
is_autologin = um_user_get_automatic_login (user);
|
is_autologin = um_user_get_automatic_login (user);
|
||||||
|
|
||||||
gtk_list_store_set (GTK_LIST_STORE (model), &iter,
|
gtk_list_store_set (GTK_LIST_STORE (model), &iter,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue