calendar-monitor: Don't remove events unnecessarily
Apparently I never properly implemented range comparison in remove_events_outside_range(). Do so now. This makes the infinite scrolling month view stop flickering events when changing weeks.
This commit is contained in:
@@ -967,6 +967,11 @@ remove_events_outside_range (GcalCalendarMonitor *self,
|
||||
g_hash_table_iter_init (&iter, self->shared.events);
|
||||
while (g_hash_table_iter_next (&iter, NULL, (gpointer*) &event))
|
||||
{
|
||||
GcalRange *event_range = gcal_event_get_range (event);
|
||||
|
||||
if (gcal_range_calculate_overlap (range, event_range, NULL) != GCAL_RANGE_NO_OVERLAP)
|
||||
continue;
|
||||
|
||||
g_object_ref (event);
|
||||
|
||||
g_hash_table_iter_remove (&iter);
|
||||
|
||||
Reference in New Issue
Block a user