]> www.fi.muni.cz Git - evince.git/blobdiff - libview/ev-view.c
[libview] Remove unused bin_window variable.
[evince.git] / libview / ev-view.c
index 4686560b6ff705ab21684fd856593d71f2ca7408..85cf501edb7d8cff505d096d55a02a0d47015e71 100644 (file)
@@ -4358,7 +4358,6 @@ draw_one_page (EvView       *view,
               GdkRectangle *expose_area,
               gboolean     *page_ready)
 {
-       GdkWindow   *bin_window;
        GdkRectangle overlap;
        GdkRectangle real_page_area;
        gint         current_page;
@@ -4378,7 +4377,6 @@ draw_one_page (EvView       *view,
        real_page_area.height -= (border->top + border->bottom);
        *page_ready = TRUE;
 
-       bin_window = gtk_layout_get_bin_window (GTK_LAYOUT (view));
        current_page = ev_document_model_get_page (view->model);
        inverted_colors = ev_document_model_get_inverted_colors (view->model);
        ev_document_misc_paint_one_page (cr,
@@ -4760,7 +4758,24 @@ job_finished_cb (EvPixbufCache  *pixbuf_cache,
                GdkWindow *bin_window;
 
                bin_window = gtk_layout_get_bin_window (GTK_LAYOUT (view));
+#if GTK_CHECK_VERSION(2, 90, 5)
                gdk_window_invalidate_region (bin_window, region, TRUE);
+#else
+       {
+               GdkRegion *gdk_region = gdk_region_new ();
+               guint      n_recs = cairo_region_num_rectangles (region);
+               guint      i;
+
+               for (i = 0; i < n_recs; i++) {
+                       cairo_rectangle_int_t rect;
+
+                       cairo_region_get_rectangle (region, i, &rect);
+                       gdk_region_union_with_rect (gdk_region, (GdkRectangle *)&rect);
+               }
+               gdk_window_invalidate_region (bin_window, gdk_region, TRUE);
+               gdk_region_destroy (gdk_region);
+       }
+#endif
        } else {
                gtk_widget_queue_draw (GTK_WIDGET (view));
        }
@@ -5914,7 +5929,24 @@ merge_selection_region (EvView *view,
                        cairo_region_translate (region,
                                           page_area.x + border.left - view->scroll_x,
                                           page_area.y + border.top - view->scroll_y);
+#if GTK_CHECK_VERSION(2, 90, 5)
                        gdk_window_invalidate_region (bin_window, region, TRUE);
+#else
+               {
+                       GdkRegion *gdk_region = gdk_region_new ();
+                       guint      n_recs = cairo_region_num_rectangles (region);
+                       guint      i;
+
+                       for (i = 0; i < n_recs; i++) {
+                               cairo_rectangle_int_t rect;
+
+                               cairo_region_get_rectangle (region, i, &rect);
+                               gdk_region_union_with_rect (gdk_region, (GdkRectangle *)&rect);
+                       }
+                       gdk_window_invalidate_region (bin_window, gdk_region, TRUE);
+                       gdk_region_destroy (gdk_region);
+               }
+#endif
                        cairo_region_destroy (region);
                }
        }