From c88cf19e86c626301af13c345a2e1fba3dedc06a Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Fri, 26 Apr 2019 15:20:47 -0300 Subject: [PATCH] week-header: Simplify set_date() --- src/views/gcal-week-header.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/views/gcal-week-header.c b/src/views/gcal-week-header.c index be73d734..04b79b4b 100644 --- a/src/views/gcal-week-header.c +++ b/src/views/gcal-week-header.c @@ -1905,33 +1905,29 @@ void gcal_week_header_set_date (GcalWeekHeader *self, GDateTime *date) { - GDateTime *old_date, *new_date; - - old_date = self->active_date; - new_date = g_date_time_ref (date); + gboolean had_date; /* * If the active date changed, but we're still in the same week, * there's no need to recalculate visible events. */ - if (old_date && new_date && - g_date_time_get_year (old_date) == g_date_time_get_year (new_date) && - g_date_time_get_week_of_year (old_date) == g_date_time_get_week_of_year (new_date)) + if (self->active_date && date && + g_date_time_get_year (self->active_date) == g_date_time_get_year (date) && + g_date_time_get_week_of_year (self->active_date) == g_date_time_get_week_of_year (date)) { - g_date_time_unref (new_date); return; } - self->active_date = new_date; + had_date = self->active_date != NULL; + + gcal_set_date_time (&self->active_date, date); update_title (self); gtk_widget_queue_draw (GTK_WIDGET (self)); - if (old_date) + if (had_date) update_unchanged_events (self, self->active_date); update_weather_infos (self); - - gcal_clear_date_time (&old_date); }