diff options
author | Chenthill Palanisamy <pchen@src.gnome.org> | 2007-07-04 17:28:46 +0800 |
---|---|---|
committer | Chenthill Palanisamy <pchen@src.gnome.org> | 2007-07-04 17:28:46 +0800 |
commit | 62d49ee0b61aa9284704d38c35a3092c646e4d69 (patch) | |
tree | 160cbafcb0544600f1f3d82ec204e5f3d5ec0fa4 /calendar | |
parent | d0d4630a002e37e92d8c0fe3afe63db6fc7effe3 (diff) | |
download | gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.tar gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.tar.gz gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.tar.bz2 gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.tar.lz gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.tar.xz gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.tar.zst gsoc2013-evolution-62d49ee0b61aa9284704d38c35a3092c646e4d69.zip |
Fixes bug #328484.
svn path=/trunk/; revision=33755
Diffstat (limited to 'calendar')
-rw-r--r-- | calendar/ChangeLog | 10 | ||||
-rw-r--r-- | calendar/gui/calendar-component.c | 13 |
2 files changed, 23 insertions, 0 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 89ac0448f6..794865509b 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,13 @@ +2007-06-22 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #328484 + + * gui/calendar-component.c: (source_changed_cb): + New callback to refresh view after source changed. + * gui/calendar-component.c: (source_added_cb), + (source_removed_cb): Connecting and disconnecting + on change callback to source. + 2007-07-02 Milan Crha <mcrha@redhat.com> ** Fix for bug #445526 diff --git a/calendar/gui/calendar-component.c b/calendar/gui/calendar-component.c index 95d67c8efd..90dd8426f6 100644 --- a/calendar/gui/calendar-component.c +++ b/calendar/gui/calendar-component.c @@ -641,11 +641,23 @@ primary_source_selection_changed_cb (ESourceSelector *selector, CalendarComponen } static void +source_changed_cb (ESource *source, GnomeCalendar *calendar) +{ + if (calendar) { + GtkWidget *widget = gnome_calendar_get_current_view_widget (calendar); + + if (widget) + gtk_widget_queue_draw (widget); + } +} + +static void source_added_cb (GnomeCalendar *calendar, ECalSourceType source_type, ESource *source, CalendarComponentView *component_view) { switch (source_type) { case E_CAL_SOURCE_TYPE_EVENT: e_source_selector_select_source (E_SOURCE_SELECTOR (component_view->source_selector), source); + g_signal_connect (source, "changed", G_CALLBACK (source_changed_cb), calendar); break; default: break; @@ -657,6 +669,7 @@ source_removed_cb (GnomeCalendar *calendar, ECalSourceType source_type, ESource { switch (source_type) { case E_CAL_SOURCE_TYPE_EVENT: + g_signal_handlers_disconnect_by_func (source, G_CALLBACK (source_changed_cb), calendar); e_source_selector_unselect_source (E_SOURCE_SELECTOR (component_view->source_selector), source); break; default: |