diff options
author | Suman Manjunath <msuman@src.gnome.org> | 2008-10-13 18:23:51 +0800 |
---|---|---|
committer | Suman Manjunath <msuman@src.gnome.org> | 2008-10-13 18:23:51 +0800 |
commit | 90a157c0109a85cd36908291dd8e4ace8a819701 (patch) | |
tree | b0d45c797dbea6ff8b8873be08c53d03c6b8f3f2 | |
parent | fb6c4634cc504df1d52dd4363cfd4b9ac13db0e9 (diff) | |
download | gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.tar gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.tar.gz gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.tar.bz2 gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.tar.lz gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.tar.xz gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.tar.zst gsoc2013-evolution-90a157c0109a85cd36908291dd8e4ace8a819701.zip |
Fix for bug #424818 (bugzilla.novell.com) - Use the correct properties while setting/deciding offline availability of calendars.
svn path=/branches/gnome-2-24/; revision=36609
-rw-r--r-- | calendar/ChangeLog | 10 | ||||
-rw-r--r-- | calendar/gui/dialogs/calendar-setup.c | 3 | ||||
-rw-r--r-- | calendar/gui/e-cal-popup.c | 32 | ||||
-rw-r--r-- | calendar/gui/tasks-component.c | 2 | ||||
-rw-r--r-- | plugins/mark-calendar-offline/ChangeLog | 8 | ||||
-rw-r--r-- | plugins/mark-calendar-offline/mark-calendar-offline.c | 4 | ||||
-rw-r--r-- | plugins/select-one-source/ChangeLog | 8 | ||||
-rw-r--r-- | plugins/select-one-source/mark-calendar-offline.c | 4 |
8 files changed, 44 insertions, 27 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index d2f3945f2f..6e3b860828 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,13 @@ +2008-10-13 Suman Manjunath <msuman@novell.com> + + ** Fix for bug #424818 (bugzilla.novell.com) + + * gui/dialogs/calendar-setup.c (eccp_general_offline): Don't show offline + availability option for B&A calendars. + * gui/e-cal-popup.c (e_cal_popup_target_new_source): Check for the correct + property ("offline_sync" instead of "offline") while setting the GUI mask. + * gui/tasks-component.c (ensure_sources): Fixed a minor typo. + 2008-10-09 Matthew Barnes <mbarnes@redhat.com> ** Fixes part of bug #555494 diff --git a/calendar/gui/dialogs/calendar-setup.c b/calendar/gui/dialogs/calendar-setup.c index f7ab2ee846..724206a072 100644 --- a/calendar/gui/dialogs/calendar-setup.c +++ b/calendar/gui/dialogs/calendar-setup.c @@ -259,7 +259,8 @@ eccp_general_offline (EConfig *ec, EConfigItem *item, struct _GtkWidget *parent, GtkWidget *offline_setting = NULL; const char *offline_sync; int row; - gboolean is_local = g_str_has_prefix (e_source_group_peek_base_uri (sdialog->source_group), "file:"); + const char *base_uri = e_source_group_peek_base_uri (sdialog->source_group); + gboolean is_local = base_uri && (g_str_has_prefix (base_uri, "file://") || g_str_has_prefix (base_uri, "contacts://")); offline_sync = e_source_get_property (sdialog->source, "offline_sync"); if (old) return old; diff --git a/calendar/gui/e-cal-popup.c b/calendar/gui/e-cal-popup.c index e4fbe54b4e..73eb14cd30 100644 --- a/calendar/gui/e-cal-popup.c +++ b/calendar/gui/e-cal-popup.c @@ -695,7 +695,7 @@ e_cal_popup_target_new_source(ECalPopup *eabp, ESourceSelector *selector) { ECalPopupTargetSource *t = e_popup_target_new(&eabp->popup, E_CAL_POPUP_TARGET_SOURCE, sizeof(*t)); guint32 mask = ~0; - const char *source_uri; + const char *relative_uri; char *uri; ESource *source; const char *offline = NULL; @@ -712,42 +712,32 @@ e_cal_popup_target_new_source(ECalPopup *eabp, ESourceSelector *selector) mask &= ~E_CAL_POPUP_SOURCE_PRIMARY; /* FIXME Gross hack, should have a property or something */ - source_uri = e_source_peek_relative_uri(source); - if (source_uri && !strcmp("system", source_uri)) + relative_uri = e_source_peek_relative_uri(source); + if (relative_uri && !strcmp("system", relative_uri)) mask &= ~E_CAL_POPUP_SOURCE_SYSTEM; else mask &= ~E_CAL_POPUP_SOURCE_USER; - source = e_source_selector_peek_primary_selection (selector); uri = e_source_get_uri (source); if (!uri || (g_ascii_strncasecmp (uri, "file://", 7) && g_ascii_strncasecmp (uri, "contacts://", 11))) { /* check for e_target_selector's offline_status property here */ - offline = e_source_get_property (source, "offline"); - - if (offline && strcmp (offline,"1") == 0) { - /* set the menu item to Mark Offline - */ - mask &= ~E_CAL_POPUP_SOURCE_NO_OFFLINE; - } else { + offline = e_source_get_property (source, "offline_sync"); + if (offline && strcmp (offline, "1") == 0) + mask &= ~E_CAL_POPUP_SOURCE_NO_OFFLINE; /* set the menu item to Mark Offline */ + else mask &= ~E_CAL_POPUP_SOURCE_OFFLINE; - } } else { mask |= E_CAL_POPUP_SOURCE_NO_OFFLINE; mask |= E_CAL_POPUP_SOURCE_OFFLINE; } g_free (uri); - source = e_source_selector_peek_primary_selection (selector); - /*check for delete_status property here*/ + /* check for delete_status property here */ delete = e_source_get_property (source, "delete"); - - if (delete && strcmp (delete,"no") == 0) { - /*set the menu item to non deletable */ - mask &= ~E_CAL_POPUP_SOURCE_NO_DELETE; - } - else { + if (delete && strcmp (delete, "no") == 0) + mask &= ~E_CAL_POPUP_SOURCE_NO_DELETE; /* set the menu item to non deletable */ + else mask &= ~E_CAL_POPUP_SOURCE_DELETE; - } - t->target.mask = mask; diff --git a/calendar/gui/tasks-component.c b/calendar/gui/tasks-component.c index 519d910987..8719037f80 100644 --- a/calendar/gui/tasks-component.c +++ b/calendar/gui/tasks-component.c @@ -134,7 +134,7 @@ ensure_sources (TasksComponent *component) personal_source = NULL; if (!e_cal_get_sources (&source_list, E_CAL_SOURCE_TYPE_TODO, NULL)) { - g_warning ("Could not get addressbook source list from GConf!"); + g_warning ("Could not get task source list from GConf!"); return; } diff --git a/plugins/mark-calendar-offline/ChangeLog b/plugins/mark-calendar-offline/ChangeLog index a57222d5a6..a80b0b30f5 100644 --- a/plugins/mark-calendar-offline/ChangeLog +++ b/plugins/mark-calendar-offline/ChangeLog @@ -1,3 +1,11 @@ +2008-10-13 Suman Manjunath <msuman@novell.com> + + ** Fix for bug #424818 (bugzilla.novell.com) + + * mark-calendar-offline.c (org_gnome_mark_no_offline), + (org_gnome_mark_offline): Set the correct property for + offline calendar availability. + 2008-09-12 Sankar P <psankar@novell.com> License Changes diff --git a/plugins/mark-calendar-offline/mark-calendar-offline.c b/plugins/mark-calendar-offline/mark-calendar-offline.c index 68bd3f445b..80595593f5 100644 --- a/plugins/mark-calendar-offline/mark-calendar-offline.c +++ b/plugins/mark-calendar-offline/mark-calendar-offline.c @@ -41,7 +41,7 @@ org_gnome_mark_no_offline (EPlugin *ep, ECalPopupTargetSource *target) ESource *source; source = e_source_selector_peek_primary_selection (target->selector); - e_source_set_property (source, "offline", "0"); + e_source_set_property (source, "offline_sync", "0"); } void @@ -50,6 +50,6 @@ org_gnome_mark_offline (EPlugin *ep, ECalPopupTargetSource *target) ESource *source; source = e_source_selector_peek_primary_selection (target->selector); - e_source_set_property (source, "offline", "1"); + e_source_set_property (source, "offline_sync", "1"); } diff --git a/plugins/select-one-source/ChangeLog b/plugins/select-one-source/ChangeLog index de715176df..54f4d5c438 100644 --- a/plugins/select-one-source/ChangeLog +++ b/plugins/select-one-source/ChangeLog @@ -1,3 +1,11 @@ +2008-10-13 Suman Manjunath <msuman@novell.com> + + ** Fix for bug #424818 (bugzilla.novell.com) + + * mark-calendar-offline.c (org_gnome_mark_calendar_no_offline), + (org_gnome_mark_calendar_offline): Set the correct property for + offline calendar availability. + 2008-08-27 Sankar P <psankar@novell.com> License Changes diff --git a/plugins/select-one-source/mark-calendar-offline.c b/plugins/select-one-source/mark-calendar-offline.c index 3ef3330f60..a87e7f59b4 100644 --- a/plugins/select-one-source/mark-calendar-offline.c +++ b/plugins/select-one-source/mark-calendar-offline.c @@ -42,7 +42,7 @@ org_gnome_mark_calendar_no_offline (EPlugin *ep, ECalPopupTargetSource *target) ESource *source; source = e_source_selector_peek_primary_selection (target->selector); - e_source_set_property (source, "offline", "0"); + e_source_set_property (source, "offline_sync", "0"); } void @@ -51,6 +51,6 @@ org_gnome_mark_calendar_offline (EPlugin *ep, ECalPopupTargetSource *target) ESource *source; source = e_source_selector_peek_primary_selection (target->selector); - e_source_set_property (source, "offline", "1"); + e_source_set_property (source, "offline_sync", "1"); } |