diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/addressbook/e-book-shell-view-private.c | 5 | ||||
-rw-r--r-- | modules/calendar/e-memo-shell-content.c | 5 | ||||
-rw-r--r-- | modules/calendar/e-task-shell-content.c | 5 |
3 files changed, 13 insertions, 2 deletions
diff --git a/modules/addressbook/e-book-shell-view-private.c b/modules/addressbook/e-book-shell-view-private.c index 4482383331..746a11c4e7 100644 --- a/modules/addressbook/e-book-shell-view-private.c +++ b/modules/addressbook/e-book-shell-view-private.c @@ -303,6 +303,11 @@ book_shell_view_activate_selected_source (EBookShellView *book_shell_view, E_ADDRESSBOOK_VIEW (widget)); view_instance = e_addressbook_view_get_view_instance (view); + + /* This must come after e_book_shell_content_set_current_view() + * because book_shell_view_notify_view_id_cb() relies on it. */ + gal_view_instance_load (view_instance); + view_id = gal_view_instance_get_current_view_id (view_instance); e_shell_view_set_view_id (shell_view, view_id); g_free (view_id); diff --git a/modules/calendar/e-memo-shell-content.c b/modules/calendar/e-memo-shell-content.c index 663920044c..cc17964f48 100644 --- a/modules/calendar/e-memo-shell-content.c +++ b/modules/calendar/e-memo-shell-content.c @@ -546,9 +546,12 @@ memo_shell_content_constructed (GObject *object) view_instance, "display-view", G_CALLBACK (memo_shell_content_display_view_cb), object); - gal_view_instance_load (view_instance); priv->view_instance = view_instance; + /* Do this last so e_memo_shell_content_get_view_instance() returns + * the correct instance in GalViewInstance::loaded signal handlers. */ + gal_view_instance_load (view_instance); + /* Restore pane positions from the last session once * the shell view is fully initialized and visible. */ g_signal_connect ( diff --git a/modules/calendar/e-task-shell-content.c b/modules/calendar/e-task-shell-content.c index bb2017fa8a..6b3f23eeb0 100644 --- a/modules/calendar/e-task-shell-content.c +++ b/modules/calendar/e-task-shell-content.c @@ -541,9 +541,12 @@ task_shell_content_constructed (GObject *object) view_instance, "display-view", G_CALLBACK (task_shell_content_display_view_cb), object); - gal_view_instance_load (view_instance); priv->view_instance = view_instance; + /* Do this last so e_task_shell_content_get_view_instance() returns + * the correct instance in GalViewInstance::loaded signal handlers. */ + gal_view_instance_load (view_instance); + /* Restore pane positions from the last session once * the shell view is fully initialized and visible. */ g_signal_connect ( |