summaryrefslogtreecommitdiff
path: root/libview/ev-view.c
diff options
context:
space:
mode:
Diffstat (limited to 'libview/ev-view.c')
-rwxr-xr-x[-rw-r--r--]libview/ev-view.c41
1 files changed, 40 insertions, 1 deletions
diff --git a/libview/ev-view.c b/libview/ev-view.c
index 7bb56cae..c39137c1 100644..100755
--- a/libview/ev-view.c
+++ b/libview/ev-view.c
@@ -840,6 +840,7 @@ set_scroll_adjustment (EvView *view,
}
#if !GTK_CHECK_VERSION (3, 0, 0)
+void
ev_view_set_scroll_adjustments (GtkLayout *layout,
GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment)
@@ -2242,7 +2243,7 @@ ev_view_form_field_choice_changed (GtkWidget *widget,
{
EvFormFieldChoice *field_choice = EV_FORM_FIELD_CHOICE (field);
- if (GTK_IS_COMBO_BOX (widget)) {
+ if (gtk_combo_box_get_has_entry ( GTK_COMBO_BOX (widget))) {
gint item;
item = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
@@ -6568,3 +6569,41 @@ ev_view_previous_page (EvView *view)
}
}
+/**
+ * ev_view_disconnect_handlers
+ * @view: #EvView instance
+ *
+ * Disconnect all signal handlers from the model, to ensure error free operation of the webview,
+ * we have an equivalent function for the webview.
+ */
+void
+ev_view_disconnect_handlers(EvView *view)
+{
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_rotation_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_inverted_colors_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_sizing_mode_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_scale_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_continuous_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_dual_page_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_fullscreen_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_page_changed_cb),
+ view);
+ g_signal_handlers_disconnect_by_func(view->model,
+ G_CALLBACK (ev_view_document_changed_cb),
+ view);
+}