From 65f2e3d2a3de395977fbd39af0baac0b61504ee5 Mon Sep 17 00:00:00 2001 From: Damon Chaplin Date: Tue, 17 Jul 2001 01:34:49 +0000 Subject: try to use builtin timezones before getting them from the server. When 2001-07-16 Damon Chaplin * gui/dialogs/task-page.c (task_page_fill_widgets): * gui/dialogs/event-page.c (event_page_fill_widgets): try to use builtin timezones before getting them from the server. When creating new events/tasks the timezones may not be on the server. * gui/dialogs/event-page.c (event_page_fill_widgets): for all-day events we subtract a day from the end date rather than add it. * gui/dialogs/e-timezone-dialog.c (on_map_leave): ignore the event if it isn't a GDK_CROSSING_NORMAL event. For some reason we are getting leave events when the button is pressed, which meant that selecting timezones in the map didn't work. * gui/dialogs/comp-editor-util.c (comp_editor_dates): * gui/print.c (print_date_label): only free icaltimetype if not NULL. svn path=/trunk/; revision=11144 --- calendar/gui/dialogs/e-timezone-dialog.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'calendar/gui/dialogs/e-timezone-dialog.c') diff --git a/calendar/gui/dialogs/e-timezone-dialog.c b/calendar/gui/dialogs/e-timezone-dialog.c index 70061addd6..0f7ba65404 100644 --- a/calendar/gui/dialogs/e-timezone-dialog.c +++ b/calendar/gui/dialogs/e-timezone-dialog.c @@ -399,6 +399,12 @@ on_map_leave (GtkWidget *widget, GdkEventCrossing *event, gpointer data) etd = E_TIMEZONE_DIALOG (data); priv = etd->priv; + /* We only want to reset the hover point and the preview text if this + is a normal leave event. For some reason we are getting leave events + when the button is pressed in the map, which causes problems. */ + if (event->mode != GDK_CROSSING_NORMAL) + return FALSE; + if (priv->point_hover && priv->point_hover != priv->point_selected) e_map_point_set_color_rgba (priv->map, priv->point_hover, E_TIMEZONE_DIALOG_MAP_POINT_NORMAL_RGBA); @@ -447,6 +453,7 @@ on_map_button_pressed (GtkWidget *w, GdkEventButton *event, gpointer data) ETimezoneDialog *etd; ETimezoneDialogPrivate *priv; double longitude, latitude; + char *location; etd = E_TIMEZONE_DIALOG (data); priv = etd->priv; @@ -467,8 +474,9 @@ on_map_button_pressed (GtkWidget *w, GdkEventButton *event, gpointer data) E_TIMEZONE_DIALOG_MAP_POINT_NORMAL_RGBA); priv->point_selected = priv->point_hover; + location = get_zone_from_point (etd, priv->point_selected); gtk_entry_set_text (GTK_ENTRY (GTK_COMBO (priv->timezone_combo)->entry), - get_zone_from_point (etd, priv->point_selected)); + location); g_free (priv->tzid); priv->tzid = NULL; -- cgit v1.2.3