Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell/ev-pixbuf-cache.c
Commit message (Collapse)AuthorAgeFilesLines
* Too early for 0.5. Pixbuf cache code cleaned a bit.Nickolay V. Shmyrev2005-11-161-46/+30
| | | | | | | | | | | * shell/ev-pixbuf-cache.c: (dispose_cache_job_info), (job_finished_cb), (copy_job_to_job_info), (add_job_if_needed), (new_selection_pixbuf_needed), (ev_pixbuf_cache_get_selection_pixbuf), (update_job_selection), (clear_job_selection): * shell/ev-view.c: (draw_one_page): Too early for 0.5. Pixbuf cache code cleaned a bit.
* Plug some memory leaksHiroyuki Ikezoe2005-08-311-0/+4
| | | | | | | | | 2005-08-31 Hiroyuki Ikezoe <poincare@ikezoe.net> * shell/ev-pixbuf-cache.c: (dispose_cache_job_info): * shell/ev-window.c: (ev_window_print_range), (ev_window_dispose): Plug some memory leaks
* Change selection color on focus in and focus out events. Also, poppler nowKristian Høgsberg2005-08-061-19/+16
| | | | | | | | | | | | | | | | | | 2005-08-06 Kristian Høgsberg <krh@redhat.com> * backend/ev-selection.c: (ev_selection_render_selection): * backend/ev-selection.h: * pdf/ev-poppler.cc: * shell/ev-jobs.c: (ev_job_render_new): * shell/ev-jobs.h: * shell/ev-pixbuf-cache.c: (get_selection_colors), (add_job_if_needed), (ev_pixbuf_cache_get_selection_pixbuf): * shell/ev-view.c: (ev_view_focus_in), (ev_view_focus_out), (ev_view_class_init): Change selection color on focus in and focus out events. Also, poppler now uses GdkColor for specifying the selection colors, so drop some awkward conversion code.
* Clean up selection to be much smoother!Jonathan Blandford2005-08-061-28/+181
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sat Aug 6 01:12:44 2005 Jonathan Blandford <jrb@redhat.com> * NOTES: * backend/ev-selection.c: (ev_selection_render_selection): * backend/ev-selection.h: * pdf/ev-poppler.cc: * shell/ev-jobs.c: (ev_job_render_dispose), (ev_job_render_new), (ev_job_render_run): * shell/ev-jobs.h: * shell/ev-pixbuf-cache.c: (dispose_cache_job_info), (ev_pixbuf_cache_new), (job_finished_cb), (add_job_if_needed), (convert_gdk_color_to_uint), (ev_pixbuf_cache_get_text_mapping), (ev_pixbuf_cache_style_changed), (ev_pixbuf_cache_get_selection_pixbuf), (ev_pixbuf_cache_set_selection_list), (ev_pixbuf_cache_get_selection_list): * shell/ev-pixbuf-cache.h: * shell/ev-utils.c: (ev_print_region_contents): * shell/ev-utils.h: * shell/ev-view.c: (ev_view_queue_draw_page), (selection_update_idle_cb), (ev_view_motion_notify_event), (ev_view_style_set), (draw_one_page), (ev_view_class_init), (setup_caches), (ev_view_find_next), (merge_selection_region), (selection_free): * shell/ev-window.c: (ev_window_update_fullscreen_popup): Clean up selection to be much smoother!
* at Jul 30 19:09:34 2005 Jonathan Blandford <jrb@redhat.com>Jonathan Blandford2005-07-301-0/+18
| | | | | | | | | | | | * shell/ev-pixbuf-cache.c: (ev_pixbuf_cache_clear): * shell/ev-pixbuf-cache.h: * shell/ev-sidebar-thumbnails.c: (ev_sidebar_thumbnails_get_property), (add_range), (adjustment_changed_cb): * shell/ev-view.c: (ev_view_set_rotation): Fix rotation and the pixbuf cache. Make thumbnailing work again. Also, fix bug where we were thumbnailing the entire docment on startup, slowing us down hugely.
* Use rotation rather than orientation. It's easier and enough for ourMarco Pesenti Gritti2005-07-291-19/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-07-29 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-thumbnails.c: (ev_document_thumbnails_get_thumbnail): * backend/ev-document-thumbnails.h: * backend/ev-document.c: * backend/ev-document.h: * backend/ev-render-context.c: (ev_render_context_new), (ev_render_context_set_rotation): * backend/ev-render-context.h: * pdf/ev-poppler.cc: * ps/ps-document.c: (ps_document_document_iface_init): * shell/ev-jobs.c: (ev_job_thumbnail_new), (ev_job_thumbnail_run): * shell/ev-jobs.h: * shell/ev-page-cache.c: (build_height_to_page), (ev_page_cache_new), (ev_page_cache_get_size), (ev_page_cache_get_max_width), (ev_page_cache_get_max_height), (ev_page_cache_get_height_to_page): * shell/ev-page-cache.h: * shell/ev-pixbuf-cache.c: (check_job_size_and_unref), (add_job_if_needed), (ev_pixbuf_cache_add_jobs_if_needed), (ev_pixbuf_cache_set_page_range), (new_selection_pixbuf_needed), (ev_pixbuf_cache_get_selection_pixbuf): * shell/ev-pixbuf-cache.h: * shell/ev-print-job.c: (idle_print_handler): * shell/ev-sidebar-thumbnails.c: (add_range): * shell/ev-view.c: (view_update_range_and_current_page), (get_page_y_offset), (get_page_extents), (ev_view_size_request_continuous_dual_page), (ev_view_size_request_continuous), (ev_view_size_request_dual_page), (ev_view_size_request_single_page), (draw_one_page), (ev_view_set_rotation), (ev_view_rotate_right), (ev_view_rotate_left), (ev_view_zoom_for_size_presentation), (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), (compute_new_selection_text), (ev_view_select_all): * thumbnailer/evince-thumbnailer.c: (evince_thumbnail_pngenc_get): * tiff/tiff-document.c: (tiff_document_render_pixbuf), (tiff_document_document_iface_init), (tiff_document_thumbnails_get_thumbnail): Use rotation rather than orientation. It's easier and enough for our needs.
* Really make use of the orientation bit of the render context. Use theMarco Pesenti Gritti2005-07-291-11/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-07-29 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-document-thumbnails.c: (ev_document_thumbnails_get_thumbnail): * backend/ev-document-thumbnails.h: * backend/ev-document.c: * backend/ev-document.h: * backend/ev-ps-exporter.c: (ev_ps_exporter_do_page): * backend/ev-ps-exporter.h: * pdf/ev-poppler.cc: * ps/ps-document.c: (ps_document_document_iface_init), (ps_document_ps_export_do_page): * shell/ev-jobs.c: (ev_job_thumbnail_new), (ev_job_thumbnail_run): * shell/ev-jobs.h: * shell/ev-page-cache.c: (ev_page_cache_get_size), (ev_page_cache_get): * shell/ev-page-cache.h: * shell/ev-pixbuf-cache.c: (check_job_size_and_unref), (add_job_if_needed), (ev_pixbuf_cache_add_jobs_if_needed), (ev_pixbuf_cache_set_page_range), (new_selection_pixbuf_needed): * shell/ev-pixbuf-cache.h: * shell/ev-print-job.c: (idle_print_handler): * shell/ev-sidebar-thumbnails.c: (add_range): * shell/ev-view.c: (view_update_range_and_current_page), (get_page_extents), (ev_view_size_request_dual_page), (ev_view_size_request_single_page), (draw_one_page), (clear_caches), (ev_view_set_orientation), (ev_view_rotate_right), (ev_view_rotate_left), (ev_view_zoom_for_size_presentation), (ev_view_zoom_for_size_dual_page), (ev_view_zoom_for_size_single_page), (compute_new_selection_text), (ev_view_select_all): * thumbnailer/evince-thumbnailer.c: (evince_thumbnail_pngenc_get): * tiff/tiff-document.c: (tiff_document_get_page_size), (tiff_document_get_orientation), (rotate_pixbuf), (tiff_document_render_pixbuf), (tiff_document_document_iface_init), (tiff_document_thumbnails_get_thumbnail), (tiff_document_ps_export_do_page), (tiff_document_init): Really make use of the orientation bit of the render context. Use the render context in a few more places in the backend API. This regress orientation, but now it's done right. Will try to fix it up asap...
* return NULL if the document does not implement the selection interface.Matthew S. Wilson2005-07-021-0/+4
| | | | | | | | 2005-07-02 Matthew S. Wilson <msw@rpath.com> * shell/ev-pixbuf-cache.c (ev_pixbuf_cache_get_selection_pixbuf): return NULL if the document does not implement the selection interface.
* Add I-Beam support to EvView. Now we can see where we can select! Sweet!Jonathan Blandford2005-07-011-3/+33
| | | | | | | | | | | | | | | | | | 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!
* unref the pixbuf iff it exists.Jonathan Blandford2005-06-301-1/+2
| | | | | | | Thu Jun 30 01:50:14 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-pixbuf-cache.c (clear_selection_if_needed): unref the pixbuf iff it exists.
* Massive changes. We now support text selection of pdfs, and not justJonathan Blandford2005-06-301-9/+267
| | | | | | | | | | | | 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.
* PageCache and EvJobs are moved from backend to shell. Two new jobs toNickolay V. Shmyrev2005-06-071-4/+5
| | | | | load document in background and a statusbar to display this process. FileChooser now can select multiple uris.
* modify the expose handling to get the shadows.Jonathan Blandford2005-05-291-1/+1
| | | | | | | | | | | | | | 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.
* Change the preview cache back to 1. Don't know when it got set to 0.Jonathan Blandford2005-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sun May 1 00:46:47 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-pixbuf-cache.c: (ev_pixbuf_cache_init): Change the preview cache back to 1. Don't know when it got set to 0. * shell/ev-view.c: (compute_border), (ev_view_realize), (draw_one_page), (ev_view_set_property), (ev_view_get_property), (ev_view_class_init), (ev_view_init), (ev_view_set_fullscreen), (ev_view_get_fullscreen), (ev_view_set_presentation), (ev_view_get_presentation), (ev_view_set_sizing_mode), (ev_view_zoom_for_size_presentation), (ev_view_set_zoom_for_size): * shell/ev-view.h: * shell/ev-window.c: (update_chrome_visibility), (ev_window_cmd_continuous), (ev_window_cmd_dual), (ev_window_cmd_view_best_fit), (ev_window_cmd_view_page_width), (update_document_mode), (ev_window_update_fullscreen_action), (ev_window_fullscreen), (ev_window_unfullscreen), (ev_window_cmd_view_fullscreen), (ev_window_update_presentation_action), (ev_window_run_presentation), (ev_window_stop_presentation), (ev_window_cmd_view_presentation), (ev_window_state_event), (ev_window_focus_in_event), (ev_window_focus_out_event), (ev_window_cmd_escape), (ev_window_sidebar_visibility_changed_cb): * data/evince-ui.xml: Initial presentation mode. We should probably hide this until it's done, as it's quite rough. Also, change full-screen to fullscreen and add two getters to EvView.
* Add Continuous and Dual page modes.Jonathan Blandford2005-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-221-0/+1
| | | | | | | | | | 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.
* Actually fix the "FIXME: update priority" comment.Jonathan Blandford2005-04-091-1/+1
| | | | | | | | | 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.
* Remove pixbuf backend for nowJonathan Blandford2005-03-311-14/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-231-0/+525