diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ps/ps-document.c | 8 |
2 files changed, 11 insertions, 3 deletions
@@ -1,3 +1,9 @@ +2005-01-13 Marco Pesenti Gritti <marco@gnome.org> + + * ps/ps-document.c: (ps_document_goto_page): + + Fix page switching on multipage documents + 2005-01-12 Jeff Muizelaar <jrmuizel@nit.ca> * pixbuf/pixbuf-document.c: (pixbuf_document_get_page_size): diff --git a/ps/ps-document.c b/ps/ps-document.c index 3796f7d..3f19995 100644 --- a/ps/ps-document.c +++ b/ps/ps-document.c @@ -1434,7 +1434,7 @@ ps_document_get_page_count(PSDocument * gs) if(gs->structured_doc) return gs->doc->numpages; else - return 1; + return G_MAXINT; } else return 0; @@ -1454,8 +1454,6 @@ ps_document_goto_page(PSDocument * gs, gint page) if(page < 0) page = 0; - ps_document_set_page_size(gs, -1, page); - if(gs->structured_doc && gs->doc) { if(page >= gs->doc->numpages) page = gs->doc->numpages - 1; @@ -1472,6 +1470,8 @@ ps_document_goto_page(PSDocument * gs, gint page) gs->changed = TRUE; } + ps_document_set_page_size(gs, -1, page); + gs->changed = FALSE; if(is_interpreter_ready(gs)) { @@ -1498,6 +1498,8 @@ ps_document_goto_page(PSDocument * gs, gint page) if(page == gs->current_page && !gs->changed) return TRUE; + ps_document_set_page_size(gs, -1, page); + if(!is_interpreter_ready(gs)) ps_document_enable_interpreter(gs); |