diff options
author | Milan Crha <mcrha@redhat.com> | 2011-08-02 21:23:52 +0800 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2011-08-02 21:23:52 +0800 |
commit | 5da21ceee424eb238278bdec258b0c6d8725ae21 (patch) | |
tree | 7c934f3d5ef70c63289ac7232e2d457f1b457397 /calendar/gui/dialogs/recurrence-page.c | |
parent | 444011c99f83b1b3afde86862e7efe7fc348744d (diff) | |
download | gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.tar gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.tar.gz gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.tar.bz2 gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.tar.lz gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.tar.xz gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.tar.zst gsoc2013-evolution-5da21ceee424eb238278bdec258b0c6d8725ae21.zip |
Bug #655190 - Sluggish performance interacting with calendar/tasks
Diffstat (limited to 'calendar/gui/dialogs/recurrence-page.c')
-rw-r--r-- | calendar/gui/dialogs/recurrence-page.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/calendar/gui/dialogs/recurrence-page.c b/calendar/gui/dialogs/recurrence-page.c index bf8f1c191c..8e52250dfa 100644 --- a/calendar/gui/dialogs/recurrence-page.c +++ b/calendar/gui/dialogs/recurrence-page.c @@ -185,6 +185,8 @@ struct _RecurrencePagePrivate { /* This just holds some settings we need */ EMeetingStore *meeting_store; + + GCancellable *cancellable; }; @@ -266,7 +268,7 @@ preview_recur (RecurrencePage *rpage) fill_component (rpage, comp); tag_calendar_by_comp (E_CALENDAR (priv->preview_calendar), comp, - client, zone, TRUE, FALSE, FALSE); + client, zone, TRUE, FALSE, FALSE, priv->cancellable); g_object_unref (comp); } @@ -324,6 +326,12 @@ recurrence_page_dispose (GObject *object) priv->meeting_store = NULL; } + if (priv->cancellable) { + g_cancellable_cancel (priv->cancellable); + g_object_unref (priv->cancellable); + priv->cancellable = NULL; + } + /* Chain up to parent's dispose() method. */ G_OBJECT_CLASS (recurrence_page_parent_class)->dispose (object); } @@ -379,6 +387,8 @@ recurrence_page_init (RecurrencePage *rpage) { rpage->priv = G_TYPE_INSTANCE_GET_PRIVATE ( rpage, TYPE_RECURRENCE_PAGE, RecurrencePagePrivate); + + rpage->priv->cancellable = g_cancellable_new (); } /* get_widget handler for the recurrence page */ |