aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSuman Manjunath <msuman@src.gnome.org>2008-10-13 18:23:51 +0800
committerSuman Manjunath <msuman@src.gnome.org>2008-10-13 18:23:51 +0800
commit90a157c0109a85cd36908291dd8e4ace8a819701 (patch)
treeb0d45c797dbea6ff8b8873be08c53d03c6b8f3f2
parentfb6c4634cc504df1d52dd4363cfd4b9ac13db0e9 (diff)
downloadgsoc2013-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/ChangeLog10
-rw-r--r--calendar/gui/dialogs/calendar-setup.c3
-rw-r--r--calendar/gui/e-cal-popup.c32
-rw-r--r--calendar/gui/tasks-component.c2
-rw-r--r--plugins/mark-calendar-offline/ChangeLog8
-rw-r--r--plugins/mark-calendar-offline/mark-calendar-offline.c4
-rw-r--r--plugins/select-one-source/ChangeLog8
-rw-r--r--plugins/select-one-source/mark-calendar-offline.c4
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");
}