diff options
author | William Jon McCann <mccann@jhu.edu> | 2005-07-20 19:09:36 +0000 |
---|---|---|
committer | William Jon McCann <mccann@src.gnome.org> | 2005-07-20 19:09:36 +0000 |
commit | 2adc12742b7e7198c1d097697d3f61f1be8960f2 (patch) | |
tree | 4c71d4e61019c134be401c639b744f36e5081105 /gui | |
parent | 31b742a8cd0a766daa01bfc71db9df84c377f890 (diff) | |
download | gdm-2adc12742b7e7198c1d097697d3f61f1be8960f2.tar.gz |
Tweak the colors in the user list. Make the background translucent behind
2005-07-20 William Jon McCann <mccann@jhu.edu>
* gui/greeter/themes/happygnome-list/happygnome.xml:
Tweak the colors in the user list. Make the background
translucent behind the user list.
* gui/greeter/greeter_item_ulist.c (greeter_populate_user_list):
Make real name bold if it is available. Design for humans.
(force_no_tree_separators): Set treeview style so that we don't
get strange lines between tree rows when we set a userlist
color in the theme.
(greeter_item_ulist_setup): Only shrink the size of the user
list. Set the default widget style.
* gui/greeter/greeter_canvas_item.c (greeter_item_create_canvas_item):
Don't set rules hint for userlist treeview.
Diffstat (limited to 'gui')
-rw-r--r-- | gui/greeter/greeter_canvas_item.c | 2 | ||||
-rw-r--r-- | gui/greeter/greeter_item_ulist.c | 46 | ||||
-rw-r--r-- | gui/greeter/themes/happygnome-list/happygnome.xml | 20 |
3 files changed, 48 insertions, 20 deletions
diff --git a/gui/greeter/greeter_canvas_item.c b/gui/greeter/greeter_canvas_item.c index 6226f345..012a5270 100644 --- a/gui/greeter/greeter_canvas_item.c +++ b/gui/greeter/greeter_canvas_item.c @@ -417,7 +417,7 @@ greeter_item_create_canvas_item (GreeterItemInfo *item) * to it then, depending on the type. Likely userlist is the * only type we support */ list = gtk_tree_view_new (); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (list), TRUE); + swin = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (swin), GTK_SHADOW_NONE); diff --git a/gui/greeter/greeter_item_ulist.c b/gui/greeter/greeter_item_ulist.c index 11880889..1cfc3b36 100644 --- a/gui/greeter/greeter_item_ulist.c +++ b/gui/greeter/greeter_item_ulist.c @@ -94,9 +94,15 @@ greeter_populate_user_list (GtkTreeModel *tm) login = g_markup_escape_text (usr->login, -1); gecos = g_markup_escape_text (usr->gecos, -1); - label = g_strdup_printf ("<b>%s</b>\n%s", - login, - gecos); + if (usr->gecos && strcmp (usr->gecos, "") != 0) { + label = g_strdup_printf ("<b>%s</b>\n %s", + gecos, + login); + } else { + label = g_strdup_printf ("<b>%s</b>\n%s", + login, + gecos); + } g_free (login); g_free (gecos); @@ -182,14 +188,14 @@ greeter_generate_userlist (GtkWidget *tv) "pixbuf", GREETER_ULIST_ICON_COLUMN, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (tv), column_one); - + column_two = gtk_tree_view_column_new_with_attributes (_("Username"), gtk_cell_renderer_text_new (), "markup", GREETER_ULIST_LABEL_COLUMN, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (tv), column_two); - + greeter_populate_user_list (tm); info = greeter_lookup_id ("userlist"); @@ -214,6 +220,27 @@ greeter_generate_userlist (GtkWidget *tv) } } +static inline void +force_no_tree_separators (GtkWidget *widget) +{ + gboolean first_time = TRUE; + + if (first_time) { + gtk_rc_parse_string ("\n" + " style \"gdm-userlist-treeview-style\"\n" + " {\n" + " GtkTreeView::horizontal-separator=0\n" + " GtkTreeView::vertical-separator=0\n" + " }\n" + "\n" + " widget \"*.gdm-userlist-treeview\" style \"gdm-userlist-treeview-style\"\n" + "\n"); + first_time = FALSE; + } + + gtk_widget_set_name (widget, "gdm-userlist-treeview"); +} + gboolean greeter_item_ulist_setup (void) { @@ -235,8 +262,12 @@ greeter_item_ulist_setup (void) GTK_IS_TREE_VIEW (GTK_BIN (sw)->child)) { GtkRequisition req; + gdouble height; user_list = GTK_BIN (sw)->child; + + force_no_tree_separators (user_list); + greeter_generate_userlist (user_list); if ( ! DOING_GDM_DEVELOPMENT) greeter_item_ulist_disable (); @@ -247,7 +278,10 @@ greeter_item_ulist_setup (void) * as the rectangle defined in the GDM theme file. */ gtk_widget_size_request (user_list, &req); - g_object_set (info->item, "height", (double)req.height, NULL); + g_object_get (info->item, "height", &height, NULL); + + if (req.height < height) + g_object_set (info->item, "height", (double)req.height, NULL); } } return TRUE; diff --git a/gui/greeter/themes/happygnome-list/happygnome.xml b/gui/greeter/themes/happygnome-list/happygnome.xml index 40d8967e..6ad80cc0 100644 --- a/gui/greeter/themes/happygnome-list/happygnome.xml +++ b/gui/greeter/themes/happygnome-list/happygnome.xml @@ -147,18 +147,12 @@ </item> <item type="rect"> - <normal color="#FFFFFF" alpha="0.5"/> - <pos anchor="c" x="25%" y="50%" height="box" width="box"/> - <box orientation="vertical" min-width="440" max-width="440" xpadding="4" ypadding="4" height="550" spacing="0"> - <item type="rect"> - <normal color="#000000" alpha="0.0"/> - <pos anchor="n" x="50%" height="548" width="438"/> - <fixed> - <item type="list" id="userlist"> - <pos anchor="nw" x="1" y="1" height="-2" width="-2"/> - <color iconcolor="#2222EE" labelcolor="#2222CC"/> - </item> - </fixed> + <normal color="#FFFFFF" alpha="0.5" font="Sans 14"/> + <pos anchor="c" x="25%" y="50%" width="box" height="box"/> + <box orientation="vertical" min-width="440" max-width="440" min-height="100" xpadding="4" ypadding="4" spacing="0"> + <item type="list" id="userlist"> + <pos anchor="nw" x="1" y="1" height="550" width="440"/> + <color iconcolor="#ACBFDD" labelcolor="#ACBFDD"/> </item> </box> </item> @@ -169,7 +163,7 @@ <box orientation="vertical" min-width="340" xpadding="30" ypadding="30" spacing="10"> <item type="label"> <pos anchor="n" x="50%"/> - <normal color="#000000" font="Sans 14"/> + <normal color="#000000" font="Sans 18"/> <!-- Stock label for: Welcome to %h --> <stock type="welcome-label"/> </item> |