window: updated update_active_date() for week-view
Added the code required to update_active_date for week-view.
This commit is contained in:
committed by
Georges Basile Stavracas Neto
parent
028eb7b994
commit
d31f20ed72
@@ -365,6 +365,7 @@ update_active_date (GcalWindow *window,
|
|||||||
GDateTime *date_start, *date_end;
|
GDateTime *date_start, *date_end;
|
||||||
time_t range_start, range_end;
|
time_t range_start, range_end;
|
||||||
icaltimetype *previous_date;
|
icaltimetype *previous_date;
|
||||||
|
GDate old_week, new_week;
|
||||||
|
|
||||||
previous_date = window->active_date;
|
previous_date = window->active_date;
|
||||||
window->active_date = new_date;
|
window->active_date = new_date;
|
||||||
@@ -400,6 +401,26 @@ update_active_date (GcalWindow *window,
|
|||||||
g_clear_pointer (&date_end, g_date_time_unref);
|
g_clear_pointer (&date_end, g_date_time_unref);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* week_view */
|
||||||
|
g_date_set_dmy (&old_week, previous_date->day, previous_date->month, previous_date->year);
|
||||||
|
g_date_set_dmy (&new_week, new_date->day, new_date->month, new_date->year);
|
||||||
|
|
||||||
|
if (previous_date->year != new_date->year ||
|
||||||
|
g_date_get_iso8601_week_of_year (&old_week) != g_date_get_iso8601_week_of_year(&new_week))
|
||||||
|
{
|
||||||
|
date_start = g_date_time_new_local (new_date->year, new_date->month, new_date->day, 0, 0, 0);
|
||||||
|
date_start = g_date_time_add_days (date_start, (get_first_weekday() - g_date_time_get_day_of_week (date_start) + 7) % 7 - 8);
|
||||||
|
range_start = g_date_time_to_unix (date_start);
|
||||||
|
|
||||||
|
date_end = g_date_time_add_days (date_start, 6);
|
||||||
|
range_end = g_date_time_to_unix (date_end);
|
||||||
|
|
||||||
|
gcal_manager_set_subscriber (window->manager, E_CAL_DATA_MODEL_SUBSCRIBER (window->week_view), range_start, range_end);
|
||||||
|
|
||||||
|
g_clear_pointer (&date_start, g_date_time_unref);
|
||||||
|
g_clear_pointer (&date_end, g_date_time_unref);
|
||||||
|
}
|
||||||
|
|
||||||
update_today_button_sensitive (window);
|
update_today_button_sensitive (window);
|
||||||
|
|
||||||
g_free (previous_date);
|
g_free (previous_date);
|
||||||
|
|||||||
Reference in New Issue
Block a user