diff options
Diffstat (limited to 'calendar/gui/dialogs/task-page.c')
-rw-r--r-- | calendar/gui/dialogs/task-page.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/calendar/gui/dialogs/task-page.c b/calendar/gui/dialogs/task-page.c index dd2b3839cc..d60ca5ba5b 100644 --- a/calendar/gui/dialogs/task-page.c +++ b/calendar/gui/dialogs/task-page.c @@ -599,7 +599,10 @@ task_page_set_dates (CompEditorPage *page, CompEditorPageDates *dates) static gboolean get_widgets (TaskPage *tpage) { + CompEditorPage *page = COMP_EDITOR_PAGE (tpage); TaskPagePrivate *priv; + GSList *accel_groups; + GtkWidget *toplevel; priv = tpage->priv; @@ -609,6 +612,15 @@ get_widgets (TaskPage *tpage) if (!priv->main) return FALSE; + /* Get the GtkAccelGroup from the toplevel window, so we can install + it when the notebook page is mapped. */ + toplevel = gtk_widget_get_toplevel (priv->main); + accel_groups = gtk_accel_groups_from_object (GTK_OBJECT (toplevel)); + if (accel_groups) { + page->accel_group = accel_groups->data; + gtk_accel_group_ref (page->accel_group); + } + gtk_widget_ref (priv->main); gtk_widget_unparent (priv->main); |