From fef2ee9eb19800b5a2bb4e7e0c97d90e84edd9af Mon Sep 17 00:00:00 2001 From: "Nickolay V. Shmyrev" <nshmyrev@src.gnome.org> Date: Mon, 17 Oct 2005 21:23:06 +0000 Subject: [PATCH] Thumnail dimensions unified with other backends. * pdf/ev-poppler.cc: Thumnail dimensions unified with other backends. * shell/ev-window-title.c: (ev_window_title_update): Fix warning. --- ChangeLog | 10 ++++++++++ pdf/ev-poppler.cc | 41 ++++++++++++++--------------------------- shell/ev-window-title.c | 2 +- 3 files changed, 25 insertions(+), 28 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5e0dfe90..ac6f7161 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2005-10-18 Nickolay V. Shmyrev <nshmyrev@yandex.ru> + + * pdf/ev-poppler.cc: + + Thumnail dimensions unified with other backends. + + * shell/ev-window-title.c: (ev_window_title_update): + + Fix warning. + 2005-10-17 Nickolay V. Shmyrev <nshmyrev@yandex.ru> * data/ev-stock-zoom-fit-width.png: diff --git a/pdf/ev-poppler.cc b/pdf/ev-poppler.cc index 6e1d2d16..417e1aed 100644 --- a/pdf/ev-poppler.cc +++ b/pdf/ev-poppler.cc @@ -886,11 +886,10 @@ static GdkPixbuf * make_thumbnail_for_size (PdfDocument *pdf_document, gint page, int rotation, - gint size, - gboolean border) + gint size) { PopplerPage *poppler_page; - GdkPixbuf *pixbuf, *border_pixbuf; + GdkPixbuf *pixbuf; int width, height; double scale; gdouble unscaled_width, unscaled_height; @@ -919,11 +918,6 @@ make_thumbnail_for_size (PdfDocument *pdf_document, width, height, scale, rotation, pixbuf); - if (border) { - border_pixbuf = ev_document_misc_get_thumbnail_frame (-1, -1, rotation, pixbuf); - g_object_unref (pixbuf); - pixbuf = border_pixbuf; - } g_object_unref (poppler_page); @@ -935,11 +929,12 @@ pdf_document_thumbnails_get_thumbnail (EvDocumentThumbnails *document_thumbnails gint page, gint rotation, gint size, - gboolean border) + gboolean border) { PdfDocument *pdf_document; PopplerPage *poppler_page; GdkPixbuf *pixbuf; + GdkPixbuf *border_pixbuf; pdf_document = PDF_DOCUMENT (document_thumbnails); @@ -948,20 +943,17 @@ pdf_document_thumbnails_get_thumbnail (EvDocumentThumbnails *document_thumbnails pixbuf = poppler_page_get_thumbnail (poppler_page); - if (pixbuf != NULL) { - /* The document provides its own thumbnails. */ - if (border) { - GdkPixbuf *real_pixbuf; - - real_pixbuf = ev_document_misc_get_thumbnail_frame (-1, -1, rotation, pixbuf); - g_object_unref (pixbuf); - pixbuf = real_pixbuf; - } - } else { + if (pixbuf == NULL) { /* There is no provided thumbnail. We need to make one. */ - pixbuf = make_thumbnail_for_size (pdf_document, page, rotation, size, border); + pixbuf = make_thumbnail_for_size (pdf_document, page, rotation, size); } + if (border) { + border_pixbuf = ev_document_misc_get_thumbnail_frame (-1, -1, rotation, pixbuf); + g_object_unref (pixbuf); + pixbuf = border_pixbuf; + } + g_object_unref (poppler_page); return pixbuf; @@ -991,13 +983,8 @@ pdf_document_thumbnails_get_dimensions (EvDocumentThumbnails *document_thumbnail double page_width, page_height; poppler_page_get_size (poppler_page, &page_width, &page_height); - if (page_width > page_height) { - *width = size; - *height = (int) (size * page_height / page_width); - } else { - *width = (int) (size * page_width / page_height); - *height = size; - } + *width = size; + *height = (int) (size * page_height / page_width); } g_object_unref (poppler_page); } diff --git a/shell/ev-window-title.c b/shell/ev-window-title.c index 45e10ae7..64508e00 100644 --- a/shell/ev-window-title.c +++ b/shell/ev-window-title.c @@ -117,7 +117,7 @@ ev_window_title_update (EvWindowTitle *window_title) } } - if (title) { + if (title && window_title->uri) { ev_window_title_sanitize_extension (window_title, &title); } else { if (window_title->uri) { -- 2.43.5