Index: e-dateedit.c
===================================================================
RCS file: /cvs/gnome/evolution/widgets/misc/e-dateedit.c,v
retrieving revision 1.42
diff -u -r1.42 e-dateedit.c
--- e-dateedit.c	18 Jan 2005 07:24:31 -0000	1.42
+++ e-dateedit.c	12 May 2005 05:20:23 -0000
@@ -181,6 +181,9 @@
 static gint on_time_entry_key_press		(GtkWidget	*widget,
 						 GdkEventKey	*event,
 						 EDateEdit	*dedit);
+static gint on_time_entry_key_release		(GtkWidget	*widget,
+						 GdkEventKey	*event,
+						 EDateEdit	*dedit);
 static gint on_date_entry_focus_out		(GtkEntry	*entry,
 						 GdkEventFocus  *event,
 						 EDateEdit	*dedit);
@@ -375,6 +378,10 @@
 			  "key_press_event",
 			  G_CALLBACK (on_time_entry_key_press),
 			  dedit);
+	g_signal_connect (GTK_COMBO (priv->time_combo)->entry,
+			  "key_release_event",
+			  G_CALLBACK (on_time_entry_key_release),
+			  dedit);
 	g_signal_connect_after (GTK_COMBO (priv->time_combo)->entry,
 				"focus_out_event",
 				G_CALLBACK (on_time_entry_focus_out),
@@ -1577,6 +1584,21 @@
 	return FALSE;
 }
 
+static gint
+on_time_entry_key_release		(GtkWidget	*widget,
+					 GdkEventKey	*event,
+					 EDateEdit	*dedit)
+{
+	if (event->keyval == GDK_Up || event->keyval == GDK_Down) {
+		g_signal_stop_emission_by_name (widget,
+						"key_release_event");
+		e_date_edit_check_time_changed (dedit);
+		return TRUE;
+	}
+
+	return FALSE;
+}
+
 
 static gint
 on_date_entry_focus_out			(GtkEntry	*entry,
