Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/backend
Commit message (Collapse)AuthorAgeFilesLines
...
* Add I-Beam support to EvView. Now we can see where we can select! Sweet!Jonathan Blandford2005-07-012-3/+17
| | | | | | | | | | | | | | | | | | Fri Jul 1 00:10:15 2005 Jonathan Blandford <jrb@redhat.com> * backend/ev-selection.c: (ev_selection_get_selection_region), (ev_selection_get_selection_map): * backend/ev-selection.h: * pdf/ev-poppler.cc: * shell/ev-jobs.c: (ev_job_render_new), (ev_job_render_run): * shell/ev-jobs.h: * shell/ev-pixbuf-cache.c: (dispose_cache_job_info), (job_finished_cb), (copy_job_to_job_info), (add_job_if_needed), (ev_pixbuf_cache_get_text_mapping): * shell/ev-pixbuf-cache.h: * shell/ev-view.c: (location_in_text), (ev_view_motion_notify_event), (ev_view_set_cursor): Add I-Beam support to EvView. Now we can see where we can select! Sweet!
* Massive changes. We now support text selection of pdfs, and not justJonathan Blandford2005-06-307-17/+337
| | | | | | | | | | | | Thu Jun 30 01:43:00 2005 Jonathan Blandford <jrb@redhat.com> * shell/*: * backend/ev-render-context.[ch]: * backend/ev-selection.[ch]: Massive changes. We now support text selection of pdfs, and not just rectangular selection. This is pretty broken still, but I want to get something into CVS.
* Add a get_orientation api. Improve set_orientation.Marco Pesenti Gritti2005-06-162-1/+10
| | | | | | | | | | | | | | | | | | | | | 2005-06-16 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document.c: (ev_document_get_orientation): * backend/ev-document.h: * pdf/ev-poppler.cc: * ps/ps-document.c: (ps_document_get_orientation), (ps_document_set_orientation), (ps_document_document_iface_init): Add a get_orientation api. Improve set_orientation. * data/evince-ui.xml: * shell/ev-view.c: (ev_view_set_orientation), (ev_view_rotate_right), (ev_view_rotate_left): * shell/ev-view.h: * shell/ev-window.c: (ev_window_cmd_edit_rotate_left), (ev_window_cmd_edit_rotate_right): Better ui for changing document orientation
* Expand links when specified by the document. Depend on a poppler apiMarco Pesenti Gritti2005-06-151-0/+1
| | | | | | | | | | | | 2005-06-15 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-links.h: * pdf/ev-poppler.cc: * shell/ev-sidebar-links.c: (create_loading_model), (expand_open_links), (job_finished_callback): Expand links when specified by the document. Depend on a poppler api (defined out for now)
* Add orientation api. Currently poppler api is not optimal, we need to setMarco Pesenti Gritti2005-06-142-46/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-06-14 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document.c: (ev_document_set_orientation): * backend/ev-document.h: * pdf/ev-poppler.cc: Add orientation api. Currently poppler api is not optimal, we need to set orientation every time we _get a page * data/evince-ui.xml: * shell/ev-window.c: (ev_window_cmd_edit_landscape), (ev_window_cmd_edit_portrait), (ev_window_cmd_edit_flip): Add orientation menu items * shell/ev-page-cache.c: (ev_page_cache_clear): * shell/ev-page-cache.h: Add api to clear the cache * shell/ev-view.c: (setup_caches), (clear_caches), (ev_view_set_document), (ev_view_zoom_out), (ev_view_set_orientation): * shell/ev-view.h: Implement orientation changing
* Separate scan and fill so that we can incrementally fill from the mainMarco Pesenti Gritti2005-06-132-11/+31
| | | | | | | | | | | | | | | | | | | | | 2005-06-13 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-fonts.c: (ev_document_fonts_get_progress), (ev_document_fonts_scan), (ev_document_fonts_fill_model): * backend/ev-document-fonts.h: Separate scan and fill so that we can incrementally fill from the main thread. Add a progress api. * data/evince-properties.glade: * pdf/ev-poppler.cc: * shell/ev-jobs.c: (ev_job_fonts_new), (ev_job_fonts_run): * shell/ev-jobs.h: * shell/ev-properties.c: (update_progress_label), (job_fonts_finished_cb), (setup_fonts_view): Incrementally feel the list and show the progress percentage in a label like acrobat does.
* Make fonts model fill incrementally.Marco Pesenti Gritti2005-06-112-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-06-11 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-fonts.c: (ev_document_fonts_fill_model): * backend/ev-document-fonts.h: * pdf/ev-poppler.cc: Make fonts model fill incrementally. * shell/ev-job-queue.c: (handle_job), (search_for_jobs_unlocked), (no_jobs_available_unlocked), (ev_job_queue_init), (find_queue), (ev_job_queue_remove_job): * shell/ev-jobs.c: (ev_job_fonts_init), (ev_job_fonts_class_init), (ev_job_fonts_new), (ev_job_fonts_run): * shell/ev-jobs.h: New job for fonts scanning * shell/ev-properties.c: (job_fonts_finished_cb), (fill_fonts_treeview), (setup_fonts_view), (ev_properties_new): * shell/ev-properties.h: * shell/ev-window.c: (ev_window_cmd_file_properties): Incrementally feel the treeview using the new job. Show Loading... message until scanning is completed. Hopefully I didnt break the build without the poppler patch.
* s/GTime*/GTime. Not sure why we was using a pointer at all there!Marco Pesenti Gritti2005-06-101-2/+2
| | | | | | | | | | 2005-06-10 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-info.h: * shell/ev-properties.c: (ev_properties_new): s/GTime*/GTime. Not sure why we was using a pointer at all there!
* PageCache and EvJobs are moved from backend to shell. Two new jobs toNickolay V. Shmyrev2005-06-0711-1419/+0
| | | | | load document in background and a statusbar to display this process. FileChooser now can select multiple uris.
* Add an async renderer interface (method + callback) which is useful forMarco Pesenti Gritti2005-06-076-66/+355
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-06-07 Marco Pesenti Gritti <mpg@redhat.com> * backend/Makefile.am: * backend/ev-async-renderer.c: (ev_async_renderer_get_type), (ev_async_renderer_class_init), (ev_async_renderer_render_pixbuf): * backend/ev-async-renderer.h: Add an async renderer interface (method + callback) which is useful for backends like ps. * backend/ev-job-queue.c: (remove_job_from_async_queue), (add_job_to_async_queue), (job_finished_cb), (handle_job), (ev_job_queue_run_next), (ev_job_queue_init), (find_queue), (ev_job_queue_add_job), (move_job_async), (move_job), (ev_job_queue_update_job), (ev_job_queue_remove_job): Add queues for async renderer, these are executed on the main thread. * backend/ev-jobs.c: (ev_job_render_new), (render_finished_cb), (ev_job_render_run): * backend/ev-jobs.h: If the backend support async renderer interface use it. * ps/ps-document.c: (ps_document_init), (push_pixbuf), (setup_pixmap), (ps_document_get_type), (ps_async_renderer_render_pixbuf), (ps_document_document_iface_init), (ps_async_renderer_iface_init): Implement async renderer interface.
* Use a const to return title so that we dont double free it. Small cleanupMarco Pesenti Gritti2005-06-062-9/+5
| | | | | | | | | | | | | | 2005-06-06 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-page-cache.c: (_ev_page_cache_new): * backend/ev-page-cache.h: Use a const to return title so that we dont double free it. Small cleanup and fix a leak. * shell/ev-window.c: (update_window_title): strdup value from get_title.
* More compact EvView layout in documents with different page sizesNickolay V. Shmyrev2005-06-052-33/+86
|
* Implement fonts list. Defined out for now, since it depends on a not yetMarco Pesenti Gritti2005-06-043-0/+127
| | | | | | | | | | | | | | | | | 2005-06-04 Marco Pesenti Gritti <mpg@redhat.com> * backend/Makefile.am: * backend/ev-document-fonts.c: (ev_document_fonts_get_type), (ev_document_fonts_get_fonts_model): * backend/ev-document-fonts.h: * data/evince-properties.glade: * pdf/ev-poppler.cc: * shell/ev-properties.c: (setup_fonts_view), (ev_properties_new): * shell/ev-properties.h: * shell/ev-window.c: (ev_window_cmd_file_properties): Implement fonts list. Defined out for now, since it depends on a not yet committed poppler patch.
* Rework properties code to take only EvPropertyInfo in the constructor soMarco Pesenti Gritti2005-06-042-1/+6
| | | | | | | | | | | | | | | | | | | | | 2005-06-04 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-info.h: * backend/ev-document.c: (ev_document_info_free): * data/evince-properties.glade: * pdf/ev-poppler.cc: * ps/ps-document.c: (ps_document_get_info): * shell/ev-properties.c: (ev_properties_format_date), (set_property), (ev_properties_new): * shell/ev-properties.h: * shell/ev-window.c: (ev_window_cmd_file_properties): Rework properties code to take only EvPropertyInfo in the constructor so that it can be useful for nautilus plugin too. Deal with backends that doesnt support some properties. Make set property code generic.
* Initial go at file properties. Patch by Emil Soleyman-ZomalanMarco Pesenti Gritti2005-06-031-5/+13
| | | | | | | | | | | | | | | | 2005-06-03 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-info.h: * data/Makefile.am: * data/evince-ui.xml: * pdf/ev-poppler.cc: * shell/Makefile.am: * shell/ev-window.c: (update_action_sensitivity), (ev_window_cmd_file_properties): Initial go at file properties. Patch by Emil Soleyman-Zomalan <emil@soleyman.com>. Needs love see #169583
* Pages can be 0 x 0, dont assert on this caseMarco Pesenti Gritti2005-06-011-1/+1
| | | | | | | | | 2005-06-01 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-misc.c: (ev_document_misc_get_thumbnail_frame): Pages can be 0 x 0, dont assert on this case
* Set page action entry width depending on labels width. Fix for 305202Nickolay V. Shmyrev2005-05-312-7/+22
|
* Allow -1 as page value (error)Marco Pesenti Gritti2005-05-311-1/+1
| | | | | | | | 2005-05-31 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-link.c: (ev_link_class_init): Allow -1 as page value (error)
* modify the expose handling to get the shadows.Jonathan Blandford2005-05-294-0/+30
| | | | | | | | | | | | | | Sat May 28 07:38:03 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-view.c (draw_one_page): modify the expose handling to get the shadows. * shell/ev-window.c (update_action_sensitivity): Respect permissions field. Kowtow to the man. * pdf/ev-poppler.cc: Get the permissions field. * tiff/*c: Make a tiny bit more robust.
* Adapt to new poppler apiMarco Pesenti Gritti2005-05-182-4/+8
| | | | | | | | | | | | 2005-05-18 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-ps-exporter.c: (ev_ps_exporter_begin): * backend/ev-ps-exporter.h: * pdf/ev-poppler.cc: * ps/ps-document.c: (ps_document_ps_export_begin): * shell/ev-print-job.c: (idle_print_handler): Adapt to new poppler api
* Free the EvDocumentInfo.Jonathan Blandford2005-05-172-5/+22
| | | | | | | | | | | | | | | | Tue May 17 00:51:21 2005 Jonathan Blandford <jrb@redhat.com> * backend/ev-document-info.h: * backend/ev-document.c: (ev_document_info_free): Free the EvDocumentInfo. * shell/ev-sidebar-thumbnails.c: (ev_sidebar_thumbnails_dispose), (clear_range), (add_range), (update_visible_range), (adjustment_changed_cb), (ev_sidebar_thumbnails_init), (ev_sidebar_thumbnails_set_document): * shell/ev-window.c: (ev_window_setup_document): Only render the visible thumbnails. It takes an instant to render, but it uses much less memory.
* make page size calculation consistent and set it to (int)( width * scale +Jonathan Blandford2005-05-111-2/+2
| | | | | | | | | | | | Wed May 11 01:18:29 2005 Jonathan Blandford <jrb@redhat.com> * pdf/ev-poppler.cc: * backend/ev-page-cache.c: make page size calculation consistent and set it to (int)( width * scale + 0.5). This makes the weird line going through the middle of the page go away. * shell/ev-view.c: move painting the background page after checking the expose area covers us.
* Compare page labels even without has_labels set, fixes setting page withJuerg Billeter2005-05-091-1/+1
| | | | | | | | | 2005-05-07 Juerg Billeter <j@bitron.ch> * backend/ev-page-cache.c: (ev_page_cache_set_page_label): Compare page labels even without has_labels set, fixes setting page with entry
* Fix for 173185. Number of pages is simply "of ..." when there is noNickolay V. Shmyrev2005-04-282-4/+24
| | | | page labels
* Fix links for dual/continuous. Also, add a quick fix measuring of widths.Jonathan Blandford2005-04-241-0/+1
| | | | | | | | | | | | | | | Sun Apr 24 01:07:27 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-view.c: (find_page_at_location), (get_link_at_location), (ev_view_set_show_border), (ev_view_set_spacing), (ev_view_zoom_for_size_continuous_and_dual_page), (ev_view_zoom_for_size_continuous): Fix links for dual/continuous. Also, add a quick fix measuring of widths. Also, removed ev_view_set_spacing and ev_view_set_show_border. * shell/ev-window.c: (ev_window_unfullscreen), (ev_window_cmd_view_fullscreen): Don't adjust the border/spacing.
* Add Continuous and Dual page modes.Jonathan Blandford2005-04-232-21/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sat Apr 23 13:13:04 2005 Jonathan Blandford <jrb@redhat.com> * TODO: * backend/ev-page-cache.c: (_ev_page_cache_new), (ev_page_cache_get_max_width_size), (ev_page_cache_get_max_height_size): * backend/ev-page-cache.h: * data/evince-ui.xml: * shell/ev-pixbuf-cache.c: (ev_pixbuf_cache_init): * shell/ev-view.c: (view_update_adjustments), (view_update_range_and_current_page), (get_bounding_box_size), (ev_view_size_request_continuous_and_dual_page), (ev_view_size_request_continuous), (ev_view_size_request_dual_page), (ev_view_size_request_single_page), (ev_view_size_request), (ev_view_size_allocate), (get_page_extents), (draw_one_page), (ev_view_bin_expose), (ev_view_expose_event), (ev_view_set_property), (ev_view_get_property), (ev_view_class_init), (ev_view_init), (ev_view_new), (page_changed_cb), (ev_view_zoom), (ev_view_set_continuous), (ev_view_set_dual_page), (ev_view_set_full_screen), (ev_view_set_presentation), (ev_view_set_sizing_mode), (ev_view_can_zoom_in), (ev_view_can_zoom_out), (ev_view_zoom_in), (ev_view_zoom_out), (zoom_for_size_fit_width), (zoom_for_size_best_fit), (ev_view_zoom_for_size_continuous_and_dual_page), (ev_view_zoom_for_size_continuous), (ev_view_zoom_for_size_dual_page), (ev_view_zoom_for_size_single_page), (ev_view_set_zoom_for_size), (ev_view_show_cursor), (ev_sizing_mode_get_type): * shell/ev-view.h: * shell/ev-window.c: (update_action_sensitivity), (ev_window_cmd_continuous), (ev_window_cmd_dual), (ev_window_cmd_view_best_fit), (ev_window_cmd_view_page_width), (update_sizing_buttons), (ev_window_cmd_view_zoom_in), (ev_window_cmd_view_zoom_out), (update_view_size), (ev_window_set_sizing_mode), (ev_window_init): Add Continuous and Dual page modes.
* actually remove the job.Jonathan Blandford2005-04-224-10/+25
| | | | | | | | | | Thu Apr 21 23:37:52 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-pixbuf-cache.c (dispose_cache_job_info): actually remove the job. * backend/ev-document.h: Remove EV_DOC_MUTEX in favor of a locking function. This helps debugging.
* s/GDate */GDate so we can just use g_freeMarco Pesenti Gritti2005-04-191-1/+1
| | | | | | | | 2005-04-19 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-info.h: s/GDate */GDate so we can just use g_free
* Remove get_title from the interface, we can just use document infoMarco Pesenti Gritti2005-04-193-69/+44
| | | | | | | | | | | | | | | | 2005-04-19 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document.c: (ev_document_class_init), (ev_document_get_info), (ev_document_render_pixbuf): * backend/ev-document.h: * backend/ev-page-cache.c: (_ev_page_cache_new): * pdf/ev-poppler.cc: * pixbuf/pixbuf-document.c: (pixbuf_document_class_init), (pixbuf_document_get_info), (pixbuf_document_document_iface_init): * ps/ps-document.c: (ps_document_class_init), (document_load), (ps_document_get_info), (ps_document_document_iface_init): Remove get_title from the interface, we can just use document info
* *** empty log message ***Marco Pesenti Gritti2005-04-191-0/+94
|
* Initial support for document info. Based on jrb patch.Marco Pesenti Gritti2005-04-193-0/+23
| | | | | | | | | | | 2005-04-19 Marco Pesenti Gritti <mpg@redhat.com> * backend/Makefile.am: * backend/ev-document.c: (ev_document_render_get_info): * backend/ev-document.h: * pdf/ev-poppler.cc: Initial support for document info. Based on jrb patch.
* Set current page to 0 if document has pagesNickolay V. Shmyrev2005-04-161-0/+3
|
* Remove some assertions, documents can have 0 pages. Make initial currentMarco Pesenti Gritti2005-04-161-4/+1
| | | | | | | | | | | | | | | | | | | | 2005-04-16 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-page-cache.c: (ev_page_cache_init), (_ev_page_cache_new): Remove some assertions, documents can have 0 pages. Make initial current page -1. * shell/ev-page-action.c: (page_changed_cb): Show "" if current page is -1 * shell/ev-window.c: (update_action_sensitivity), (ev_window_setup_document): When document has 0 pages do not set the view and make nearly everything insensitive.
* Fix several page size caching bugsMarco Pesenti Gritti2005-04-151-5/+5
| | | | | | | | 2005-04-15 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-page-cache.c: (_ev_page_cache_new): Fix several page size caching bugs
* Fix the crash when trying to copy in backends that doesnt support it. WeMarco Pesenti Gritti2005-04-142-0/+10
| | | | | | | | | | | | | | | | | | | | | 2005-04-14 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document.h: * djvu/djvu-document.c: (djvu_document_can_get_text), (djvu_document_document_iface_init): * dvi/dvi-document.c: (dvi_document_can_get_text), (dvi_document_document_iface_init): * pdf/ev-poppler.cc: * pixbuf/pixbuf-document.c: (pixbuf_document_can_get_text), (pixbuf_document_document_iface_init): * ps/ps-document.c: (ps_document_can_get_text), (ps_document_document_iface_init): * shell/ev-view.c: (ev_view_copy), (ev_view_primary_get_cb): * shell/ev-window.c: (update_action_sensitivity): Fix the crash when trying to copy in backends that doesnt support it. We can implement a better solution once we do real text selection.
* Fix for bugs 300233,173184,300094. Problems with page index started at 0Nickolay V. Shmyrev2005-04-121-1/+1
| | | | and scrolling up with Shift + Space
* Actually fix the "FIXME: update priority" comment.Jonathan Blandford2005-04-092-10/+60
| | | | | | | | | Sat Apr 9 01:05:09 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-pixbuf-cache.c (move_one_job): Actually fix the "FIXME: update priority" comment. * backend/ev-job-queue.c: Give a way to change priority.
* Fix of by one errors.Kristian Høgsberg2005-04-061-1/+1
| | | | | | | | 2005-04-05 Kristian Høgsberg <krh@redhat.com> * backend/ev-page-cache.c (ev_page_cache_next_page): * shell/ev-window.c (ev_window_cmd_go_next_page) (ev_window_cmd_go_first_page): Fix of by one errors.
* Make searching work again.Kristian Høgsberg2005-04-056-108/+69
| | | | | | | | | | | | | | | | | | | 2005-04-04 Kristian Høgsberg <krh@redhat.com> Make searching work again. * backend/ev-document.c: * backend/ev-document.h: * backend/ev-document-find.c: * backend/ev-document-find.h: Change EvDocumentIface so we no longer store the current page or zoom level in the document. The consequence is that all calls that operate on the current page now instead take the page number as an extra argument, and all coordinates are now doubles in document coordinate system. * pdf/ev-poppler.cc: * pixbuf/pixbuf-document.c: * ps/ps-document.c: Update backends accordingly.
* Changed to use page labels now. Rewrote completely because I didn'tJonathan Blandford2005-04-012-0/+43
| | | | | | | | | | | Fri Apr 1 01:59:39 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-page-action.c: Changed to use page labels now. Rewrote completely because I didn't understand GtkActions. I should read Marco's code more carefully in the future. * backend/ev-page-cache.h (ev_page_cache_set_page_label): New function
* Cr 31 13:27:50 2005 Jonathan Blandford <jrb@redhat.com>Jonathan Blandford2005-03-314-1/+35
| | | | | | | | | | | | | | | | | | | | | | | Cr 31 13:27:50 2005 Jonathan Blandford <jrb@redhat.com> * backend/ev-document.c: (ev_document_get_page_label): * backend/ev-document.h: * backend/ev-page-cache.c: (_ev_page_cache_new), (ev_page_cache_get_page_label): * backend/ev-page-cache.h: * pdf/ev-poppler.cc: * shell/ev-sidebar-links.c: (ev_sidebar_links_construct), (links_page_num_func): * shell/ev-sidebar-thumbnails.c: (ev_sidebar_thumbnails_set_document): * shell/ev-view.c: (status_message_from_link), (ev_view_motion_notify_event): * shell/ev-window.c: (document_supports_sidebar): Add in page label support. It's not perfect yet, but it's the first 'feature' in a while. Also, fix a bogus comment noticed by crispin. VS: Modified Files:
* Remove pixbuf backend for nowJonathan Blandford2005-03-318-134/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thu Mar 31 01:21:58 2005 Jonathan Blandford <jrb@redhat.com> * Makefile.am: Remove pixbuf backend for now * configure.ac: Require poppler-glib instead of just poppler. * backend/ev-document-thumbnails.h: Add a comment * backend/ev-document.h: * backend/ev-document.c: (ev_document_class_init), (ev_document_load), (ev_document_get_link), (ev_document_get_links): Remove 3 methods and add get_links. Also, made 0 based. * backend/ev-jobs.c: (ev_job_render_new), (ev_job_render_run): * backend/ev-jobs.h: now EvJobRender can grab the links for a document. * backend/ev-link.c: (ev_link_set_title), (ev_link_mapping_free_foreach), (ev_link_mapping_free), (ev_link_mapping_find): * backend/ev-link.h: Allow NULL titles. Also, introduce a mapping link. * backend/ev-page-cache.c: (ev_page_cache_init), (_ev_page_cache_new), (ev_page_cache_set_current_page), (ev_page_cache_get_size), (ev_page_cache_next_page), (ev_page_cache_prev_page): Fix to be 0 based. * pdf/Makefile.am: * pdf/ev-poppler.h: * pdf/ev-poppler.cc: New backend. * ps/ps-document.c: (ps_document_init), (ps_document_set_page), (ps_document_get_page), (ps_document_document_iface_init): * shell/ev-pixbuf-cache.h: * shell/ev-pixbuf-cache.c: (ev_pixbuf_cache_init), (dispose_cache_job_info), (job_finished_cb), (move_one_job), (ev_pixbuf_cache_update_range), (copy_job_to_job_info), (add_job_if_needed), (ev_pixbuf_cache_set_page_range), (ev_pixbuf_cache_get_pixbuf), (ev_pixbuf_cache_get_link_mapping): Fix up code to grab a page cache per each doc. Also, fix to be 0 based. * shell/ev-sidebar-thumbnails.c: (ev_sidebar_tree_selection_changed), (page_changed_cb), (ev_sidebar_thumbnails_set_document): Fix to be 0 based. * shell/ev-view.c: (status_message_from_link), (find_page_at_location), (get_link_at_location), (ev_view_motion_notify_event), (ev_view_button_release_event), (ev_view_init): Use the new link code. Fix to be 0 based. * shell/ev-window.c: (update_action_sensitivity), (document_supports_sidebar): 0 based.
* merge evince-threads branchMarco Pesenti Gritti2005-03-2313-84/+1110
|
* Rework API a bit. Add a border flag and change sizing logic (now the sizeMarco Pesenti Gritti2005-03-072-5/+8
| | | | | | | | | | | | | | | | | | | | | 2005-03-07 Marco Pesenti Gritti <marco@gnome.org> * backend/ev-document-thumbnails.c: (ev_document_thumbnails_get_thumbnail): * backend/ev-document-thumbnails.h: Rework API a bit. Add a border flag and change sizing logic (now the size we specify applies to the bigger dimension). * pdf/pdf-document.cc: * pixbuf/pixbuf-document.c: (pixbuf_document_thumbnails_get_thumbnail): * shell/ev-sidebar-thumbnails.c: (do_one_iteration): * thumbnailer/evince-thumbnailer.c: (evince_thumbnail_pngenc_get): Adapt to the new API and do not draw a border for nautilus thumbnailer.
* Separate page/scale notificationsMarco Pesenti Gritti2005-02-242-9/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-02-24 Marco Pesenti Gritti <marco@gnome.org> * backend/ev-document.c: (ev_document_class_init), (ev_document_page_changed), (ev_document_scale_changed): * backend/ev-document.h: Separate page/scale notifications * pdf/xpdf/pdf-document.cc: Emit the new signals. Do not display the pdf page in _render, do it when scale/page are requested. * ps/ps-document.c: (ps_document_set_zoom), (ps_document_widget_event): * ps/ps-document.h: Emit the new signals. * shell/ev-view.c: (ev_view_size_request), (expose_bin_window), (ev_view_init), (page_changed_callback), (scale_changed_callback), (ev_view_set_document), (ev_view_zoom), (ev_view_zoom_in), (ev_view_zoom_out), (size_to_zoom_factor), (ev_view_set_size): * shell/ev-view.h: * shell/ev-window.c: (ev_window_cmd_view_normal_size), (ev_window_cmd_view_page_width), (size_allocate_cb), (ev_window_set_sizing_mode): Rework sizing to be pixel based. There are bugs but should be already way better.
* New function to canonicalize sizing/painting a border.Jonathan Blandford2005-02-162-28/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Feb 15 22:27:13 2005 Jonathan Blandford <jrb@redhat.com> * backend/ev-document-misc.h: * backend/ev-document-misc.c: (ev_document_misc_get_page_border_size), (ev_document_misc_paint_one_page): New function to canonicalize sizing/painting a border. * shell/Makefile.am: Remove ev-page-view.c entirely as it's not used. * pdf/xpdf/pdf-document.cc: use new function * shell/ev-view.c: (ev_view_size_request), (expose_bin_window), (ev_view_init), (ev_view_set_mode), (ev_view_zoom), (ev_view_best_fit), (ev_view_fit_width): * shell/ev-view.h: * shell/ev-window.c: (update_sizing_buttons), (ev_window_setup_document), (ev_window_cmd_view_zoom_in), (ev_window_cmd_view_zoom_out), (ev_window_cmd_view_best_fit), (ev_window_cmd_view_page_width), (size_allocate_cb), (ev_window_set_sizing_mode), (ev_window_init): make the "best fit" and "fit width" values act as toggle buttons so they stay toggled. It's not 100% perfect, and it's a little slow, but it's good enough to commit I think.
* Fix several bugs with findMarco Pesenti Gritti2005-02-042-2/+0
| | | | | | | | | | | | 2005-02-04 Marco Pesenti Gritti <marco@gnome.org> * backend/ev-document-find.c: (ev_document_find_changed): * backend/ev-document-find.h: * pdf/xpdf/pdf-document.cc: * shell/ev-view.c: (jump_to_find_result), (ev_view_set_document): * shell/ev-window.c: (find_bar_search_changed_cb): Fix several bugs with find
* New file with some random thoughts.Jonathan Blandford2005-02-024-1/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wed Feb 2 21:13:11 2005 Jonathan Blandford <jrb@redhat.com> * NOTES: New file with some random thoughts. * TODO: Update. * backend/ev-document-misc.c: (ev_document_misc_get_page_border_size): New function to canonicalize shadow drawing sizes. Possibly goofy. * shell/ev-view.c: (ev_view_size_request), (set_document_page), (ev_view_best_fit), (ev_view_fit_width): * pdf/xpdf/pdf-document.cc: * pixbuf/pixbuf-document.c: (pixbuf_document_get_page_size): * ps/ps-document.c: (ps_document_get_page_size): * backend/ev-document-misc.h: * backend/ev-document.c: (ev_document_get_page_size): * backend/ev-document.h: get_page_size now takes a page number parameter. Made all the backends/frontends honor it. * data/evince-ui.xml: Added a multiple-page mode. Uncomment to see. Doesn't work yet. * shell/Makefile.am: * shell/ev-page-view.[ch]: New multi-page view. Really rough. Doesn't do anything yet. * shell/ev-sidebar-thumbnails.c: (ev_sidebar_thumbnails_set_document): [1..n_pages] instead of [0..n_pages-1] * shell/ev-window.c: (update_action_sensitivity), (ev_window_setup_document), (ev_window_set_page_mode), (ev_window_page_mode_cb), (ev_window_init): Clean up the view-swapping code a bit so we can have multiple views on a document. Add the multi-page view, though it can't be turned on yet.
* Yay! find works now... Now to find bugs...Marco Pesenti Gritti2005-01-302-8/+5
| | | | | | | | | | 2005-01-30 Marco Pesenti Gritti <marco@gnome.org> * pdf/xpdf/pdf-document.cc: * shell/ev-view.c: (draw_rubberband), (highlight_find_results), (expose_bin_window), (find_changed_cb): Yay! find works now... Now to find bugs...
* More work on find implementation, mostly there nowMarco Pesenti Gritti2005-01-302-6/+9
| | | | | | | | | | | | | | | | | | 2005-01-30 Marco Pesenti Gritti <marco@gnome.org> * backend/ev-document-find.c: (ev_document_find_base_init), (ev_document_find_changed): * backend/ev-document-find.h: * pdf/xpdf/pdf-document.cc: * shell/ev-view.c: (draw_rubberband), (highlight_find_results), (expose_bin_window), (ev_view_init), (set_document_page), (ensure_rectangle_is_visible), (jump_to_find_result), (jump_to_find_page), (find_changed_cb), (ev_view_set_document), (ev_view_find_next), (ev_view_find_previous): * shell/ev-view.h: * shell/ev-window.c: (find_bar_previous_cb), (find_bar_next_cb): More work on find implementation, mostly there now