From 71bec65e78d6d36458703135972d3f5a22d23e15 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mar 11 2008 03:50:34 +0000 Subject: bump rev --- diff --git a/async-timezone.patch b/async-timezone.patch deleted file mode 100644 index 7a3ce7c..0000000 --- a/async-timezone.patch +++ /dev/null @@ -1,368 +0,0 @@ ---- gnome-panel-2.21.91/applets/clock/set-timezone.c 2008-02-11 16:15:51.000000000 -0500 -+++ hacked/applets/clock/set-timezone.c 2008-02-18 00:49:27.000000000 -0500 -@@ -91,108 +91,6 @@ - return pk_context; - } - --gboolean --set_system_timezone (const char *filename, GError **err) --{ -- DBusGConnection *session_bus; -- DBusGConnection *system_bus; -- DBusGProxy *mechanism_proxy; -- DBusGProxy *polkit_gnome_proxy; -- gboolean ret = FALSE; -- -- session_bus = get_session_bus (); -- if (session_bus == NULL) -- goto out; -- -- system_bus = get_system_bus (); -- if (system_bus == NULL) -- goto out; -- -- mechanism_proxy = dbus_g_proxy_new_for_name (system_bus, -- "org.gnome.ClockApplet.Mechanism", -- "/", -- "org.gnome.ClockApplet.Mechanism"); -- -- polkit_gnome_proxy = dbus_g_proxy_new_for_name (session_bus, -- "org.gnome.PolicyKit", -- "/org/gnome/PolicyKit/Manager", -- "org.gnome.PolicyKit.Manager"); -- -- if (filename != NULL) { -- GError *error; -- -- g_debug ("Trying to set timezone '%s'", filename); -- try_again: -- error = NULL; -- /* first, try to call into the mechanism */ -- if (!dbus_g_proxy_call_with_timeout (mechanism_proxy, -- "SetTimezone", -- INT_MAX, -- &error, -- /* parameters: */ -- G_TYPE_STRING, filename, -- G_TYPE_INVALID, -- /* return values: */ -- G_TYPE_INVALID)) { -- if (dbus_g_error_has_name (error, "org.gnome.ClockApplet.Mechanism.NotPrivileged")) { -- char **tokens; -- char *polkit_result_textual; -- char *polkit_action; -- gboolean gained_privilege; -- -- tokens = g_strsplit (error->message, " ", 2); -- g_error_free (error); -- if (g_strv_length (tokens) != 2) { -- g_warning ("helper return string malformed"); -- g_strfreev (tokens); -- goto out; -- } -- polkit_action = tokens[0]; -- polkit_result_textual = tokens[1]; -- -- g_debug ("helper refused; returned polkit_result='%s' and polkit_action='%s'", -- polkit_result_textual, polkit_action); -- -- /* Now ask the user for auth... */ -- if (!dbus_g_proxy_call_with_timeout (polkit_gnome_proxy, -- "ShowDialog", -- INT_MAX, -- &error, -- /* parameters: */ -- G_TYPE_STRING, polkit_action, -- G_TYPE_UINT, 0, /* X11 window ID; none */ -- G_TYPE_INVALID, -- /* return values: */ -- G_TYPE_BOOLEAN, &gained_privilege, -- G_TYPE_INVALID)) { -- g_propagate_error (err, error); -- g_strfreev (tokens); -- goto out; -- } -- g_strfreev (tokens); -- -- if (gained_privilege) { -- g_debug ("Gained privilege; trying to set timezone again"); -- goto try_again; -- } -- -- } else { -- g_propagate_error (err, error); -- } -- goto out; -- } -- -- g_debug ("Successfully set time zone to '%s'", filename); -- } -- -- ret = TRUE; --out: -- g_object_unref (mechanism_proxy); -- g_object_unref (polkit_gnome_proxy); -- -- return ret; --} -- - static gint - can_do (const gchar *pk_action_id) - { -@@ -269,7 +167,9 @@ - - typedef struct { - gint ref_count; -+ gchar *call; - gint64 time; -+ gchar *filename; - GFunc callback; - gpointer data; - GDestroyNotify notify; -@@ -284,6 +184,7 @@ - if (data->ref_count == 0) { - if (data->notify) - data->notify (data->data); -+ g_free (data->filename); - g_free (data); - } - } -@@ -392,16 +293,28 @@ - "org.gnome.ClockApplet.Mechanism"); - - data->ref_count++; -- dbus_g_proxy_begin_call_with_timeout (proxy, -- "SetTime", -- set_time_notify, -- data, free_data, -- INT_MAX, -- /* parameters: */ -- G_TYPE_INT64, data->time, -- G_TYPE_INVALID, -- /* return values: */ -- G_TYPE_INVALID); -+ if (strcmp (data->call, "SetTime") == 0) -+ dbus_g_proxy_begin_call_with_timeout (proxy, -+ "SetTime", -+ set_time_notify, -+ data, free_data, -+ INT_MAX, -+ /* parameters: */ -+ G_TYPE_INT64, data->time, -+ G_TYPE_INVALID, -+ /* return values: */ -+ G_TYPE_INVALID); -+ else -+ dbus_g_proxy_begin_call_with_timeout (proxy, -+ "SetTimezone", -+ set_time_notify, -+ data, free_data, -+ INT_MAX, -+ /* parameters: */ -+ G_TYPE_STRING, data->filename, -+ G_TYPE_INVALID, -+ /* return values: */ -+ G_TYPE_INVALID); - } - - void -@@ -417,7 +330,33 @@ - - data = g_new (SetTimeCallbackData, 1); - data->ref_count = 1; -+ data->call = "SetTime"; - data->time = time; -+ data->filename = NULL; -+ data->callback = callback; -+ data->data = d; -+ data->notify = notify; -+ -+ set_time_async (data); -+ free_data (data); -+} -+ -+void -+set_system_timezone_async (const gchar *filename, -+ GFunc callback, -+ gpointer d, -+ GDestroyNotify notify) -+{ -+ SetTimeCallbackData *data; -+ -+ if (filename == NULL) -+ return; -+ -+ data = g_new (SetTimeCallbackData, 1); -+ data->ref_count = 1; -+ data->call = "SetTimezone"; -+ data->time = -1; -+ data->filename = g_strdup (filename); - data->callback = callback; - data->data = d; - data->notify = notify; ---- gnome-panel-2.21.91/applets/clock/set-timezone.h 2008-02-11 16:15:51.000000000 -0500 -+++ hacked/applets/clock/set-timezone.h 2008-02-18 00:48:40.000000000 -0500 -@@ -23,8 +23,6 @@ - #include - #include - --gboolean set_system_timezone (const char *filename, -- GError **err); - gint can_set_system_timezone (void); - - gint can_set_system_time (void); -@@ -34,4 +32,9 @@ - gpointer data, - GDestroyNotify notify); - -+void set_system_timezone_async (const gchar *filename, -+ GFunc callback, -+ gpointer data, -+ GDestroyNotify notify); -+ - #endif ---- gnome-panel-2.21.91/applets/clock/clock-location.h 2008-02-11 16:15:51.000000000 -0500 -+++ hacked/applets/clock/clock-location.h 2008-02-18 00:11:57.000000000 -0500 -@@ -52,7 +52,10 @@ - void clock_location_localtime (ClockLocation *loc, struct tm *tm); - - gboolean clock_location_is_current (ClockLocation *loc); --gboolean clock_location_make_current (ClockLocation *loc, GError **error); -+void clock_location_make_current (ClockLocation *loc, -+ GFunc callback, -+ gpointer data, -+ GDestroyNotify destroy); - - const gchar *clock_location_get_weather_code (ClockLocation *loc); - void clock_location_set_weather_code (ClockLocation *loc, const gchar *code); ---- gnome-panel-2.21.91/applets/clock/clock-location.c 2008-02-11 16:15:51.000000000 -0500 -+++ hacked/applets/clock/clock-location.c 2008-02-18 00:50:53.000000000 -0500 -@@ -667,18 +667,20 @@ - return offset; - } - --gboolean --clock_location_make_current (ClockLocation *loc, GError **error) --{ -- ClockLocationPrivate *priv = PRIVATE (loc); -- gchar *filename; -- gboolean ret; -+typedef struct { -+ ClockLocation *location; -+ GFunc callback; -+ gpointer data; -+ GDestroyNotify destroy; -+} MakeCurrentData; - -- filename = g_build_filename (SYSTEM_ZONEINFODIR, priv->timezone, NULL); -- ret = set_system_timezone (filename, error); -- g_free (filename); -+static void -+make_current_cb (gpointer data, GError *error) -+{ -+ MakeCurrentData *mcdata = data; -+ ClockLocationPrivate *priv = PRIVATE (mcdata->location); - -- if (ret) { -+ if (error == NULL) { - /* FIXME this ugly shortcut is necessary until we move the - * current timezone tracking to clock.c and emit the - * signal from there -@@ -687,7 +689,47 @@ - current_zone = g_strdup (priv->timezone); - } - -- return ret; -+ if (mcdata->callback) -+ mcdata->callback (mcdata->data, error); -+ else -+ g_error_free (error); -+} -+ -+static void -+free_make_current_data (gpointer data) -+{ -+ MakeCurrentData *mcdata = data; -+ -+ if (mcdata->destroy) -+ mcdata->destroy (mcdata->data); -+ -+ g_object_unref (mcdata->location); -+ g_free (mcdata); -+} -+ -+void -+clock_location_make_current (ClockLocation *loc, -+ GFunc callback, -+ gpointer data, -+ GDestroyNotify destroy) -+{ -+ ClockLocationPrivate *priv = PRIVATE (loc); -+ gchar *filename; -+ MakeCurrentData *mcdata; -+ -+ mcdata = g_new (MakeCurrentData, 1); -+ -+ mcdata->location = g_object_ref (loc); -+ mcdata->callback = callback; -+ mcdata->data = data; -+ mcdata->destroy = destroy; -+ -+ filename = g_build_filename (SYSTEM_ZONEINFODIR, priv->timezone, NULL); -+ set_system_timezone_async (filename, -+ (GFunc)make_current_cb, -+ mcdata, -+ free_make_current_data); -+ g_free (filename); - } - - const gchar * ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.c 2008-02-18 01:08:29.000000000 -0500 -+++ hacked/applets/clock/clock-location-tile.c 2008-02-18 01:10:17.000000000 -0500 -@@ -104,7 +104,7 @@ - NULL, - g_cclosure_marshal_VOID__VOID, - G_TYPE_NONE, 0); -- signals[TILE_PRESSED] = g_signal_new ("timezone-set", -+ signals[TIMEZONE_SET] = g_signal_new ("timezone-set", - G_TYPE_FROM_CLASS (g_obj_class), - G_SIGNAL_RUN_FIRST, - G_STRUCT_OFFSET (ClockLocationTileClass, timezone_set), -@@ -171,16 +171,15 @@ - } - - static void --make_current (GtkWidget *widget, ClockLocationTile *tile) -+make_current_cb (gpointer data, GError *error) - { -- ClockLocationTilePrivate *priv = PRIVATE (tile); -- GError *error = NULL; -- GtkWidget *dialog; -+ ClockLocationTile *tile = data; -+ GtkWidget *dialog; - -- if (clock_location_make_current (priv->location, &error)) { -+ if (error == NULL) { - g_signal_emit (tile, signals[TIMEZONE_SET], 0); - } -- else if (error) { -+ else { - dialog = gtk_message_dialog_new (NULL, - 0, - GTK_MESSAGE_ERROR, -@@ -195,6 +194,15 @@ - } - } - -+static void -+make_current (GtkWidget *widget, ClockLocationTile *tile) -+{ -+ ClockLocationTilePrivate *priv = PRIVATE (tile); -+ -+ clock_location_make_current (priv->location, -+ (GFunc)make_current_cb, tile, NULL); -+} -+ - static gboolean - enter_or_leave_tile (GtkWidget *widget, - GdkEventCrossing *event, diff --git a/clock-timezones.patch b/clock-timezones.patch deleted file mode 100644 index fd5a4a7..0000000 --- a/clock-timezones.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gnome-panel-2.19.5/applets/clock/tz.c 2007-07-08 16:25:50.000000000 -0400 -+++ hacked/applets/clock/tz.c 2007-07-12 15:43:48.000000000 -0400 -@@ -469,7 +469,7 @@ - locs = tz_get_locations (); - - /* try to locate by inode */ -- for (i = 0; i < locs->len; i++) -+ for (i = 0; g_ptr_array_index (locs, i); i++) - { - tz_loc = g_ptr_array_index (locs, i); - diff --git a/dst-offset.patch b/dst-offset.patch deleted file mode 100644 index c1f1cda..0000000 --- a/dst-offset.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up gnome-panel-2.21.91/applets/clock/clock-location.c.dst-offset gnome-panel-2.21.91/applets/clock/clock-location.c ---- gnome-panel-2.21.91/applets/clock/clock-location.c.dst-offset 2008-02-19 22:18:55.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location.c 2008-02-19 22:19:03.000000000 -0500 -@@ -645,17 +645,30 @@ glong - clock_location_get_offset (ClockLocation *loc) - { - ClockLocationPrivate *priv = PRIVATE (loc); -- glong sys_timezone; -+ glong sys_timezone, local_timezone; - glong offset; -+ time_t t; -+ struct tm *tm; - -+ t = time (NULL); -+ - unsetenv ("TZ"); -- tzset (); -+ tm = localtime (&t); - sys_timezone = timezone; - -+ if (tm->tm_isdst > 0) { -+ sys_timezone -= 3600; -+ } -+ - setenv ("TZ", priv->timezone, 1); -- tzset(); -+ tm = localtime (&t); -+ local_timezone = timezone; -+ -+ if (tm->tm_isdst > 0) { -+ local_timezone -= 3600; -+ } - -- offset = timezone - sys_timezone; -+ offset = local_timezone - sys_timezone; - - if (priv->sys_timezone) { - setenv ("TZ", priv->sys_timezone, 1); diff --git a/glue.patch b/glue.patch deleted file mode 100644 index dd5aac7..0000000 --- a/glue.patch +++ /dev/null @@ -1,130 +0,0 @@ -diff -up gnome-panel-2.21.5/applets/clock/gnome-clock-applet-mechanism.policy.glue gnome-panel-2.21.5/applets/clock/gnome-clock-applet-mechanism.policy ---- gnome-panel-2.21.5/applets/clock/gnome-clock-applet-mechanism.policy.glue 2008-01-16 10:57:15.000000000 -0500 -+++ gnome-panel-2.21.5/applets/clock/gnome-clock-applet-mechanism.policy 2008-01-16 10:56:56.000000000 -0500 -@@ -0,0 +1,37 @@ -+ -+ -+ -+ -+ -+ -+ -+ -+ Change system time zone -+ Changing the system time zone requires privileges. -+ -+ no -+ auth_self_keep_always -+ -+ -+ -+ -+ Change system time -+ Changing the system time requires privileges. -+ -+ no -+ auth_self_keep_always -+ -+ -+ -+ -+ Configure hardware clock -+ Configuring the hardware clock requires privileges. -+ -+ no -+ auth_self_keep_always -+ -+ -+ -+ -diff -up gnome-panel-2.21.5/applets/clock/Makefile.am.glue gnome-panel-2.21.5/applets/clock/Makefile.am ---- gnome-panel-2.21.5/applets/clock/Makefile.am.glue 2008-01-14 18:05:22.000000000 -0500 -+++ gnome-panel-2.21.5/applets/clock/Makefile.am 2008-01-16 10:54:37.000000000 -0500 -@@ -138,7 +138,7 @@ gnome_clock_applet_mechanism_SOURCES = - gnome-clock-applet-mechanism-main.c - - if HAVE_POLKIT --BUILT_SOURCES += gnome-clock-applet-mechanism.h -+BUILT_SOURCES += gnome-clock-applet-mechanism-glue.h - endif - - gnome_clock_applet_mechanism_INCLUDES = \ -diff -up gnome-panel-2.21.5/applets/clock/Makefile.in.glue gnome-panel-2.21.5/applets/clock/Makefile.in ---- gnome-panel-2.21.5/applets/clock/Makefile.in.glue 2008-01-14 18:18:16.000000000 -0500 -+++ gnome-panel-2.21.5/applets/clock/Makefile.in 2008-01-16 10:54:43.000000000 -0500 -@@ -34,7 +34,7 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@HAVE_POLKIT_TRUE@am__append_1 = gnome-clock-applet-mechanism.h -+@HAVE_POLKIT_TRUE@am__append_1 = gnome-clock-applet-mechanism-glue.h - @CLOCK_INPROCESS_FALSE@libexec_PROGRAMS = clock-applet$(EXEEXT) \ - @CLOCK_INPROCESS_FALSE@ $(am__EXEEXT_1) - @CLOCK_INPROCESS_TRUE@libexec_PROGRAMS = $(am__EXEEXT_1) -@@ -43,6 +43,7 @@ subdir = applets/clock - DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/d-type.m4 \ -+ $(top_srcdir)/m4/gnome-compiler-flags.m4 \ - $(top_srcdir)/m4/gnome-doc-utils.m4 \ - $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \ - $(top_srcdir)/configure.in -@@ -80,7 +81,7 @@ am__libclock_applet_la_SOURCES_DIST = ca - clock-zonetable.c clock-zonetable.h gweather-xml.c \ - gweather-xml.h clock-marshallers.c clock-marshallers.h \ - clock-typebuiltins.c clock-typebuiltins.h \ -- gnome-clock-applet-mechanism.h calendar-client.c \ -+ gnome-clock-applet-mechanism-glue.h calendar-client.c \ - calendar-client.h calendar-sources.c calendar-sources.h \ - calendar-debug.h set-timezone-dummy.c set-timezone.h \ - set-timezone.c -@@ -132,7 +133,7 @@ am__clock_applet_SOURCES_DIST = calendar - clock-zoneinfo.h clock-zonetable.c clock-zonetable.h \ - gweather-xml.c gweather-xml.h clock-marshallers.c \ - clock-marshallers.h clock-typebuiltins.c clock-typebuiltins.h \ -- gnome-clock-applet-mechanism.h calendar-client.c \ -+ gnome-clock-applet-mechanism-glue.h calendar-client.c \ - calendar-client.h calendar-sources.c calendar-sources.h \ - calendar-debug.h set-timezone-dummy.c set-timezone.h \ - set-timezone.c -@@ -346,6 +347,7 @@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE - RANLIB = @RANLIB@ - REBUILD = @REBUILD@ - SCROLLKEEPER_CONFIG = @SCROLLKEEPER_CONFIG@ -+SED = @SED@ - SET_MAKE = @SET_MAKE@ - SHELL = @SHELL@ - STRIP = @STRIP@ -diff -up /dev/null gnome-panel-2.21.5/applets/clock/org.gnome.ClockApplet.Mechanism.service.in ---- /dev/null 2008-01-16 08:23:02.430982355 -0500 -+++ gnome-panel-2.21.5/applets/clock/org.gnome.ClockApplet.Mechanism.service.in 2008-01-16 10:54:37.000000000 -0500 -@@ -0,0 +1,4 @@ -+[D-BUS Service] -+Name=org.gnome.ClockApplet.Mechanism -+Exec=@LIBEXECDIR@/gnome-clock-applet-mechanism -+User=root -diff -up /dev/null gnome-panel-2.21.5/applets/clock/org.gnome.ClockApplet.Mechanism.conf ---- /dev/null 2008-01-16 08:23:02.430982355 -0500 -+++ gnome-panel-2.21.5/applets/clock/org.gnome.ClockApplet.Mechanism.conf 2008-01-16 10:54:37.000000000 -0500 -@@ -0,0 +1,19 @@ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ diff --git a/gnome-panel-2.16.1-allow-spurious-view-done-signals.patch b/gnome-panel-2.16.1-allow-spurious-view-done-signals.patch deleted file mode 100644 index fcc0854..0000000 --- a/gnome-panel-2.16.1-allow-spurious-view-done-signals.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- gnome-panel-2.16.1/applets/clock/calendar-client.c.allow-spurious-view-done-signals 2008-01-07 11:50:59.000000000 -0500 -+++ gnome-panel-2.16.1/applets/clock/calendar-client.c 2008-01-07 11:54:08.000000000 -0500 -@@ -1199,6 +1199,13 @@ - { - CalendarClientQuery *query; - -+ if (!source->query_in_progress) -+ { -+ g_warning ("Got spurious 'view-done' signal from calendar backend for query %p\n", -+ &source->completed_query); -+ return; -+ } -+ - query = goddamn_this_is_crack (source, view, NULL); - - dprintf ("Query %p completed: %s\n", query, e_cal_get_error_message (status)); diff --git a/gnome-panel.spec b/gnome-panel.spec index b177f23..384d183 100644 --- a/gnome-panel.spec +++ b/gnome-panel.spec @@ -22,7 +22,7 @@ Summary: GNOME panel Name: gnome-panel Version: 2.22.0 -Release: 1%{?dist} +Release: 2%{?dist} URL: http://www.gnome.org Source0: http://download.gnome.org/sources/gnome-panel/2.22/%{name}-%{version}.tar.bz2 @@ -349,6 +349,9 @@ fi %{_datadir}/gtk-doc/html/* %changelog +* Mon Mar 10 2008 Matthias Clasen - 2.22.0-2 +- Bump revision + * Mon Mar 10 2008 Jon McCann - 2.22.0-1 - Update to 2.22.0 diff --git a/less-resizing.patch b/less-resizing.patch deleted file mode 100644 index 1364fb5..0000000 --- a/less-resizing.patch +++ /dev/null @@ -1,166 +0,0 @@ -diff -up gnome-panel-2.21.91/applets/clock/clock.c.less-resizing gnome-panel-2.21.91/applets/clock/clock.c ---- gnome-panel-2.21.91/applets/clock/clock.c.less-resizing 2008-02-20 11:46:30.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock.c 2008-02-20 11:46:30.000000000 -0500 -@@ -1074,6 +1074,7 @@ location_tile_timezone_set_cb (ClockLoca - ClockData *cd = data; - - clock_map_refresh (CLOCK_MAP (cd->map_widget)); -+ update_location_tiles (cd); - } - - static void -diff -up gnome-panel-2.21.91/applets/clock/clock-location-tile.c.less-resizing gnome-panel-2.21.91/applets/clock/clock-location-tile.c ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.c.less-resizing 2008-02-20 11:46:30.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location-tile.c 2008-02-20 12:03:00.000000000 -0500 -@@ -42,6 +42,8 @@ typedef struct { - GtkWidget *current_button; - GtkWidget *current_label; - GtkWidget *current_marker; -+ GtkWidget *current_spacer; -+ GtkSizeGroup *current_group; - GtkSizeGroup *button_group; - - GtkWidget *weather_icon; -@@ -157,6 +159,11 @@ clock_location_tile_finalize (GObject *g - priv->button_group = NULL; - } - -+ if (priv->current_group) { -+ g_object_unref (priv->current_group); -+ priv->current_group = NULL; -+ } -+ - G_OBJECT_CLASS (clock_location_tile_parent_class)->finalize (g_obj); - } - -@@ -213,25 +220,43 @@ enter_or_leave_tile (GtkWidget - if (event->mode != GDK_CROSSING_NORMAL) { - return TRUE; - } -+ -+ if (clock_location_is_current (priv->location)) { -+ gtk_widget_hide (priv->current_button); -+ gtk_widget_hide (priv->current_spacer); -+ gtk_widget_show (priv->current_marker); -+ -+ return TRUE; -+ } -+ - if (event->type == GDK_ENTER_NOTIFY) { -- gint can_set; -+ gint can_set; - - can_set = can_set_system_timezone (); -- if (!clock_location_is_current (priv->location) && -- can_set != 0) { -+ if (can_set != 0) { - gtk_label_set_markup (GTK_LABEL (priv->current_label), - can_set == 1 ? - _("Set...") : -- _("Set")); -+ _("Set")); -+ gtk_widget_hide (priv->current_spacer); -+ gtk_widget_hide (priv->current_marker); - gtk_widget_show (priv->current_button); - } -- } -- else { -- if (event->detail != GDK_NOTIFY_INFERIOR) -- gtk_widget_hide (priv->current_button); -- } -+ else { -+ gtk_widget_hide (priv->current_marker); -+ gtk_widget_hide (priv->current_button); -+ gtk_widget_show (priv->current_spacer); -+ } -+ } -+ else { -+ if (event->detail != GDK_NOTIFY_INFERIOR) { -+ gtk_widget_hide (priv->current_button); -+ gtk_widget_hide (priv->current_marker); -+ gtk_widget_show (priv->current_spacer); -+ } -+ } - -- return TRUE; -+ return TRUE; - } - - static void -@@ -241,6 +266,7 @@ clock_location_tile_fill (ClockLocationT - GtkWidget *align; - GtkWidget *strut; - GtkWidget *box; -+ gint can_set; - - priv->box = gtk_event_box_new (); - -@@ -278,8 +304,16 @@ clock_location_tile_fill (ClockLocationT - gtk_box_pack_start (GTK_BOX (box), align, FALSE, FALSE, 0); - gtk_box_pack_start (GTK_BOX (box), priv->time_label, FALSE, FALSE, 0); - -+ can_set = can_set_system_timezone (); -+ - priv->current_button = gtk_button_new (); - priv->current_label = gtk_label_new (""); -+ if (can_set != 0) { -+ gtk_label_set_markup (GTK_LABEL (priv->current_label), -+ can_set == 1 ? -+ _("Set...") : -+ _("Set")); -+ } - gtk_widget_show (priv->current_label); - gtk_widget_set_no_show_all (priv->current_button, TRUE); - gtk_container_add (GTK_CONTAINER (priv->current_button), priv->current_label); -@@ -289,15 +323,29 @@ clock_location_tile_fill (ClockLocationT - gtk_misc_set_alignment (GTK_MISC (priv->current_marker), 1.0, 0.5); - gtk_widget_set_no_show_all (priv->current_marker, TRUE); - -+ priv->current_spacer = gtk_event_box_new (); -+ gtk_widget_set_no_show_all (priv->current_spacer, TRUE); -+ - strut = gtk_event_box_new (); - gtk_box_pack_start (GTK_BOX (box), strut, TRUE, TRUE, 0); - gtk_box_pack_start (GTK_BOX (box), priv->current_button, FALSE, FALSE, 0); - gtk_box_pack_start (GTK_BOX (box), priv->current_marker, FALSE, FALSE, 0); -+ gtk_box_pack_start (GTK_BOX (box), priv->current_spacer, FALSE, FALSE, 0); - priv->button_group = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL); - gtk_size_group_set_ignore_hidden (priv->button_group, FALSE); - gtk_size_group_add_widget (priv->button_group, strut); - gtk_size_group_add_widget (priv->button_group, priv->current_button); - -+ priv->current_group = gtk_size_group_new (GTK_SIZE_GROUP_BOTH); -+ gtk_size_group_set_ignore_hidden (priv->current_group, FALSE); -+ gtk_size_group_add_widget (priv->current_group, priv->current_button); -+ gtk_size_group_add_widget (priv->current_group, priv->current_marker); -+ gtk_size_group_add_widget (priv->current_group, priv->current_spacer); -+ -+ gtk_widget_show (priv->current_button); -+ gtk_widget_show (priv->current_marker); -+ gtk_widget_show (priv->current_spacer); -+ - g_signal_connect (priv->current_button, "clicked", - G_CALLBACK (make_current), this); - -@@ -443,11 +491,16 @@ clock_location_tile_refresh (ClockLocati - g_return_if_fail (IS_CLOCK_LOCATION_TILE (this)); - - if (clock_location_is_current (priv->location)) { -- gtk_widget_hide (priv->current_button); -- gtk_widget_show (priv->current_marker); -- } -- else { -- gtk_widget_hide (priv->current_marker); -+ gtk_widget_hide (priv->current_spacer); -+ gtk_widget_hide (priv->current_button); -+ gtk_widget_show (priv->current_marker); -+ } -+ else { -+ if (GTK_WIDGET_VISIBLE (priv->current_marker)) { -+ gtk_widget_hide (priv->current_marker); -+ gtk_widget_hide (priv->current_button); -+ gtk_widget_show (priv->current_spacer); -+ } - } - - if (clock_needs_face_refresh (this)) { diff --git a/localtime.patch b/localtime.patch deleted file mode 100644 index 72ca62a..0000000 --- a/localtime.patch +++ /dev/null @@ -1,239 +0,0 @@ -diff -up gnome-panel-2.21.91/applets/clock/clock-location-tile.h.localtime gnome-panel-2.21.91/applets/clock/clock-location-tile.h ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.h.localtime 2008-02-11 16:15:51.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location-tile.h 2008-02-17 19:26:15.000000000 -0500 -@@ -28,7 +28,7 @@ typedef struct - void (* tile_pressed) (ClockLocationTile *tile); - void (* timezone_set) (ClockLocationTile *tile); - void (* weather_updated) (ClockLocationTile *tile, GdkPixbuf *weather_icon, const char *temperature); -- char *(* need_formatted_time) (ClockLocationTile *tile); -+ int (* need_clock_format) (ClockLocationTile *tile); - } ClockLocationTileClass; - - GType clock_location_tile_get_type (void); -@@ -40,7 +40,8 @@ ClockLocation *clock_location_tile_get_l - - void weather_info_setup_tooltip (WeatherInfo *info, GtkTooltip *tip); - --void clock_location_tile_refresh (ClockLocationTile *this); -+void clock_location_tile_refresh (ClockLocationTile *this, -+ gboolean force_refresh); - - G_END_DECLS - #endif /* __CLOCK_H__ */ -diff -up gnome-panel-2.21.91/applets/clock/clock.c.localtime gnome-panel-2.21.91/applets/clock/clock.c ---- gnome-panel-2.21.91/applets/clock/clock.c.localtime 2008-02-11 16:15:51.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock.c 2008-02-17 19:25:23.000000000 -0500 -@@ -508,7 +508,7 @@ update_location_tiles (ClockData *cd) - ClockLocationTile *tile; - - tile = CLOCK_LOCATION_TILE (l->data); -- clock_location_tile_refresh (tile); -+ clock_location_tile_refresh (tile, FALSE); - } - } - -@@ -1084,12 +1084,12 @@ location_tile_weather_updated_cb (ClockL - gtk_label_set_text (GTK_LABEL (cd->panel_temperature_label), temperature); - } - --static char * --location_tile_need_formatted_time_cb (ClockLocationTile *tile, gpointer data) -+static ClockFormat -+location_tile_need_clock_format_cb(ClockLocationTile *tile, gpointer data) - { - ClockData *cd = data; - -- return format_time (cd); -+ return cd->format; - } - - static void -@@ -1133,8 +1133,10 @@ create_cities_section (ClockData *cd) - G_CALLBACK (location_tile_timezone_set_cb), cd); - g_signal_connect (city, "weather-updated", - G_CALLBACK (location_tile_weather_updated_cb), cd); -- g_signal_connect (city, "need-formatted-time", -- G_CALLBACK (location_tile_need_formatted_time_cb), cd); -+ g_signal_connect (city, "need-clock-format", -+ G_CALLBACK (location_tile_need_clock_format_cb), cd); -+ -+ clock_location_tile_refresh (city, TRUE); - - gtk_box_pack_start (GTK_BOX (cd->cities_section), - GTK_WIDGET (city), -diff -up gnome-panel-2.21.91/applets/clock/clock-location-tile.c.localtime gnome-panel-2.21.91/applets/clock/clock-location-tile.c ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.c.localtime 2008-02-11 16:15:51.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location-tile.c 2008-02-17 19:26:03.000000000 -0500 -@@ -11,6 +11,7 @@ - #include "clock-face.h" - #include "clock-location-tile.h" - #include "clock-location.h" -+#include "clock-utils.h" - #include "clock-marshallers.h" - #include "set-timezone.h" - -@@ -20,7 +21,7 @@ enum { - TILE_PRESSED, - TIMEZONE_SET, - WEATHER_UPDATED, -- NEED_FORMATTED_TIME, -+ NEED_CLOCK_FORMAT, - LAST_SIGNAL - }; - -@@ -122,14 +123,15 @@ clock_location_tile_class_init (ClockLoc - G_TYPE_NONE, 2, - G_TYPE_OBJECT, - G_TYPE_STRING); -- signals[NEED_FORMATTED_TIME] = g_signal_new ("need-formatted-time", -- G_TYPE_FROM_CLASS (g_obj_class), -- G_SIGNAL_RUN_LAST, -- G_STRUCT_OFFSET (ClockLocationTileClass, need_formatted_time), -- NULL, -- NULL, -- _clock_marshal_STRING__VOID, -- G_TYPE_STRING, 0); -+ -+ signals[NEED_CLOCK_FORMAT] = g_signal_new ("need-clock-format", -+ G_TYPE_FROM_CLASS (g_obj_class), -+ G_SIGNAL_RUN_LAST, -+ G_STRUCT_OFFSET (ClockLocationTileClass, need_clock_format), -+ NULL, -+ NULL, -+ _clock_marshal_INT__VOID, -+ G_TYPE_INT, 0); - } - - static void -@@ -310,7 +312,7 @@ clock_location_tile_fill (ClockLocationT - gtk_container_add (GTK_CONTAINER (priv->box), alignment); - gtk_container_add (GTK_CONTAINER (this), priv->box); - -- clock_location_tile_refresh (this); -+ clock_location_tile_refresh (this, TRUE); - } - - static gboolean -@@ -378,13 +380,72 @@ emit_weather_updated (ClockLocationTile - g_signal_emit (this, signals[WEATHER_UPDATED], 0, weather_icon, temperature); - } - -+static char * -+format_time (struct tm *now, -+ char *tzname, -+ ClockFormat clock_format, -+ long offset) -+{ -+ char buf[256]; -+ char *format; -+ time_t local_t; -+ struct tm local_now; -+ char *utf8; -+ char *tmp; -+ long hours, minutes; -+ -+ time (&local_t); -+ localtime_r (&local_t, &local_now); -+ -+ if (local_now.tm_wday != now->tm_wday) { -+ if (clock_format == CLOCK_FORMAT_12) { -+ format = _("%l:%M %p (%A)"); -+ } -+ else { -+ format = _("%H:%M (%A)"); -+ } -+ } -+ else { -+ if (clock_format == CLOCK_FORMAT_12) { -+ format = _("%l:%M %p"); -+ } -+ else { -+ format = _("%H:%M"); -+ } -+ } -+ -+ if (strftime (buf, sizeof (buf), format, now) <= 0) { -+ strcpy (buf, "???"); -+ } -+ -+ hours = offset / 3600; -+ minutes = labs (offset % 3600) / 60; -+ -+ if (hours != 0 && minutes != 0) { -+ tmp = g_strdup_printf ("%s %s %+ld:%ld", buf, tzname, hours, minutes); -+ } -+ else if (hours != 0) { -+ tmp = g_strdup_printf ("%s %s %+ld", buf, tzname, hours); -+ } -+ else { -+ tmp = g_strdup_printf ("%s %s", buf, tzname); -+ } -+ -+ utf8 = g_locale_to_utf8 (tmp, -1, NULL, NULL, NULL); -+ -+ g_free (tmp); -+ -+ return utf8; -+} -+ - void --clock_location_tile_refresh (ClockLocationTile *this) -+clock_location_tile_refresh (ClockLocationTile *this, gboolean force_refresh) - { - ClockLocationTilePrivate *priv = PRIVATE (this); -- gchar *tmp, *tmp2, *tzname; -+ gchar *tmp, *tzname; - struct tm now; - long offset, hours, minutes; -+ int format; - - g_return_if_fail (IS_CLOCK_LOCATION_TILE (this)); - -@@ -411,7 +472,7 @@ clock_location_tile_refresh (ClockLocati - clock_face_refresh (CLOCK_FACE (priv->clock_face)); - } - -- if (!clock_needs_label_refresh (this)) { -+ if (!force_refresh && !clock_needs_label_refresh (this)) { - return; - } - -@@ -426,26 +487,15 @@ clock_location_tile_refresh (ClockLocati - gtk_label_set_markup (GTK_LABEL (priv->city_label), tmp); - g_free (tmp); - -- tmp = NULL; -- g_signal_emit (this, signals[NEED_FORMATTED_TIME], 0, &tmp); -+ g_signal_emit (this, signals[NEED_CLOCK_FORMAT], 0, &format); - - offset = - priv->last_offset; - -- hours = offset / 3600; -- minutes = labs (offset % 3600) / 60; -+ tmp = format_time (&now, tzname, format, offset); - -- if (hours != 0 && minutes != 0) -- tmp2 = g_strdup_printf ("%s %+ld:%ld", tmp ? tmp : "", hours, minutes); -- else if (hours != 0) -- tmp2 = g_strdup_printf ("%s %+ld", tmp ? tmp : "", hours); -- else { -- tmp2 = tmp; -- tmp = NULL; -- } -+ gtk_label_set_markup (GTK_LABEL (priv->time_label), tmp); - -- gtk_label_set_markup (GTK_LABEL (priv->time_label), tmp2); - g_free (tmp); -- g_free (tmp2); - } - - void -diff -up gnome-panel-2.21.91/applets/clock/clock-marshallers.list.localtime gnome-panel-2.21.91/applets/clock/clock-marshallers.list ---- gnome-panel-2.21.91/applets/clock/clock-marshallers.list.localtime 2008-02-11 16:15:51.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-marshallers.list 2008-02-17 19:25:23.000000000 -0500 -@@ -3,4 +3,4 @@ VOID:OBJECT - VOID:POINTER - POINTER:VOID - VOID:OBJECT,STRING --STRING:VOID -+INT:VOID diff --git a/logout-focus.patch b/logout-focus.patch deleted file mode 100644 index feb8eb6..0000000 --- a/logout-focus.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -up gnome-panel-2.21.90/gnome-panel/panel-logout.c.logout-focus gnome-panel-2.21.90/gnome-panel/panel-logout.c ---- gnome-panel-2.21.90/gnome-panel/panel-logout.c.logout-focus 2008-02-03 01:48:13.000000000 -0500 -+++ gnome-panel-2.21.90/gnome-panel/panel-logout.c 2008-02-03 01:48:19.000000000 -0500 -@@ -449,4 +449,5 @@ panel_logout_new (PanelLogoutDialogType - - gtk_window_set_screen (GTK_WINDOW (logout_dialog), screen); - gtk_widget_show (GTK_WIDGET (logout_dialog)); -+ gdk_window_focus (GTK_WIDGET (current_dialog)->window, activate_time); - } diff --git a/more-sharp-icons.patch b/more-sharp-icons.patch deleted file mode 100644 index 9d325c4..0000000 --- a/more-sharp-icons.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.h.22-24-madness gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.h ---- gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.h.22-24-madness 2007-10-13 00:10:23.000000000 -0400 -+++ gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.h 2007-10-13 00:10:39.000000000 -0400 -@@ -31,7 +31,7 @@ - G_BEGIN_DECLS - - /* themeable size - "panel-menu" */ --#define PANEL_DEFAULT_MENU_ICON_SIZE 22 -+#define PANEL_DEFAULT_MENU_ICON_SIZE 24 - - /* stock icons */ - #define PANEL_STOCK_FORCE_QUIT "gnome-panel-force-quit" -diff -up gnome-panel-2.20.0.1/gnome-panel/menu.c.22-24-madness gnome-panel-2.20.0.1/gnome-panel/menu.c ---- gnome-panel-2.20.0.1/gnome-panel/menu.c.22-24-madness 2007-09-18 09:56:51.000000000 -0400 -+++ gnome-panel-2.20.0.1/gnome-panel/menu.c 2007-10-13 00:01:11.000000000 -0400 -@@ -385,8 +385,24 @@ panel_make_menu_icon (GtkIconTheme *icon - } - - if (pb == NULL) { -- pb = gdk_pixbuf_new_from_file_at_size (file, size, size, NULL); -- -+ pb = gdk_pixbuf_new_from_file (file, NULL); -+ if (pb) { -+ gint width, height; -+ -+ width = gdk_pixbuf_get_width (pb); -+ height = gdk_pixbuf_get_height (pb); -+ -+ if (!(size - 2 <= width && width <= size && -+ size - 2 <= height && height <= size)) { -+ GdkPixbuf *tmp; -+ -+ tmp = gdk_pixbuf_scale_simple (pb, size, size, GDK_INTERP_BILINEAR); -+ -+ g_object_unref (pb); -+ pb = tmp; -+ } -+ } -+ - /* add icon to the hash table so we don't load it again */ - loaded = TRUE; - } -diff -up gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.c.22-24-madness gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.c ---- gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.c.22-24-madness 2007-10-13 00:12:17.000000000 -0400 -+++ gnome-panel-2.20.0.1/gnome-panel/panel-stock-icons.c 2007-10-13 00:12:26.000000000 -0400 -@@ -128,7 +128,7 @@ panel_init_stock_icons_and_items (void) - PANEL_DEFAULT_MENU_ICON_SIZE, - PANEL_DEFAULT_MENU_ICON_SIZE); - -- panel_menu_bar_icon_size = gtk_icon_size_register ("panel-foobar", 20, 20); -+ panel_menu_bar_icon_size = gtk_icon_size_register ("panel-foobar", 24, 24); - - factory = gtk_icon_factory_new (); - gtk_icon_factory_add_default (factory); diff --git a/open-drawer.patch b/open-drawer.patch deleted file mode 100644 index 9aaa896..0000000 --- a/open-drawer.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up gnome-panel-2.21.91/gnome-panel/drawer.c.open-drawer gnome-panel-2.21.91/gnome-panel/drawer.c ---- gnome-panel-2.21.91/gnome-panel/drawer.c.open-drawer 2008-02-11 16:15:47.000000000 -0500 -+++ gnome-panel-2.21.91/gnome-panel/drawer.c 2008-02-21 10:03:03.000000000 -0500 -@@ -34,7 +34,7 @@ - static void - drawer_click (GtkWidget *w, Drawer *drawer) - { -- if (!panel_toplevel_get_is_hidden (drawer->toplevel)) -+ if (panel_toplevel_get_state (drawer->toplevel) == PANEL_STATE_NORMAL) - panel_toplevel_hide (drawer->toplevel, FALSE, -1); - else - panel_toplevel_unhide (drawer->toplevel); -@@ -398,7 +398,6 @@ create_drawer_toplevel (const char *draw - - toplevel = panel_profile_load_toplevel (client, PANEL_CONFIG_DIR, - PANEL_GCONF_TOPLEVELS, toplevel_id); -- - if (!toplevel) { - g_free (toplevel_id); - return NULL; diff --git a/panel-weather.patch b/panel-weather.patch deleted file mode 100644 index 97cc508..0000000 --- a/panel-weather.patch +++ /dev/null @@ -1,271 +0,0 @@ -diff -up gnome-panel-2.21.91/applets/clock/clock.c.panel-weather gnome-panel-2.21.91/applets/clock/clock.c ---- gnome-panel-2.21.91/applets/clock/clock.c.panel-weather 2008-02-17 21:54:50.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock.c 2008-02-17 22:06:23.000000000 -0500 -@@ -211,6 +211,7 @@ struct _ClockData { - - static void update_clock (ClockData * cd); - static void update_tooltip (ClockData * cd); -+static void update_panel_weather (ClockData *cd); - static int clock_timeout_callback (gpointer data); - static float get_itime (time_t current_time); - -@@ -1131,8 +1132,6 @@ create_cities_section (ClockData *cd) - G_CALLBACK (location_tile_pressed_cb), cd); - g_signal_connect (city, "timezone-set", - G_CALLBACK (location_tile_timezone_set_cb), cd); -- g_signal_connect (city, "weather-updated", -- G_CALLBACK (location_tile_weather_updated_cb), cd); - g_signal_connect (city, "need-clock-format", - G_CALLBACK (location_tile_need_clock_format_cb), cd); - -@@ -1299,7 +1298,6 @@ create_main_clock_button (void) - GtkWidget *button; - - button = gtk_toggle_button_new (); -- gtk_container_set_resize_mode (GTK_CONTAINER (button), GTK_RESIZE_IMMEDIATE); - gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE); - - force_no_focus_padding (button); -@@ -1408,6 +1406,8 @@ create_clock_widget (ClockData *cd) - cd->orient = -1; - cd->size = panel_applet_get_size (PANEL_APPLET (cd->applet)); - -+ update_panel_weather (cd); -+ - /* Refresh the clock so that it paints its first state */ - refresh_clock_timeout (cd); - applet_change_orient (PANEL_APPLET (cd->applet), -@@ -1974,9 +1974,6 @@ show_date_changed (GConfClient *client, - static void - update_panel_weather (ClockData *cd) - { -- GtkWidget *weatherbox; -- -- weatherbox = gtk_widget_get_parent (cd->panel_weather_icon); - if (cd->show_weather) - gtk_widget_show (cd->panel_weather_icon); - else -@@ -1988,9 +1985,11 @@ update_panel_weather (ClockData *cd) - gtk_widget_hide (cd->panel_temperature_label); - - if (cd->show_weather || cd->show_temperature) -- gtk_widget_show (weatherbox); -+ gtk_widget_show (cd->weather_obox); - else -- gtk_widget_hide (weatherbox); -+ gtk_widget_hide (cd->weather_obox); -+ -+ gtk_widget_queue_resize (cd->applet); - } - - static void -@@ -2036,17 +2035,64 @@ show_temperature_changed (GConfClient * - } - - static void --set_locations (ClockData *cd, GList *locations) -+location_weather_updated_cb (ClockLocation *location, -+ WeatherInfo *info, -+ gpointer data) - { -- free_locations (cd); -+ ClockData *cd = data; -+ const gchar *icon_name; -+ const gchar *temp; -+ GtkIconTheme *theme; -+ GdkPixbuf *pixbuf; - -- cd->locations = locations; -+ if (!info || !weather_info_is_valid (info)) -+ return; - -- if (cd->map_widget) -- clock_map_refresh (CLOCK_MAP (cd->map_widget)); -+ if (!clock_location_is_current (location)) -+ return; -+ -+ icon_name = weather_info_get_icon_name (info); -+ theme = gtk_icon_theme_get_default (); -+ pixbuf = gtk_icon_theme_load_icon (theme, icon_name, 16, 0, NULL); -+ -+ temp = weather_info_get_temp_summary (info); -+ -+ gtk_image_set_from_pixbuf (GTK_IMAGE (cd->panel_weather_icon), pixbuf); -+ gtk_label_set_text (GTK_LABEL (cd->panel_temperature_label), temp); -+} -+ -+static void -+locations_changed (ClockData *cd) -+{ -+ GList *l; -+ ClockLocation *loc; -+ glong id; -+ -+ for (l = cd->locations; l; l = l->next) { -+ loc = l->data; -+ -+ id = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (loc), "weather-updated")); -+ if (id == 0) { -+ id = g_signal_connect (loc, "weather-updated", -+ G_CALLBACK (location_weather_updated_cb), cd); -+ g_object_set_data (G_OBJECT (loc), "weather-updated", GINT_TO_POINTER (id)); -+ } -+ } -+ -+ if (cd->map_widget) -+ clock_map_refresh (CLOCK_MAP (cd->map_widget)); - - if (cd->clock_vbox) -- create_cities_section (cd); -+ create_cities_section (cd); -+} -+ -+ -+static void -+set_locations (ClockData *cd, GList *locations) -+{ -+ free_locations (cd); -+ cd->locations = locations; -+ locations_changed (cd); - } - - typedef struct { -@@ -2948,7 +2994,6 @@ run_prefs_edit_save (GtkButton *button, - clock_location_set_coords (loc, lat, lon); - clock_location_set_weather_code (loc, weather_code); - } else { -- GList *locs; - WeatherPrefs prefs; - - prefs.temperature_unit = cd->temperature_unit; -@@ -2956,9 +3001,8 @@ run_prefs_edit_save (GtkButton *button, - - loc = clock_location_new (name, clock_zoneinfo_get_name (info), lat, lon, weather_code, &prefs); - -- locs = g_list_copy (cd->locations); -- locs = g_list_append (locs, loc); -- set_locations (cd, locs); -+ cd->locations = g_list_append (cd->locations, loc); -+ locations_changed (cd); - } - - save_cities_store (cd); -@@ -3522,14 +3566,13 @@ remove_tree_row (GtkTreeModel *model, Gt - { - ClockData *cd = data; - ClockLocation *loc = NULL; -- GList *list = g_list_copy (cd->locations); - - gtk_tree_model_get (model, iter, COL_CITY_LOC, &loc, -1); - -- list = g_list_remove (list, loc); -- - gtk_list_store_remove (cd->cities_store, iter); -- set_locations (cd, list); -+ cd->locations = g_list_remove (cd->locations, loc); -+ locations_changed (cd); -+ g_object_unref (loc); - - save_cities_store (cd); - } -diff -up gnome-panel-2.21.91/applets/clock/clock-location-tile.c.panel-weather gnome-panel-2.21.91/applets/clock/clock-location-tile.c ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.c.panel-weather 2008-02-17 21:54:42.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location-tile.c 2008-02-17 22:06:39.000000000 -0500 -@@ -20,7 +20,6 @@ G_DEFINE_TYPE (ClockLocationTile, clock_ - enum { - TILE_PRESSED, - TIMEZONE_SET, -- WEATHER_UPDATED, - NEED_CLOCK_FORMAT, - LAST_SIGNAL - }; -@@ -113,17 +112,6 @@ clock_location_tile_class_init (ClockLoc - NULL, - g_cclosure_marshal_VOID__VOID, - G_TYPE_NONE, 0); -- signals[WEATHER_UPDATED] = g_signal_new ("weather-updated", -- G_TYPE_FROM_CLASS (g_obj_class), -- G_SIGNAL_RUN_FIRST, -- G_STRUCT_OFFSET (ClockLocationTileClass, weather_updated), -- NULL, -- NULL, -- _clock_marshal_VOID__OBJECT_STRING, -- G_TYPE_NONE, 2, -- G_TYPE_OBJECT, -- G_TYPE_STRING); -- - signals[NEED_CLOCK_FORMAT] = g_signal_new ("need-clock-format", - G_TYPE_FROM_CLASS (g_obj_class), - G_SIGNAL_RUN_LAST, -@@ -377,12 +365,6 @@ copy_tm (struct tm *from, struct tm *to) - to->tm_yday = from->tm_yday; - } - --static void --emit_weather_updated (ClockLocationTile *this, GdkPixbuf *weather_icon, const char *temperature) --{ -- g_signal_emit (this, signals[WEATHER_UPDATED], 0, weather_icon, temperature); --} -- - static char * - format_time (struct tm *now, - char *tzname, -@@ -447,23 +429,12 @@ clock_location_tile_refresh (ClockLocati - ClockLocationTilePrivate *priv = PRIVATE (this); - gchar *tmp, *tzname; - struct tm now; -- long offset, hours, minutes; -+ long offset; - int format; - - g_return_if_fail (IS_CLOCK_LOCATION_TILE (this)); - - if (clock_location_is_current (priv->location)) { -- if (!GTK_WIDGET_VISIBLE (priv->current_marker)) { -- GdkPixbuf *pixbuf; -- const gchar *temp = NULL; -- -- pixbuf = gtk_image_get_pixbuf (GTK_IMAGE (priv->weather_icon)); -- if (clock_location_get_weather_info (priv->location)) -- temp = weather_info_get_temp_summary (clock_location_get_weather_info (priv->location)); -- -- emit_weather_updated (this, pixbuf, temp); -- } -- - gtk_widget_hide (priv->current_button); - gtk_widget_show (priv->current_marker); - } -@@ -582,7 +553,6 @@ update_weather_icon (ClockLocation *loc, - GdkPixbuf *pixbuf = NULL; - GtkIconTheme *theme = NULL; - const gchar *icon_name; -- const gchar *temp = NULL; - - if (!info || !weather_info_is_valid (info)) - return; -@@ -591,14 +561,9 @@ update_weather_icon (ClockLocation *loc, - theme = gtk_icon_theme_get_default (); - pixbuf = gtk_icon_theme_load_icon (theme, icon_name, 16, 0, NULL); - -- temp = weather_info_get_temp_summary (info); -- - if (pixbuf) { - gtk_image_set_from_pixbuf (GTK_IMAGE (priv->weather_icon), pixbuf); - gtk_alignment_set_padding (GTK_ALIGNMENT (gtk_widget_get_parent (priv->weather_icon)), 0, 0, 0, 6); -- if (clock_location_is_current (loc)) { -- emit_weather_updated (tile, pixbuf, temp); -- } - } - } - -diff -up gnome-panel-2.21.91/applets/clock/clock-location-tile.h.panel-weather gnome-panel-2.21.91/applets/clock/clock-location-tile.h ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.h.panel-weather 2008-02-17 21:54:33.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location-tile.h 2008-02-17 21:54:59.000000000 -0500 -@@ -27,7 +27,6 @@ typedef struct - - void (* tile_pressed) (ClockLocationTile *tile); - void (* timezone_set) (ClockLocationTile *tile); -- void (* weather_updated) (ClockLocationTile *tile, GdkPixbuf *weather_icon, const char *temperature); - int (* need_clock_format) (ClockLocationTile *tile); - } ClockLocationTileClass; - diff --git a/pref-dialogs.patch b/pref-dialogs.patch deleted file mode 100644 index d7ea7da..0000000 --- a/pref-dialogs.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- gnome-panel-2.21.91/applets/clock/clock.glade 2008-02-11 16:15:51.000000000 -0500 -+++ hacked/applets/clock/clock.glade 2008-02-16 01:43:05.000000000 -0500 -@@ -14,7 +14,7 @@ - True - False - False -- GDK_WINDOW_TYPE_HINT_NORMAL -+ GDK_WINDOW_TYPE_HINT_DIALOG - GDK_GRAVITY_NORTH_WEST - True - False -@@ -484,7 +484,7 @@ - True - False - False -- GDK_WINDOW_TYPE_HINT_NORMAL -+ GDK_WINDOW_TYPE_HINT_DIALOG - GDK_GRAVITY_NORTH_WEST - True - False -@@ -818,7 +818,7 @@ - True - False - False -- GDK_WINDOW_TYPE_HINT_NORMAL -+ GDK_WINDOW_TYPE_HINT_DIALOG - GDK_GRAVITY_NORTH_WEST - True - False diff --git a/set-button.patch b/set-button.patch deleted file mode 100644 index a5c9635..0000000 --- a/set-button.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up gnome-panel-2.21.91/applets/clock/clock-location-tile.c.set-button gnome-panel-2.21.91/applets/clock/clock-location-tile.c ---- gnome-panel-2.21.91/applets/clock/clock-location-tile.c.set-button 2008-02-17 15:52:17.000000000 -0500 -+++ gnome-panel-2.21.91/applets/clock/clock-location-tile.c 2008-02-17 15:52:54.000000000 -0500 -@@ -223,6 +223,9 @@ enter_or_leave_tile (GtkWidget - { - ClockLocationTilePrivate *priv = PRIVATE (tile); - -+ if (event->mode != GDK_CROSSING_NORMAL) { -+ return TRUE; -+ } - if (event->type == GDK_ENTER_NOTIFY) { - gint can_set; -