From ba6a2343869f6be82f44261f183cd6925659d5ee Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 27 Mar 2011 15:16:39 -0400 Subject: Restore lockdown integration. With lockdown settings available through GSettings, widgets can handle lockdown integration themselves without having to use EShellSettings. Also fixed a few places where printing or save-to-disk actions were either not properly wired up or not responding to lockdown settings, but much more work needs done. Attachments, for example, are not honoring the disable-save-to-disk setting at all. This too requires the recently-added gsettings-desktop-schemas dependency. --- modules/calendar/e-cal-shell-view-actions.c | 37 ++++++++++++++++++++--------- modules/calendar/e-cal-shell-view-memopad.c | 23 ++++++++++++------ modules/calendar/e-cal-shell-view-taskpad.c | 23 ++++++++++++------ modules/calendar/e-memo-shell-content.c | 1 - modules/calendar/e-task-shell-content.c | 1 - 5 files changed, 58 insertions(+), 27 deletions(-) (limited to 'modules/calendar') diff --git a/modules/calendar/e-cal-shell-view-actions.c b/modules/calendar/e-cal-shell-view-actions.c index 5e16b6db5b..ba72a41748 100644 --- a/modules/calendar/e-cal-shell-view-actions.c +++ b/modules/calendar/e-cal-shell-view-actions.c @@ -1467,13 +1467,6 @@ static GtkActionEntry calendar_entries[] = { NULL, /* XXX Add a tooltip! */ G_CALLBACK (action_event_reply_all_cb) }, - { "event-save-as", - GTK_STOCK_SAVE_AS, - N_("Save as iCalendar..."), - NULL, - NULL, /* XXX Add a tooltip! */ - G_CALLBACK (action_event_save_as_cb) }, - { "event-schedule", NULL, N_("_Schedule Meeting..."), @@ -1587,10 +1580,6 @@ static EPopupActionEntry calendar_popup_entries[] = { NULL, "event-reply-all" }, - { "event-popup-save-as", - NULL, - "event-save-as" }, - { "event-popup-schedule", NULL, "event-schedule" }, @@ -1741,6 +1730,23 @@ static EPopupActionEntry lockdown_printing_popup_entries[] = { "event-print" } }; +static GtkActionEntry lockdown_save_to_disk_entries[] = { + + { "event-save-as", + GTK_STOCK_SAVE_AS, + N_("Save as iCalendar..."), + NULL, + NULL, /* XXX Add a tooltip! */ + G_CALLBACK (action_event_save_as_cb) }, +}; + +static EPopupActionEntry lockdown_save_to_disk_popup_entries[] = { + + { "event-popup-save-as", + NULL, + "event-save-as" }, +}; + void e_cal_shell_view_actions_init (ECalShellView *cal_shell_view) { @@ -1790,6 +1796,15 @@ e_cal_shell_view_actions_init (ECalShellView *cal_shell_view) action_group, lockdown_printing_popup_entries, G_N_ELEMENTS (lockdown_printing_popup_entries)); + /* Lockdown Save-to-Disk Actions */ + action_group = ACTION_GROUP (LOCKDOWN_SAVE_TO_DISK); + gtk_action_group_add_actions ( + action_group, lockdown_save_to_disk_entries, + G_N_ELEMENTS (lockdown_save_to_disk_entries), cal_shell_view); + e_action_group_add_popup_actions ( + action_group, lockdown_save_to_disk_popup_entries, + G_N_ELEMENTS (lockdown_save_to_disk_popup_entries)); + /* Fine tuning. */ action = ACTION (CALENDAR_GO_TODAY); diff --git a/modules/calendar/e-cal-shell-view-memopad.c b/modules/calendar/e-cal-shell-view-memopad.c index c4b67a88f4..2f625df75b 100644 --- a/modules/calendar/e-cal-shell-view-memopad.c +++ b/modules/calendar/e-cal-shell-view-memopad.c @@ -272,13 +272,6 @@ static GtkActionEntry calendar_memopad_entries[] = { NULL, NULL, /* XXX Add a tooltip! */ G_CALLBACK (action_calendar_memopad_open_url_cb) }, - - { "calendar-memopad-save-as", - GTK_STOCK_SAVE_AS, - N_("Save as iCalendar..."), - NULL, - NULL, /* XXX Add a tooltip! */ - G_CALLBACK (action_calendar_memopad_save_as_cb) } }; static GtkActionEntry lockdown_printing_entries[] = { @@ -291,6 +284,16 @@ static GtkActionEntry lockdown_printing_entries[] = { G_CALLBACK (action_calendar_memopad_print_cb) } }; +static GtkActionEntry lockdown_save_to_disk_entries[] = { + + { "calendar-memopad-save-as", + GTK_STOCK_SAVE_AS, + N_("Save as iCalendar..."), + NULL, + NULL, /* XXX Add a tooltip! */ + G_CALLBACK (action_calendar_memopad_save_as_cb) } +}; + void e_cal_shell_view_memopad_actions_init (ECalShellView *cal_shell_view) { @@ -312,6 +315,12 @@ e_cal_shell_view_memopad_actions_init (ECalShellView *cal_shell_view) gtk_action_group_add_actions ( action_group, lockdown_printing_entries, G_N_ELEMENTS (lockdown_printing_entries), cal_shell_view); + + /* Lockdown Save-to-Disk Actions */ + action_group = ACTION_GROUP (LOCKDOWN_SAVE_TO_DISK); + gtk_action_group_add_actions ( + action_group, lockdown_save_to_disk_entries, + G_N_ELEMENTS (lockdown_save_to_disk_entries), cal_shell_view); } void diff --git a/modules/calendar/e-cal-shell-view-taskpad.c b/modules/calendar/e-cal-shell-view-taskpad.c index ead28ae351..8afff2c767 100644 --- a/modules/calendar/e-cal-shell-view-taskpad.c +++ b/modules/calendar/e-cal-shell-view-taskpad.c @@ -359,13 +359,6 @@ static GtkActionEntry calendar_taskpad_entries[] = { NULL, NULL, /* XXX Add a tooltip! */ G_CALLBACK (action_calendar_taskpad_open_url_cb) }, - - { "calendar-taskpad-save-as", - GTK_STOCK_SAVE_AS, - N_("_Save as iCalendar..."), - NULL, - NULL, /* XXX Add a tooltip! */ - G_CALLBACK (action_calendar_taskpad_save_as_cb) } }; static GtkActionEntry lockdown_printing_entries[] = { @@ -378,6 +371,16 @@ static GtkActionEntry lockdown_printing_entries[] = { G_CALLBACK (action_calendar_taskpad_print_cb) } }; +static GtkActionEntry lockdown_save_to_disk_entries[] = { + + { "calendar-taskpad-save-as", + GTK_STOCK_SAVE_AS, + N_("_Save as iCalendar..."), + NULL, + NULL, /* XXX Add a tooltip! */ + G_CALLBACK (action_calendar_taskpad_save_as_cb) } +}; + void e_cal_shell_view_taskpad_actions_init (ECalShellView *cal_shell_view) { @@ -399,6 +402,12 @@ e_cal_shell_view_taskpad_actions_init (ECalShellView *cal_shell_view) gtk_action_group_add_actions ( action_group, lockdown_printing_entries, G_N_ELEMENTS (lockdown_printing_entries), cal_shell_view); + + /* Lockdown Save-to-Disk Actions */ + action_group = ACTION_GROUP (LOCKDOWN_SAVE_TO_DISK); + gtk_action_group_add_actions ( + action_group, lockdown_save_to_disk_entries, + G_N_ELEMENTS (lockdown_save_to_disk_entries), cal_shell_view); } void diff --git a/modules/calendar/e-memo-shell-content.c b/modules/calendar/e-memo-shell-content.c index bbf12de7db..9e280e36ff 100644 --- a/modules/calendar/e-memo-shell-content.c +++ b/modules/calendar/e-memo-shell-content.c @@ -473,7 +473,6 @@ memo_shell_content_constructed (GObject *object) container = priv->paned; widget = e_cal_component_preview_new (); - e_shell_configure_web_view (shell, E_WEB_VIEW (widget)); gtk_widget_show (widget); g_signal_connect_swapped ( diff --git a/modules/calendar/e-task-shell-content.c b/modules/calendar/e-task-shell-content.c index f2d10e4a4d..dbfa5fb7fc 100644 --- a/modules/calendar/e-task-shell-content.c +++ b/modules/calendar/e-task-shell-content.c @@ -469,7 +469,6 @@ task_shell_content_constructed (GObject *object) container = priv->paned; widget = e_cal_component_preview_new (); - e_shell_configure_web_view (shell, E_WEB_VIEW (widget)); gtk_widget_show (widget); g_signal_connect_swapped ( -- cgit v1.2.3