~ubuntu-branches/ubuntu/raring/gnome-screensaver/raring-proposed

« back to all changes in this revision

Viewing changes to debian/patches/18_unity_dialog_layout.patch

  • Committer: Package Import Robot
  • Author(s): Marc Deslauriers
  • Date: 2012-02-04 01:49:52 UTC
  • Revision ID: package-import@ubuntu.com-20120204014952-yyds0362tje6tkxo
Tags: 3.2.0-1ubuntu7
* Slightly improve appearance of lock screen until it goes away or gets
  a proper makeover:
  - debian/patches/18_revert_dialog_layout.patch: removed.
  - debian/patches/18_unity_dialog_layout.patch: add username to lock
    dialog and adjust fonts and spacing when used with Unity.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Description: add username to lock dialog and adjust fonts and spacing
 
2
 when used with Unity
 
3
Author: Marc Deslauriers <marc.deslauriers@canonical.com>
 
4
Forwarded: no, Ubuntu-specific
 
5
 
 
6
Index: gnome-screensaver-3.2.0/src/gs-lock-plug.c
 
7
===================================================================
 
8
--- gnome-screensaver-3.2.0.orig/src/gs-lock-plug.c     2012-02-04 01:31:52.158692510 -0500
 
9
+++ gnome-screensaver-3.2.0/src/gs-lock-plug.c  2012-02-04 01:32:46.206693893 -0500
 
10
@@ -72,6 +72,7 @@
 
11
 
 
12
         GtkWidget   *notebook;
 
13
         GtkWidget   *auth_face_image;
 
14
+        GtkWidget   *auth_realname_label;
 
15
         GtkWidget   *auth_prompt_label;
 
16
         GtkWidget   *auth_prompt_entry;
 
17
         GtkWidget   *auth_prompt_box;
 
18
@@ -1236,9 +1237,18 @@
 
19
         gtk_widget_set_sensitive (plug->priv->auth_unlock_button, TRUE);
 
20
         gtk_widget_show (plug->priv->auth_unlock_button);
 
21
         gtk_widget_grab_default (plug->priv->auth_unlock_button);
 
22
-        markup = g_strdup_printf ("<b><big>%s</big></b>", message);
 
23
+
 
24
+        /* Change appearance if we're running under Unity */
 
25
+        if (g_getenv ("XDG_CURRENT_DESKTOP") &&
 
26
+            strcmp (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity") == 0) {
 
27
+                markup = g_strdup_printf ("<span font_desc=\"Ubuntu 10\">%s</span>", message);
 
28
+        } else {
 
29
+                markup = g_strdup_printf ("<b><big>%s</big></b>", message);
 
30
+        }
 
31
+
 
32
         gtk_label_set_markup (GTK_LABEL (plug->priv->auth_prompt_label), markup);
 
33
         g_free (markup);
 
34
+
 
35
         gtk_widget_show (plug->priv->auth_prompt_label);
 
36
         gtk_entry_set_visibility (GTK_ENTRY (plug->priv->auth_prompt_entry), visible);
 
37
         gtk_widget_set_sensitive (plug->priv->auth_prompt_entry, TRUE);
 
38
@@ -1371,6 +1381,39 @@
 
39
         gs_profile_end ("page one buttons");
 
40
 }
 
41
 
 
42
+static char *
 
43
+get_user_display_name (void)
 
44
+{
 
45
+        const char *name;
 
46
+        char       *utf8_name;
 
47
+
 
48
+        name = g_get_real_name ();
 
49
+
 
50
+        if (name == NULL || strcmp (name, "Unknown") == 0) {
 
51
+                name = g_get_user_name ();
 
52
+        }
 
53
+
 
54
+        utf8_name = NULL;
 
55
+
 
56
+        if (name != NULL) {
 
57
+                utf8_name = g_locale_to_utf8 (name, -1, NULL, NULL, NULL);
 
58
+        }
 
59
+
 
60
+        return utf8_name;
 
61
+}
 
62
+
 
63
+static void
 
64
+update_realname_label (GSLockPlug *plug)
 
65
+{
 
66
+        char *name;
 
67
+        char *markup;
 
68
+        name = get_user_display_name ();
 
69
+        markup = g_strdup_printf ("<span font_desc=\"Ubuntu 16\">%s</span>", name);
 
70
+        gtk_label_set_markup (GTK_LABEL (plug->priv->auth_realname_label), markup);
 
71
+        g_free (markup);
 
72
+        g_free (name);
 
73
+}
 
74
+
 
75
 static void
 
76
 create_page_one (GSLockPlug *plug)
 
77
 {
 
78
@@ -1402,25 +1445,59 @@
 
79
         gtk_box_pack_start (GTK_BOX (hbox), plug->priv->auth_prompt_kbd_layout_indicator, FALSE, FALSE, 0);
 
80
 #endif
 
81
 
 
82
-        plug->priv->auth_prompt_label = gtk_label_new_with_mnemonic (_("_Password:"));
 
83
-        gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_prompt_label), 0, 0.5);
 
84
-        gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_prompt_label, FALSE, FALSE, 0);
 
85
+        /* Change appearance if we're running under Unity */
 
86
+        if (g_getenv ("XDG_CURRENT_DESKTOP") &&
 
87
+            strcmp (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity") == 0) {
 
88
+                gtk_box_set_spacing (vbox2, 0);
 
89
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_face_image), 0, 0.5);
 
90
+                plug->priv->auth_realname_label = gtk_label_new (NULL);
 
91
+                update_realname_label (plug);
 
92
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_realname_label), 0, 1);
 
93
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_realname_label, FALSE, FALSE, 0);
 
94
+
 
95
+                plug->priv->auth_prompt_label = gtk_label_new_with_mnemonic (_("_Password:"));
 
96
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_prompt_label), 0, 0);
 
97
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_prompt_label, FALSE, FALSE, 0);
 
98
+
 
99
+                plug->priv->auth_prompt_entry = gtk_entry_new ();
 
100
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_prompt_entry, TRUE, TRUE, 6);
 
101
+
 
102
+                gtk_label_set_mnemonic_widget (GTK_LABEL (plug->priv->auth_prompt_label),
 
103
+                                               plug->priv->auth_prompt_entry);
 
104
+
 
105
+                plug->priv->auth_capslock_label = gtk_label_new ("");
 
106
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_capslock_label), 0, 0.5);
 
107
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_capslock_label, FALSE, FALSE, 0);
 
108
+
 
109
+                /* Status text */
 
110
+
 
111
+                plug->priv->auth_message_label = gtk_label_new (NULL);
 
112
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_message_label), 0, 0.5);
 
113
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_message_label,
 
114
+                                    FALSE, FALSE, 0);
 
115
+
 
116
+        } else {
 
117
+
 
118
+                plug->priv->auth_prompt_label = gtk_label_new_with_mnemonic (_("_Password:"));
 
119
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_prompt_label), 0, 0.5);
 
120
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_prompt_label, FALSE, FALSE, 0);
 
121
 
 
122
-        plug->priv->auth_prompt_entry = gtk_entry_new ();
 
123
-        gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_prompt_entry, TRUE, TRUE, 0);
 
124
+                plug->priv->auth_prompt_entry = gtk_entry_new ();
 
125
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_prompt_entry, TRUE, TRUE, 0);
 
126
 
 
127
-        gtk_label_set_mnemonic_widget (GTK_LABEL (plug->priv->auth_prompt_label),
 
128
-                                       plug->priv->auth_prompt_entry);
 
129
+                gtk_label_set_mnemonic_widget (GTK_LABEL (plug->priv->auth_prompt_label),
 
130
+                                           plug->priv->auth_prompt_entry);
 
131
 
 
132
-        plug->priv->auth_capslock_label = gtk_label_new ("");
 
133
-        gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_capslock_label), 0.5, 0.5);
 
134
-        gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_capslock_label, FALSE, FALSE, 0);
 
135
+                plug->priv->auth_capslock_label = gtk_label_new ("");
 
136
+                gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_capslock_label), 0.5, 0.5);
 
137
+                gtk_box_pack_start (GTK_BOX (vbox2), plug->priv->auth_capslock_label, FALSE, FALSE, 0);
 
138
 
 
139
-        /* Status text */
 
140
+                /* Status text */
 
141
 
 
142
-        plug->priv->auth_message_label = gtk_label_new (NULL);
 
143
-        gtk_box_pack_start (GTK_BOX (vbox), plug->priv->auth_message_label,
 
144
-                            FALSE, FALSE, 0);
 
145
+                plug->priv->auth_message_label = gtk_label_new (NULL);
 
146
+                gtk_box_pack_start (GTK_BOX (vbox), plug->priv->auth_message_label,
 
147
+                                    FALSE, FALSE, 0);
 
148
+        }
 
149
         /* Buttons */
 
150
         plug->priv->auth_action_area = gtk_hbutton_box_new ();
 
151