+static void
+ev_sidebar_links_dispose (GObject *object)
+{
+ EvSidebarLinks *sidebar = EV_SIDEBAR_LINKS (object);
+
+ if (sidebar->priv->job) {
+ g_signal_handlers_disconnect_by_func (sidebar->priv->job,
+ job_finished_callback, sidebar);
+ ev_job_cancel (sidebar->priv->job);
+ g_object_unref (sidebar->priv->job);
+ sidebar->priv->job = NULL;
+ }
+
+ if (sidebar->priv->model) {
+ g_object_unref (sidebar->priv->model);
+ sidebar->priv->model = NULL;
+ }
+
+ if (sidebar->priv->document) {
+ g_object_unref (sidebar->priv->document);
+ sidebar->priv->document = NULL;
+ sidebar->priv->doc_model = NULL;
+ }
+
+ G_OBJECT_CLASS (ev_sidebar_links_parent_class)->dispose (object);
+}
+
+static void
+ev_sidebar_links_map (GtkWidget *widget)
+{
+ EvSidebarLinks *links;
+
+ links = EV_SIDEBAR_LINKS (widget);
+
+ GTK_WIDGET_CLASS (ev_sidebar_links_parent_class)->map (widget);
+
+ if (links->priv->model) {
+ ev_sidebar_links_set_current_page (links,
+ ev_document_model_get_page (links->priv->doc_model));
+ }
+}