summaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorWilliam Jon McCann <mccann@jhu.edu>2005-07-20 19:09:36 +0000
committerWilliam Jon McCann <mccann@src.gnome.org>2005-07-20 19:09:36 +0000
commit2adc12742b7e7198c1d097697d3f61f1be8960f2 (patch)
tree4c71d4e61019c134be401c639b744f36e5081105 /gui
parent31b742a8cd0a766daa01bfc71db9df84c377f890 (diff)
downloadgdm-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.c2
-rw-r--r--gui/greeter/greeter_item_ulist.c46
-rw-r--r--gui/greeter/themes/happygnome-list/happygnome.xml20
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>