rpms/control-center/devel control-center-2.19.90-gecos.patch, NONE, 1.1 control-center-2.19.91-passwd.patch, NONE, 1.1 control-center.spec, 1.293, 1.294

Matthias Clasen (mclasen) fedora-extras-commits at redhat.com
Tue Aug 14 04:53:47 UTC 2007


Author: mclasen

Update of /cvs/extras/rpms/control-center/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv4483

Modified Files:
	control-center.spec 
Added Files:
	control-center-2.19.90-gecos.patch 
	control-center-2.19.91-passwd.patch 
Log Message:
2.19.90


control-center-2.19.90-gecos.patch:

--- NEW FILE control-center-2.19.90-gecos.patch ---
diff -up gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.glade.gecos gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.glade
--- gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.glade.gecos	2007-08-14 00:17:52.000000000 -0400
+++ gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.glade	2007-08-14 00:17:52.000000000 -0400
@@ -101,23 +101,30 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkLabel" id="fullname">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Full Name</property>
-		      <property name="use_underline">False</property>
-		      <property name="use_markup">False</property>
-		      <property name="justify">GTK_JUSTIFY_LEFT</property>
-		      <property name="wrap">False</property>
-		      <property name="selectable">False</property>
-		      <property name="xalign">0</property>
-		      <property name="yalign">0.5</property>
-		      <property name="xpad">0</property>
-		      <property name="ypad">0</property>
-		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-		      <property name="width_chars">-1</property>
-		      <property name="single_line_mode">False</property>
-		      <property name="angle">0</property>
-		    </widget>
+                    <widget class="GtkButton" id="fullnamebox">
+                      <property name="relief">GTK_RELIEF_NONE</property>
+                      <property name="focus_on_click">True</property>
+ 
+                      <child>
+                        <widget class="GtkLabel" id="fullname">
+                          <property name="visible">True</property>
+                          <property name="label" translatable="yes">Full Name</property>
+                          <property name="use_underline">False</property>
+                          <property name="use_markup">False</property>
+                          <property name="justify">GTK_JUSTIFY_LEFT</property>
+                          <property name="wrap">False</property>
+                          <property name="selectable">False</property>
+                          <property name="xalign">0</property>
+                          <property name="yalign">0.5</property>
+                          <property name="xpad">0</property>
+                          <property name="ypad">0</property>
+                          <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                          <property name="width_chars">-1</property>
+                          <property name="single_line_mode">False</property>
+                          <property name="angle">0</property>
+                        </widget>
+                      </child>
+                    </widget>
 		    <packing>
 		      <property name="padding">0</property>
 		      <property name="expand">False</property>
diff -up gnome-control-center-2.19.90/capplets/about-me/Makefile.am.gecos gnome-control-center-2.19.90/capplets/about-me/Makefile.am
--- gnome-control-center-2.19.90/capplets/about-me/Makefile.am.gecos	2007-04-26 05:31:03.000000000 -0400
+++ gnome-control-center-2.19.90/capplets/about-me/Makefile.am	2007-08-14 00:17:52.000000000 -0400
@@ -9,9 +9,6 @@ pixmap_files = 				\
 	gnome-about-me-lock-open.png
 
 gnome_about_me_SOURCES =	 	\
-	eel-alert-dialog.c		\
-	eel-alert-dialog.h		\
-	eel-gtk-macros.h		\
 	gnome-about-me-password.c	\
 	gnome-about-me-password.h	\
 	e-image-chooser.c		\
@@ -24,7 +21,7 @@ bin_PROGRAMS = gnome-about-me
 pixmapdir = $(pkgdatadir)/pixmaps
 pixmap_DATA = $(pixmap_files)
 
-gnome_about_me_LDADD = $(GNOMECC_CAPPLETS_LIBS) $(LIBEBOOK_LIBS)
+gnome_about_me_LDADD = $(GNOMECC_CAPPLETS_LIBS) $(LIBEBOOK_LIBS) $(EEL_LIBS)
 gnome_about_me_LDFLAGS = -export-dynamic
 
 @INTLTOOL_DESKTOP_RULE@
@@ -38,6 +35,7 @@ glade_DATA = $(glade_files)
 INCLUDES = \
 	$(GNOMECC_CAPPLETS_CFLAGS) \
 	$(LIBEBOOK_CFLAGS) \
+	$(EEL_CFLAGS) \
 	-DDATADIR="\"$(datadir)\"" \
 	-DGNOMECC_DATA_DIR="\"$(pkgdatadir)\"" \
 	-DGNOMECC_GLADE_DIR="\"$(gladedir)\"" \
diff -up gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c.gecos gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c
--- gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c.gecos	2007-08-14 00:17:52.000000000 -0400
+++ gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c	2007-08-14 00:29:26.000000000 -0400
@@ -37,6 +37,7 @@
 #include <libebook/e-book.h>
 
 #include "e-image-chooser.h"
+#include <eel/eel-editable-label.h>
 
 #include "capplet-util.h"
 
@@ -59,6 +60,7 @@ typedef struct {
 	gboolean      	 have_image;
 	gboolean      	 image_changed;
 	gboolean      	 create_self;
+        gboolean         editing_username;
 
 	gchar        	*person;
 	gchar 		*login;
@@ -133,7 +135,7 @@ struct WidToCid ids[] = {
 
 
 static void about_me_set_address_field (EContactAddress *, guint, gchar *);
-
+static gchar *about_me_get_address_field (EContactAddress *, guint);
 
 /*** Utility functions ***/
 static void
@@ -216,6 +218,50 @@ about_me_commit (GnomeAboutMe *me)
 	me->create_self = FALSE;
 }
 
+static void
+update_gecos (GnomeAboutMe *me)
+{
+	const gchar *argv[12];
+	gint i = 0;
+	const gchar *fullname;
+	const gchar *office;
+	const gchar *office_phone;
+	const gchar *home_phone;
+
+	argv[i++] = "/usr/bin/userinfo";
+
+	fullname = e_contact_get_const (me->contact, E_CONTACT_FULL_NAME);
+	office = about_me_get_address_field (me->addr2, ADDRESS_LOCALITY);
+	office_phone = e_contact_get_const (me->contact, E_CONTACT_PHONE_BUSINESS);
+	home_phone = e_contact_get_const (me->contact, E_CONTACT_PHONE_HOME);
+
+	if (fullname) {
+		argv[i++] = "-f";
+		argv[i++] = fullname;
+	}
+ 
+	if (office) {
+		argv[i++] = "-o";
+		argv[i++] = office;
+	}
+ 
+	if (office_phone) {
+		argv[i++] = "-p";
+		argv[i++] = office_phone;
+	}
+
+	if (home_phone) {
+		argv[i++] = "-h";
+		argv[i++] = home_phone;
+	}
+
+	argv[i++] = "-x";
+	argv[i++] = NULL;
+
+	g_spawn_sync (NULL, (gchar **)argv, NULL, 0,
+		      NULL, NULL, NULL, NULL, NULL, NULL);
+}
+
 static gboolean
 about_me_commit_from_timeout (GnomeAboutMe *me)
 {
@@ -282,22 +328,6 @@ about_me_focus_out (GtkWidget *widget, G
 	return FALSE;
 }
 
-static char *
-get_user_login (void)
-{
-	char buf[LINE_MAX * 4];
-	struct passwd pwd, *err;
-
-	int i;
-#if __sun
-	i = getpwuid_r (getuid (), &pwd, buf, sizeof (buf));
-	return (i != 0) ? g_strdup (pwd.pw_name) : NULL;
-#else
-	i = getpwuid_r (getuid (), &pwd, buf, sizeof (buf), &err);
-	return ((i == 0) && (err == &pwd)) ? g_strdup (pwd.pw_name) : NULL;
-#endif
-}
-
 /*
  * Helpers
  */
@@ -736,6 +766,8 @@ about_me_button_clicked_cb (GtkDialog *d
 			g_source_remove (me->commit_timeout_id);
 			about_me_commit (me);
 		}
+                 
+                update_gecos (me);
 
 		about_me_destroy (me);
 		gtk_main_quit ();
@@ -752,6 +784,144 @@ about_me_passwd_clicked_cb (GtkWidget *b
 	g_spawn_async (NULL, argv, NULL, 0, NULL, NULL, NULL, NULL);
 }
 
+static GtkWidget *
+find_fullname_editable_label (GnomeAboutMe *me)
+{
+	GtkWidget    *widget;
+	GList        *list;
+	GtkWidget    *c;
+	GladeXML     *dialog;
+
+	dialog = me->dialog;
+
+	widget = WID ("fullnamebox");
+
+	list = gtk_container_get_children (GTK_CONTAINER (widget->parent));
+
+	while (list) {
+		c = list->data;
+
+		if (EEL_IS_EDITABLE_LABEL (c))
+			break;
+
+		c = NULL;
+
+		list = list->next;
+	}
+
+	g_list_free (list);
+
+	return c;
+}
+
+static void
+about_me_button_clicked (GtkWidget      *button,
+			 GnomeAboutMe   *me)
+{
+	GtkWidget    *label;
+	GtkWidget    *entry;
+	PangoFontDescription *font;
+	gint size;
+	const gchar *text;
+
+	label = gtk_bin_get_child (GTK_BIN (button));
+	entry = find_fullname_editable_label (me);
+
+	font = pango_font_description_copy (label->style->font_desc);
+	size = pango_font_description_get_size (font);
+	if (size == 0)
+		size = 10;
+	pango_font_description_set_size (font, size * PANGO_SCALE_XX_LARGE);
+	pango_font_description_set_weight (font, PANGO_WEIGHT_BOLD);
+
+	eel_editable_label_set_font_description (EEL_EDITABLE_LABEL (entry), font);
+	pango_font_description_free (font);
+
+	gtk_misc_set_alignment (GTK_MISC (entry), 0.0, 0.5);
+
+	me->editing_username = TRUE;
+
+	text = gtk_label_get_text (GTK_LABEL (label));
+	eel_editable_label_set_text (EEL_EDITABLE_LABEL (entry), text);
+
+	gtk_widget_hide (button);
+	gtk_widget_show (entry);
+	gtk_widget_grab_focus (entry);
+}
+
+static void 
+stop_editing (GnomeAboutMe *me, gboolean commit)
+{
+	GtkWidget   *button;
+	GtkWidget   *label;
+	GtkWidget   *entry;
+	GtkWidget   *main_dialog;
+	const gchar *text;
+	gchar *str;
+	GladeXML     *dialog;
+
+	if (!me->editing_username)
+		return;
+
+	me->editing_username = FALSE;
+
+	dialog = me->dialog;
+
+	button = WID ("fullnamebox");
+	label = gtk_bin_get_child (GTK_BIN (button));
+	entry = find_fullname_editable_label (me);
+
+	if (commit) {
+		text = eel_editable_label_get_text (EEL_EDITABLE_LABEL (entry));
+		str = g_strdup_printf ("<b><span size=\"xx-large\">%s</span></b>", text);
+		gtk_label_set_markup (GTK_LABEL (label), str);
+		g_free (str);
+
+		g_free (me->username);
+		me->username = g_strdup (text);
+		e_contact_set (me->contact, E_CONTACT_FULL_NAME, me->username);
+
+		main_dialog = WID ("about-me-dialog");
+		str = g_strdup_printf (_("About %s"), me->username);
+		gtk_window_set_title (GTK_WINDOW (main_dialog), str);
+		g_free (str);
+	}
+
+	gtk_widget_hide (entry);
+	gtk_widget_show (button);
+}
+
+static gboolean
+about_me_entry_focus_out (GtkWidget     *entry,
+			  GdkEventFocus *event,
+			  GnomeAboutMe  *me)
+{
+	stop_editing (me, TRUE);
+
+	return FALSE;
+}
+
+static gboolean
+about_me_entry_key_press (GtkWidget    *entry,
+			  GdkEventKey  *event,
+			  GnomeAboutMe *me)
+{
+	switch (event->keyval)
+	{
+	case GDK_Return:
+	case GDK_KP_Enter:
+		stop_editing (me, TRUE);
+		return TRUE;
+	case GDK_Escape:
+		stop_editing (me, FALSE);
+		return TRUE;
+	default:
+		break;
+	}
+
+	return FALSE;
+}
+
 static gint
 about_me_setup_dialog (void)
 {
@@ -761,6 +931,8 @@ about_me_setup_dialog (void)
 	GladeXML     *dialog;
 	GError 	     *error = NULL;
         gchar        *str;
+        GtkWidget    *entry;
+        GtkWidget    *button;
 
 	me = g_new0 (GnomeAboutMe, 1);
 
@@ -839,6 +1011,25 @@ about_me_setup_dialog (void)
 	gtk_label_set_markup (GTK_LABEL (widget), str);
 	g_free (str);
 
+       button = WID ("fullnamebox");
+       g_signal_connect (button, "clicked",
+                         G_CALLBACK (about_me_button_clicked), me);
+
+       entry = eel_editable_label_new (me->username);
+       eel_editable_label_set_line_wrap (EEL_EDITABLE_LABEL (entry), TRUE);
+        gtk_container_add (GTK_CONTAINER (button->parent), entry);
+       gtk_box_reorder_child (GTK_BOX (button->parent), entry, 3);
+       g_signal_connect (entry, "focus-out-event",
+                         G_CALLBACK (about_me_entry_focus_out), me);
+       g_signal_connect (entry, "key-press-event",
+                         G_CALLBACK (about_me_entry_key_press), me);
+
+       gtk_widget_set_no_show_all (button, TRUE);
+       gtk_widget_set_no_show_all (entry, TRUE);
+       gtk_widget_show (widget);
+       gtk_widget_show (button);
+       gtk_widget_hide (entry);
+
 	widget = WID ("login");
 	gtk_label_set_text (GTK_LABEL (widget), me->login);
 
diff -up gnome-control-center-2.19.90/configure.in.gecos gnome-control-center-2.19.90/configure.in
--- gnome-control-center-2.19.90/configure.in.gecos	2007-08-14 00:17:52.000000000 -0400
+++ gnome-control-center-2.19.90/configure.in	2007-08-14 00:17:52.000000000 -0400
@@ -252,6 +252,7 @@ if test x$enable_vfs_methods = xyes; the
     FONT_THUMBNAILER_LIBS=`echo $FONT_THUMBNAILER_LIBS | sed -e "s/$export_dynamic//"`
     FONT_METHOD_LIBS=`echo $FONT_METHOD_LIBS | sed -e "s/$export_dynamic//"`
   fi
+  PKG_CHECK_MODULES(EEL, eel-2.0)
 fi
 
 dnl ==============================================

control-center-2.19.91-passwd.patch:

--- NEW FILE control-center-2.19.91-passwd.patch ---
diff -up gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c.passwd gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c
--- gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c.passwd	2007-08-02 04:48:20.000000000 -0400
+++ gnome-control-center-2.19.90/capplets/about-me/gnome-about-me.c	2007-08-14 00:15:04.000000000 -0400
@@ -37,7 +37,6 @@
 #include <libebook/e-book.h>
 
 #include "e-image-chooser.h"
-#include "gnome-about-me-password.h"
 
 #include "capplet-util.h"
 
@@ -746,10 +745,11 @@ about_me_button_clicked_cb (GtkDialog *d
 static void
 about_me_passwd_clicked_cb (GtkWidget *button, GnomeAboutMe *me)
 {
-	GladeXML *dialog;
+	gchar *argv[2]; 
 
-	dialog = me->dialog;
-	gnome_about_me_password (GTK_WINDOW (WID ("about-me-dialog")));
+	argv[0] = "/usr/bin/userpasswd";
+	argv[1] = NULL;
+	g_spawn_async (NULL, argv, NULL, 0, NULL, NULL, NULL, NULL);
 }
 
 static gint
@@ -760,10 +760,7 @@ about_me_setup_dialog (void)
 	GtkIconInfo  *icon;
 	GladeXML     *dialog;
 	GError 	     *error = NULL;
-
-	struct passwd *pwent;
-	gchar *str;
-	gchar **tok;
+        gchar        *str;
 
 	me = g_new0 (GnomeAboutMe, 1);
 
@@ -830,34 +827,14 @@ about_me_setup_dialog (void)
 		}
 	}
 
-	/************************************************/
-	me->login = get_user_login ();
-	setpwent ();
-	pwent = getpwnam (me->login);
-	if (pwent == NULL) {
-		about_me_error (GTK_WINDOW (WID ("about-me-dialog")),
-				_("Unknown login ID, the user database might be corrupted"));
-		about_me_destroy (me);
-		return -1;
-	}
-	tok = g_strsplit (pwent->pw_gecos, ",", 0);
-
-	/************************************************/
-
-	if (tok[0] == NULL || strlen (tok[0]) == 0)
-		me->username = NULL;
-	else
-		me->username = g_strdup (tok[0]);
+	me->login = g_strdup (g_get_user_name ());
+	me->username = g_strdup (g_get_real_name ());
 
 	/* Contact Tab */
 	about_me_load_photo (me, me->contact);
 
 	widget = WID ("fullname");
-	if (tok[0] == NULL || strlen (tok[0]) == 0) {
-		str = g_strdup_printf ("<b><span size=\"xx-large\">%s</span></b>", me->login);
-	} else {
-		str = g_strdup_printf ("<b><span size=\"xx-large\">%s</span></b>", tok[0]);
-	}
+	str = g_strdup_printf ("<b><span size=\"xx-large\">%s</span></b>", me->username);
 
 	gtk_label_set_markup (GTK_LABEL (widget), str);
 	g_free (str);
@@ -865,14 +842,9 @@ about_me_setup_dialog (void)
 	widget = WID ("login");
 	gtk_label_set_text (GTK_LABEL (widget), me->login);
 
-	if (tok[0] == NULL || strlen (tok[0]) == 0) {
-		str = g_strdup_printf (_("About %s"), me->login);
-	} else {
-		str = g_strdup_printf (_("About %s"), tok[0]);
-	}
+        str = g_strdup_printf (_("About %s"), me->username);
 	gtk_window_set_title (GTK_WINDOW (main_dialog), str);
 	g_free (str);
-	g_strfreev (tok);
 
 	widget = WID ("password");
 	g_signal_connect (G_OBJECT (widget), "clicked",


Index: control-center.spec
===================================================================
RCS file: /cvs/extras/rpms/control-center/devel/control-center.spec,v
retrieving revision 1.293
retrieving revision 1.294
diff -u -r1.293 -r1.294
--- control-center.spec	13 Aug 2007 22:45:33 -0000	1.293
+++ control-center.spec	14 Aug 2007 04:53:10 -0000	1.294
@@ -58,8 +58,8 @@
 #Patch16: control-center-2.18.0-be-more-async.patch
 
 # call the Fedora/RHEL graphical passwd changing apps
-Patch95: control-center-2.17.91-passwd.patch
-Patch96: control-center-2.19.3-gecos.patch
+Patch95: control-center-2.19.91-passwd.patch
+Patch96: control-center-2.19.90-gecos.patch
 
 # change default wallpaper directory to where we ship our
 # backgrounds
@@ -204,7 +204,7 @@
 sed -i -e 's/@ENABLE_SK_TRUE at _s/_s/' help/Makefile.in
 
 # Add -Wno-error to silence gswitchit
-%configure --disable-static --disable-gstreamer --enable-alsa CFLAGS="$RPM_OPT_FLAGS -Wno-error" --enable-aboutme --disable-scrollkeeper
+%configure --disable-static --enable-gstreamer --enable-alsa CFLAGS="$RPM_OPT_FLAGS -Wno-error" --enable-aboutme --disable-scrollkeeper
 make
 
 %install
@@ -329,8 +329,28 @@
 %{_datadir}/mime/packages/gnome-theme-package.xml
 %{_datadir}/icons/hicolor/*/apps/*
 %{_datadir}/pkgconfig/gnome-keybindings.pc
-%{_bindir}/*
-%{_libexecdir}/*
+# list all binaries explicitly, so we notice if one goes missing
+%{_bindir}/gnome-about-me
+%{_bindir}/gnome-accessibility-keyboard-properties
+%{_bindir}/gnome-appearance-properties
+%{_bindir}/gnome-at-mobility
+%{_bindir}/gnome-at-properties
+%{_bindir}/gnome-at-visual
+%{_bindir}/gnome-control-center
+%{_bindir}/gnome-default-applications-properties
+%{_bindir}/gnome-display-properties
+%{_bindir}/gnome-font-viewer
+%{_bindir}/gnome-keybinding-properties
+%{_bindir}/gnome-keyboard-properties
+%{_bindir}/gnome-mouse-properties
+%{_bindir}/gnome-network-properties
+%{_bindir}/gnome-sound-properties
+%{_bindir}/gnome-theme-thumbnailer
+%{_bindir}/gnome-thumbnail-font
+%{_bindir}/gnome-typing-monitor
+%{_bindir}/gnome-window-properties
+%{_bindir}/themus-theme-applier
+%{_libexecdir}/gnome-settings-daemon
 %{_libdir}/nautilus/extensions-1.0/*
 %{_libdir}/*.so.*
 %{_sysconfdir}/gconf/schemas/apps_gnome_settings_daemon_default_editor.schemas  
@@ -362,6 +382,7 @@
 %changelog
 * Mon Aug 13 2007 Matthias Clasen <mclasen at redhat.com> - 2.19.90-1
 - Update to 2.19.90
+- Build the sound capplet again
 
 * Mon Aug  6 2007 Matthias Clasen <mclasen at redhat.com> - 2.19.6-3
 - Update the license field again




More information about the scm-commits mailing list