X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-dualscreen.c;h=740cb8e1241f6da4e6d4c906d22a1dcb1dddc501;hb=22fbb9654dd44689f89bbf7c957b42e489daa2ac;hp=3a0beaea8aac23f9e5e51bb592a569f25117650e;hpb=f2366d56fd604175c94a14a4e597984424c73dd6;p=evince.git diff --git a/shell/ev-dualscreen.c b/shell/ev-dualscreen.c index 3a0beaea..740cb8e1 100644 --- a/shell/ev-dualscreen.c +++ b/shell/ev-dualscreen.c @@ -27,6 +27,7 @@ #include "ev-dualscreen.h" #include "ev-window.h" #include "ev-view.h" +#include "ev-utils.h" struct _EvDSCWindowPrivate { GtkWidget *main_box; @@ -158,6 +159,7 @@ ev_dscwindow_get_control (void) return control; } + /*TODO: Fix me!*/ static void ev_dscwindow_window_placement (EvDSCWindow *ev_dscwindow) @@ -168,7 +170,7 @@ ev_dscwindow_window_placement (EvDSCWindow *ev_dscwindow) GdkScreen * screen = gtk_window_get_screen (presentation_window); gint work_monitor = gdk_screen_get_monitor_at_window (screen, - GTK_WIDGET (presentation_window)->window); + gtk_widget_get_window (GTK_WIDGET (presentation_window))); gint presentation_monitor = (work_monitor + 1) % 2; @@ -191,7 +193,7 @@ ev_dscwindow_window_placement (EvDSCWindow *ev_dscwindow) **/ void ev_dscwindow_set_presentation (EvDSCWindow *ev_dscwindow, - EvWindow *presentation_window) + EvWindow *presentation_window, EvDocument *document) { if (!EV_IS_WINDOW (presentation_window)) return; @@ -200,11 +202,11 @@ ev_dscwindow_set_presentation (EvDSCWindow *ev_dscwindow, ev_dscwindow->priv->presentation_document = document; ev_document_model_set_document(ev_dscwindow->priv->model, - presentation_window->priv->document); + document); /* ev_view_set_document (EV_VIEW (priv->notesview), - priv->presentation_document); - ev_dscwindow_window_placement (self); - ev_dscwindow_handle_resized (NULL, NULL, self); + priv->presentation_document);*/ + ev_dscwindow_window_placement (ev_dscwindow); + /*ev_dscwindow_handle_resized (NULL, NULL, self); */ } @@ -281,28 +283,21 @@ ev_dscwindow_init (EvDSCWindow *ev_dscwindow) gtk_box_pack_end (GTK_BOX (v), e, FALSE, TRUE, 0); gtk_paned_add1 (GTK_PANED (h), v); -/* - priv->notesview_scrolled_window = GTK_WIDGET (g_object_new ( + ev_dscwindow->priv->notesview_scrolled_window = GTK_WIDGET (g_object_new ( GTK_TYPE_SCROLLED_WINDOW, "shadow-type", GTK_SHADOW_IN, NULL)); - gtk_paned_add2 (GTK_PANED (h), priv->notesview_scrolled_window); - - priv->notesview = ev_view_new (); - g_object_ref (priv->notesview); - ev_view_set_screen_dpi (EV_VIEW (priv->notesview), - get_screen_dpi (GTK_WINDOW (self))); -+ gtk_container_add (GTK_CONTAINER (priv->notesview_scrolled_window), -+ priv->notesview); -+ -+ ev_view_set_continuous (EV_VIEW (priv->notesview), FALSE); -+ ev_view_set_dual_page (EV_VIEW (priv->notesview), FALSE); -+ ev_view_set_sizing_mode (EV_VIEW (priv->notesview), EV_SIZING_BEST_FIT); -+ } -+ -+ gtk_paned_set_position (GTK_PANED (h), 400); -+ gtk_widget_show_all (h); -+ gtk_container_add (GTK_CONTAINER (self), h); -+ -+ /* fallback if we have >2 monitors (see window placement) */ + gtk_paned_add2 (GTK_PANED (h), ev_dscwindow->priv->notesview_scrolled_window); + + ev_dscwindow->priv->notesview = ev_view_new (); + g_object_ref (ev_dscwindow->priv->notesview); + gtk_container_add (GTK_CONTAINER (ev_dscwindow->priv->notesview_scrolled_window), + ev_dscwindow->priv->notesview); + ev_view_set_model (EV_VIEW (ev_dscwindow->priv->notesview), ev_dscwindow->priv->model); + + gtk_paned_set_position (GTK_PANED (h), 400); + gtk_widget_show_all (h); + gtk_container_add (GTK_CONTAINER (ev_dscwindow), h); + +/* fallback if we have >2 monitors (see window placement) */ /*+ gtk_window_set_default_size (GTK_WINDOW (self), 800, 600); + + g_signal_connect (h, "notify::position",