Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell/ev-jobs.c
Commit message (Collapse)AuthorAgeFilesLines
* Add a command line option for search. Fixes bug #497710.Carlos Garcia Campos2007-11-251-1/+11
| | | | | | | | | | | | | | | | | 2007-11-25 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-application.[ch]: (get_find_string_from_args), (ev_application_open_uri_at_dest), (ev_application_open_uri), (ev_application_open_uri_list): * shell/ev-jobs.[ch]: (ev_job_load_dispose), (ev_job_load_new): * shell/ev-window.[ch]: (ev_window_load_job_cb), (ev_window_open_uri), (ev_window_cmd_file_open_copy_at_dest), (ev_window_cmd_recent_file_activate), (ev_window_open_recent_action_item_activated), (ev_window_print_send), (open_remote_link): * shell/main.c: (arguments_parse): Add a command line option for search. Fixes bug #497710. svn path=/trunk/; revision=2746
* Fix endless loop when pages_per_sheet is 0. Fixes bug #498248.Darren Kenny2007-11-201-1/+1
| | | | | | | | 2007-11-20 Darren Kenny <darren.kenny@sun.com> * shell/ev-jobs.c: (ev_job_print_new): Fix endless loop when pages_per_sheet is 0. Fixes bug #498248. svn path=/trunk/; revision=2742
* When printing multiple pages per sheet in reverse option, do not invertCarlos Garcia Campos2007-10-111-32/+26
| | | | | | | | | | | | | | | | | | | 2007-10-11 Carlos Garcia Campos <carlosgc@gnome.org> * backend/pdf/ev-poppler.cc: (pdf_document_file_exporter_begin_page), (pdf_document_file_exporter_do_page), (pdf_document_file_exporter_end_page), (pdf_document_file_exporter_iface_init): * libdocument/ev-file-exporter.[ch]: (ev_file_exporter_begin_page), (ev_file_exporter_end_page): * shell/ev-jobs.c: (ev_job_print_get_page_list), (ev_job_print_run): When printing multiple pages per sheet in reverse option, do not invert the order of the pages in every sheet, but the order of the sheets. Do not print blank pages when page range is invalid. Fixes bugs #484857 and #485521. svn path=/trunk/; revision=2700
* Respect ranges order when printing more than one range in random order.Carlos Garcia Campos2007-10-111-26/+70
| | | | | | | | | | | 2007-10-10 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.c: (ev_job_print_get_page_list), (ev_job_print_run): * shell/ev-window.c: (ev_window_print_dialog_response_cb): Respect ranges order when printing more than one range in random order. svn path=/trunk/; revision=2699
* Move save a copy task to its own job so that it's carried out in a threadCarlos Garcia Campos2007-09-041-0/+142
| | | | | | | | | | | | | | | | | | 2007-09-04 Carlos Garcia Campos <carlosgc@gnome.org> * 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.[ch]: (ev_job_save_init), (ev_job_save_dispose), (ev_job_save_class_init), (ev_job_save_new), (ev_job_save_run): * shell/ev-window.c: (ev_window_clear_save_job), (ev_window_save_job_cb), (file_save_dialog_response_cb), (ev_window_dispose): Move save a copy task to its own job so that it's carried out in a thread avoiding another lock in the main thread. Use ev_xfer_uri_simple() instead of gnome_vfs_move() so that document can be saved to a pathin another file system. Fixes bug #456891. svn path=/trunk/; revision=2664
* Actually fix printing regressions. Remove orientation from EvPrintContextCarlos Garcia Campos2007-09-011-3/+1
| | | | | | | | | | | | | 2007-09-01 Carlos Garcia Campos <carlosgc@gnome.org> * backend/pdf/ev-poppler.cc: (pdf_document_file_exporter_begin), (pdf_document_file_exporter_do_page): * libdocument/ev-file-exporter.h: * shell/ev-jobs.[ch]: (ev_job_print_new), (ev_job_print_run): * shell/ev-window.c: (ev_window_print_dialog_response_cb): Actually fix printing regressions. Remove orientation from EvPrintContext since it's redundant. svn path=/trunk/; revision=2649
* Add support for double and triple click selections.Carlos Garcia Campos2007-08-311-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-08-31 Carlos Garcia Campos <carlosgc@gnome.org> * backend/dvi/dvi-document.c: (dvi_document_document_iface_init): * backend/impress/impress-document.c: (impress_document_document_iface_init): * backend/ps/ps-document.c: (ps_document_document_iface_init): * backend/djvu/djvu-document.c: (djvu_document_document_iface_init), (djvu_selection_get_selected_text), (djvu_selection_iface_init): * backend/tiff/tiff-document.c: (tiff_document_document_iface_init): * backend/pixbuf/pixbuf-document.c: (pixbuf_document_document_iface_init): * backend/comics/comics-document.c: (comics_document_document_iface_init): * backend/pdf/ev-poppler.cc: (pdf_document_document_iface_init), (pdf_selection_render_selection), (pdf_selection_get_selected_text), (pdf_selection_get_selection_region), (pdf_selection_get_selection_map), (pdf_selection_iface_init): * libdocument/ev-selection.[ch]: (ev_selection_get_selected_text), (ev_selection_get_selection_region), (ev_selection_get_selection_map): * libdocument/ev-document.[ch]: * shell/ev-pixbuf-cache.[ch]: (add_job), (ev_pixbuf_cache_get_selection_surface), (update_job_selection): * shell/ev-view-private.h: * shell/ev-jobs.[ch]: (ev_job_render_new), (ev_job_render_new), (ev_job_render_run): * shell/ev-window.c: (ev_window_setup_action_sensitivity): * shell/ev-view.c: (start_selection_for_event), (ev_view_button_press_event), (ev_view_drag_data_get), (ev_view_drag_data_received), (ev_view_button_release_event), (compute_new_selection_text), (compute_selections), (ev_view_select_all), (get_selected_text), (ev_view_copy), (ev_view_primary_get_cb): Add support for double and triple click selections. svn path=/trunk/; revision=2648
* Create always a portrait cairo surface and rotate when needed forCarlos Garcia Campos2007-08-271-1/+1
| | | | | | | | | | | | | 2007-08-27 Carlos Garcia Campos <carlosgc@gnome.org> * backend/pdf/ev-poppler.cc: (pdf_print_context_free), (pdf_document_file_exporter_begin), (pdf_document_file_exporter_do_page): * shell/ev-jobs.c: (ev_job_print_run): * shell/ev-window.c: (ev_window_print_dialog_response_cb): Create always a portrait cairo surface and rotate when needed for landscape. It fixes printing problems in real printers. svn path=/trunk/; revision=2643
* Adjust number of pages per row according to page orientation when printingCarlos Garcia Campos2007-08-251-2/+3
| | | | | | | | | | | | | 2007-08-25 Carlos Garcia Campos <carlosgc@gnome.org> * backend/pdf/ev-poppler.cc: (pdf_document_file_exporter_begin): * libdocument/ev-file-exporter.[ch]: (ev_file_exporter_get_capabilities): * shell/ev-jobs.[ch]: (ev_job_print_new), (ev_job_print_run): * shell/ev-window.c: (ev_window_print_dialog_response_cb): Adjust number of pages per row according to page orientation when printing 2 or 6 pages per sheet. svn path=/trunk/; revision=2641
* Add page_ready callback to main loop with high priority and hold aCarlos Garcia Campos2007-07-291-1/+4
| | | | | | | | | 2007-07-29 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.c: (ev_job_render_page_ready): Add page_ready callback to main loop with high priority and hold a reference to job during idle. svn path=/trunk/; revision=2592
* Allow printing multiple pages per sheet. Fixes bug #395573.Carlos Garcia Campos2007-07-291-0/+6
| | | | | | | | | | | | | | | | 2007-07-29 Carlos Garcia Campos <carlosgc@gnome.org> * configure.ac: * backend/pdf/ev-poppler.cc: (pdf_print_context_free), (pdf_document_file_exporter_begin), (pdf_document_file_exporter_do_page), (pdf_document_file_exporter_get_capabilities): * libdocument/ev-file-exporter.h: * shell/ev-jobs.[ch]: (ev_job_print_new), (ev_job_print_run): * shell/ev-window.c: (ev_window_print_send), (ev_window_print_dialog_response_cb): Allow printing multiple pages per sheet. Fixes bug #395573. svn path=/trunk/; revision=2591
* Add page_ready signal to notify that page is ready as soon as possibleCarlos Garcia Campos2007-07-261-19/+50
| | | | | | | | | | | | | | | | | | | 2007-07-26 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-pixbuf-cache.c: (job_page_ready_cb), (job_finished_cb), (copy_job_page_and_selection_to_job_info), (copy_job_to_job_info), (add_job), (ev_pixbuf_cache_get_surface), (ev_pixbuf_cache_get_link_mapping), (ev_pixbuf_cache_get_image_mapping), (ev_pixbuf_cache_get_form_field_mapping), (ev_pixbuf_cache_get_text_mapping): * shell/ev-jobs.[ch]: (ev_job_render_class_init), (notify_page_ready), (ev_job_render_page_ready), (ev_job_render_run): Add page_ready signal to notify that page is ready as soon as possible even if other page elements like links, forms, images or text mapping are not ready yet. svn path=/trunk/; revision=2581
* Use capabilities to know which options should be offered by the printCarlos Garcia Campos2007-07-261-13/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-07-26 Carlos Garcia Campos <carlosgc@gnome.org> * backend/dvi/dvi-document.c: (dvi_document_file_exporter_begin), (dvi_document_file_exporter_do_page), (dvi_document_file_exporter_get_capabilities), (dvi_document_file_exporter_iface_init): * backend/ps/ps-document.c: (ps_document_file_exporter_begin), (ps_document_file_exporter_do_page), (ps_document_file_exporter_get_capabilities), (ps_document_file_exporter_iface_init): * backend/djvu/djvu-document.c: (djvu_document_file_exporter_begin), (djvu_document_file_exporter_end), (djvu_document_file_exporter_get_capabilities), (djvu_document_file_exporter_iface_init): * backend/tiff/tiff-document.c: (tiff_document_file_exporter_begin), (tiff_document_file_exporter_get_capabilities), (tiff_document_document_file_exporter_iface_init): * backend/pdf/ev-poppler.cc: (pdf_document_file_exporter_begin), (pdf_document_file_exporter_do_page), (pdf_document_file_exporter_get_capabilities), (pdf_document_file_exporter_iface_init): * libdocument/ev-file-exporter.[ch]: (ev_file_exporter_begin), (ev_file_exporter_get_capabilities): * shell/ev-print-job.c: (ev_print_job_use_print_dialog_settings), (idle_print_handler), (ev_print_job_print): * shell/ev-jobs.c: (ev_job_print_run): * shell/ev-window.c: (ev_window_print_send), (ev_window_print_range): Use capabilities to know which options should be offered by the print dialog depending on the document backend. svn path=/trunk/; revision=2580
* Merge evince-forms branch.Carlos Garcia Campos2007-07-081-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-07-08 Carlos Garcia Campos <carlosgc@gnome.org> * configure.ac: * backend/pdf/ev-poppler.cc: (pdf_document_get_crop_box), (ev_form_field_from_poppler_field), (pdf_document_forms_get_form_fields), (pdf_document_forms_form_field_text_get_text), (pdf_document_forms_form_field_text_set_text), (pdf_document_forms_form_field_button_set_state), (pdf_document_forms_form_field_button_get_state), (pdf_document_forms_form_field_choice_get_item), (pdf_document_forms_form_field_choice_get_n_items), (pdf_document_forms_form_field_choice_is_item_selected), (pdf_document_forms_form_field_choice_select_item), (pdf_document_forms_form_field_choice_toggle_item), (pdf_document_forms_form_field_choice_unselect_all), (pdf_document_forms_form_field_choice_set_text), (pdf_document_forms_form_field_choice_get_text), (pdf_document_document_forms_iface_init): * libdocument/Makefile.am: * libdocument/ev-form-field.[ch]: * libdocument/ev-document-forms.[ch]: * shell/ev-pixbuf-cache.[ch]: (dispose_cache_job_info), (move_one_job), (copy_job_to_job_info), (add_job_if_needed), (add_job), (ev_pixbuf_cache_reload_page), (ev_pixbuf_cache_get_form_field_mapping): * shell/ev-jobs.[ch]: (ev_job_render_new), (ev_job_render_run): * shell/ev-view-private.h: * shell/ev-view.[ch]: (ev_view_set_scroll_adjustments), (ev_view_handle_cursor_over_xy), (ev_view_get_form_field_at_location), (ev_view_forms_remove_widgets), (ev_view_form_field_destroy), (ev_view_form_field_button_create_widget), (ev_view_form_field_text_save), (ev_view_form_field_text_changed), (ev_view_form_field_text_create_widget), (ev_view_form_field_choice_save), (ev_view_form_field_choice_changed), (ev_view_form_field_choice_create_widget), (ev_view_handle_form_field), (ev_view_size_allocate), (ev_view_realize), (draw_end_presentation_page), (ev_view_button_press_event), (ev_view_remove_all), (ev_view_motion_notify_event), (ev_view_key_press_event), (ev_view_enter_notify_event), (highlight_find_results), (draw_loading_text), (draw_one_page), (ev_view_destroy), (ev_view_class_init), (page_changed_cb), (on_adjustment_value_changed), (ev_view_set_presentation), (merge_selection_region), (ev_view_set_cursor), (ev_view_reset_presentation_state): Merge evince-forms branch. svn path=/trunk/; revision=2560
* Use cairo image surfaces instead of GDK pixbufs for drawing pages andCarlos Garcia Campos2007-06-131-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-06-13 Carlos Garcia Campos <carlosgc@gnome.org> * backend/dvi/dvi-document.c: (dvi_document_render), (dvi_document_render_pixbuf), (dvi_document_document_iface_init): * backend/impress/impress-document.c: (imp_render_get_from_drawable), (impress_document_render_pixbuf), (impress_document_render), (impress_document_document_iface_init), (impress_document_thumbnails_get_thumbnail): * backend/djvu/djvu-document-private.h: * backend/djvu/djvu-document.c: (djvu_document_render), (djvu_document_finalize), (djvu_document_document_iface_init), (djvu_document_thumbnails_get_thumbnail), (djvu_document_init): * backend/tiff/tiff-document.c: (tiff_document_render), (tiff_document_render_pixbuf), (tiff_document_document_iface_init): * backend/pdf/ev-poppler.cc: (pdf_document_render), (pdf_document_render_pixbuf), (pdf_document_document_iface_init), (pdf_selection_render_selection): * backend/comics/comics-document.c: (comics_document_render_pixbuf), (comics_document_render), (comics_document_document_iface_init): * backend/pixbuf/pixbuf-document.c: (pixbuf_document_render), (pixbuf_document_document_iface_init): * libdocument/ev-document-misc.[ch]: (ev_document_misc_surface_from_pixbuf), (ev_document_misc_surface_rotate_and_scale): * libdocument/ev-document.[ch]: (ev_document_render): * libdocument/ev-selection.[ch]: (ev_selection_render_selection): * shell/ev-pixbuf-cache.[ch]: (dispose_cache_job_info), (move_one_job), (copy_job_to_job_info), (add_job_if_needed), (ev_pixbuf_cache_get_surface), (new_selection_surface_needed), (clear_selection_if_needed), (ev_pixbuf_cache_style_changed), (ev_pixbuf_cache_get_selection_surface), (clear_job_selection): * shell/ev-jobs.[ch]: (ev_job_render_dispose), (render_finished_cb), (ev_job_render_run): * shell/ev-view.c: (draw_loading_text), (draw_one_page), (merge_selection_region): Use cairo image surfaces instead of GDK pixbufs for drawing pages and selections. svn path=/trunk/; revision=2499
* Use an EvRenderContext for rendering thumbnails instead of a suggestedCarlos Garcia Campos2007-02-161-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-02-16 Carlos Garcia Campos <carlosgc@gnome.org> * backend/dvi/dvi-document.c: (dvi_document_thumbnails_get_dimensions), (dvi_document_thumbnails_get_thumbnail): * backend/impress/impress-document.c: (impress_document_thumbnails_get_thumbnail), (impress_document_thumbnails_get_dimensions): * backend/ps/ps-document.c: (ps_document_thumbnails_get_thumbnail), (ps_document_thumbnails_get_dimensions): * backend/djvu/djvu-document.c: (djvu_document_thumbnails_get_dimensions), (djvu_document_thumbnails_get_thumbnail): * backend/tiff/tiff-document.c: (tiff_document_thumbnails_get_thumbnail), (tiff_document_thumbnails_get_dimensions): * backend/pdf/ev-poppler.cc: (make_thumbnail_for_page), (pdf_document_thumbnails_get_thumbnail), (pdf_document_thumbnails_get_dimensions): * backend/comics/comics-document.c: (comics_document_thumbnails_get_thumbnail), (comics_document_thumbnails_get_dimensions): * backend/pixbuf/pixbuf-document.c: (pixbuf_document_thumbnails_get_thumbnail), (pixbuf_document_thumbnails_get_dimensions): * libdocument/ev-document-thumbnails.[ch]: (ev_document_thumbnails_get_thumbnail), (ev_document_thumbnails_get_dimensions): * libdocument/ev-document-misc.[ch]: (ev_document_misc_get_thumbnail_frame): * shell/ev-jobs.[ch]: (ev_job_thumbnail_dispose), (ev_job_thumbnail_new), (ev_job_thumbnail_run): * shell/ev-sidebar-thumbnails.c: (get_scale_for_page), (add_range), (ev_sidebar_thumbnails_set_loading_icon), (refresh), (ev_sidebar_thumbnails_refresh): * shell/ev-window.c: (ev_window_setup_document): * thumbnailer/evince-thumbnailer.c: (evince_thumbnail_pngenc_get): Use an EvRenderContext for rendering thumbnails instead of a suggested width, so that different sized pages get sized proportionally. svn path=/trunk/; revision=2332
* Do file transfer asynchronously in the main thread instead ofCarlos Garcia Campos2007-01-241-57/+28
| | | | | | | | | | | | | | | | | | | | 2007-01-24 Carlos Garcia Campos <carlosgc@gnome.org> * 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.[ch]: (ev_job_load_init), (ev_job_load_class_init), (ev_job_load_dispose), (ev_job_load_new), (ev_job_load_set_uri), (ev_job_load_run): * shell/ev-window.c: (ev_window_is_empty), (password_dialog_response), (ev_window_popup_password_dialog), (ev_window_clear_load_job), (ev_window_load_job_cb), (xfer_update_progress_callback), (ev_window_open_uri), (ev_window_dispose): * shell/main.c: (main): Do file transfer asynchronously in the main thread instead of synchronously in the load thread. Fixes bugs #399694, #398307 and #343542. svn path=/trunk/; revision=2248
* Load the document with the font-config lock held.Carlos Garcia Campos2007-01-241-0/+2
| | | | | | | | 2007-01-24 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.c: (ev_job_xfer_run): Load the document with the font-config lock held. svn path=/trunk/; revision=2247
* Show main window and load document with the font-config lock held.Carlos Garcia Campos2007-01-091-0/+2
| | | | | | | | | 2007-01-09 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.c: (ev_job_xfer_run): * shell/ev-application.c: (ev_application_open_uri_at_dest): Show main window and load document with the font-config lock held. svn path=/trunk/; revision=2203
* Add image handling support. Fixes bugs #310008 and #325047. ImagesCarlos Garcia Campos2007-01-071-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-01-07 Carlos Garcia Campos <carlosgc@gnome.org> * configure.ac: * data/evince-ui.xml: * pdf/ev-poppler.cc: (pdf_document_images_get_images), (pdf_document_document_images_iface_init): * backend/Makefile.am: * backend/ev-document-images.[ch]: * backend/ev-image.[ch]: * lib/ev-file-helpers.[ch]: (ev_tmp_filename): * shell/ev-jobs.[ch]: (ev_job_render_new), (ev_job_render_run), (ev_job_xfer_run): * shell/ev-pixbuf-cache.[ch]: (dispose_cache_job_info), (move_one_job), (copy_job_to_job_info), (add_job_if_needed), (ev_pixbuf_cache_get_image_mapping): * shell/ev-window.c: (view_menu_link_popup), (view_menu_image_popup), (view_menu_popup_cb), (ev_window_dispose), (image_save_dialog_response_cb), (ev_view_popup_cmd_save_image_as), (ev_view_popup_cmd_copy_image): * shell/ev-view-private.h: * shell/ev-view.c: (ev_view_get_image_at_location), (ev_view_do_popup_menu), (ev_view_popup_menu), (ev_view_button_press_event), (ev_view_drag_data_get), (ev_view_drag_motion), (ev_view_drag_data_received), (ev_view_motion_notify_event), (ev_view_button_release_event), (ev_view_finalize), (ev_view_class_init): Add image handling support. Fixes bugs #310008 and #325047. Images selection is not supported yet. svn path=/trunk/; revision=2194
* Use an specific lock for FontConfig. Hopefully it fixes some crashesCarlos Garcia Campos2006-12-181-1/+6
| | | | | | | | | | | | 2006-12-18 Carlos Garcia Campos <carlosgc@gnome.org> * backend/ev-document.[ch]: (ev_document_get_fc_mutex), (ev_document_fc_mutex_lock), (ev_document_fc_mutex_unlock): * pdf/ev-poppler.cc: (make_thumbnail_for_size): * shell/ev-jobs.c: (ev_job_render_run), (ev_job_fonts_run): * shell/ev-view.c: (draw_loading_text): * shell/ev-window.c: (ev_window_cmd_file_properties): Use an specific lock for FontConfig. Hopefully it fixes some crashes related to using FontConfig from different threads.
* Allow printing to PDF when suppoted by the backend.Carlos Garcia Campos2006-12-031-10/+23
| | | | | | | | | | | | | | 2006-12-03 Carlos Garcia Campos <carlosgc@gnome.org> * configure.ac: * backend/Makefile.am: * backend/ev-file-exporter.[ch]: * pdf/ev-poppler.cc: (pdf_document_file_exporter_*): * ps/ps-document.c: (ps_document_file_exporter_*): * tiff/tiff-document.c: (tiff_document_document_file_exporter_*): * shell/ev-jobs.[ch]: (ev_job_print_new), (ev_job_print_run): * shell/ev-window.c: (ev_window_setup_action_sensitivity), (ev_window_print_dialog_response_cb), (ev_window_print_range): Allow printing to PDF when suppoted by the backend.
* Add page setup settings for printing. Fixes bugs #363860 and #350491.Carlos Garcia Campos2006-11-081-1/+1
| | | | | | | | | | 2006-11-08 Carlos Garcia Campos <carlosgc@gnome.org> * data/evince-ui.xml: * shell/ev-window.c: (ev_window_print_page_setup_done_cb), (ev_window_cmd_file_print_setup), (ev_window_print_dialog_response_cb), (ev_window_setup_action_sensitivity): Add page setup settings for printing. Fixes bugs #363860 and #350491.
* Allow printing only odd/even pages. Fixes bug #367289.Carlos Garcia Campos2006-10-301-11/+36
| | | | | | | | | 2006-10-30 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.[ch]: (ev_job_print_new), (ev_print_job_print_page_in_range), (ev_print_job_print_page_in_set), (ev_job_print_do_page): * shell/ev-window.[ch]: (ev_window_print_dialog_response_cb): Allow printing only odd/even pages. Fixes bug #367289.
* Use print settings scale, copies, collate and reverse which were ignored.Carlos Garcia Campos2006-10-241-21/+50
| | | | | | | | 2006-10-24 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.[ch]: (ev_job_print_new), (ev_job_print_run): * shell/ev-window.c: (ev_window_print_dialog_response_cb): Use print settings scale, copies, collate and reverse which were ignored. Fixes bug #359032.
* GtkPrintJob doesn't support print ranges or current page, so we export toCarlos Garcia Campos2006-07-261-9/+79
| | | | | | | | | 2006-07-26 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-jobs.[ch]: * shell/ev-sidebar-links.c: * shell/ev-window.[ch]: GtkPrintJob doesn't support print ranges or current page, so we export to a ps file now when printing ranges or current page.
* Use GtkPrint instead of GnomePrint when it's available. Fixes bug #348422Carlos Garcia Campos2006-07-231-0/+113
| | | | | | | | | | | | 2006-07-23 Carlos Garcia Campos <carlosgc@gnome.org> * configure.ac: * shell/Makefile.am: * shell/ev-job-queue.c: * shell/ev-jobs.[ch]: * shell/ev-sidebar-links.c: * shell/ev-window.[ch]: Use GtkPrint instead of GnomePrint when it's available. Fixes bug #348422
* Add preview toolbar (hidden by default)Carlos Garcia Campos2006-07-171-1/+3
| | | | | | | | | | | | | 2006-07-17 Carlos Garcia Campos <carlosgc@gnome.org> * data/evince-toolbar.xml: Add preview toolbar (hidden by default) * shell/ev-application-service.xml: * shell/ev-application.[ch]: * shell/ev-jobs.[ch]: * shell/ev-window.[ch]: (ev_window_run_preview): * shell/main.c: Add preview mode to use evince as a printing previewer. It also adds other command line options for fullscreen and presentation modes. Fixes bugs #347822, #317031
* Fixes bug #344160: if the xfer job doesn't complete because a password isNickolay V. Shmyrev2006-06-091-0/+11
| | | | | | | | | | * shell/ev-jobs.c: (ev_job_xfer_run): * shell/ev-window.c: (password_dialog_response), (ev_window_popup_password_dialog), (ev_window_xfer_job_cb), (ev_window_dispose): Fixes bug #344160: if the xfer job doesn't complete because a password is required, reload the existing instance instead of creating a new one.
* Don't crash on reload. Fix for the bug #343167.Nickolay V. Shmyrev2006-05-291-1/+8
| | | | | | | | | * shell/ev-jobs.c: (ev_job_xfer_dispose), (ev_job_xfer_new): * shell/ev-jobs.h: * shell/ev-window.c: (ev_window_xfer_job_cb), (ev_window_open_uri), (ev_window_cmd_view_reload), (ev_window_init): Don't crash on reload. Fix for the bug #343167.
* Check for document links.Nickolay V. Shmyrev2006-05-281-1/+1
| | | | | | * shell/ev-jobs.c: (ev_job_render_run): Check for document links.
* Open links with anchors. Fix for the bug #339836.Nickolay V. Shmyrev2006-05-271-2/+6
| | | | | | | * shell/ev-jobs.c: (ev_job_xfer_run): * shell/main.c: (load_files): Open links with anchors. Fix for the bug #339836.
* Check if document supports links iterface.Nickolay V. Shmyrev2006-05-221-1/+1
| | | | | | * shell/ev-jobs.c: (ev_job_render_run): Check if document supports links iterface.
* Rework links system, it adds support for remote links now and it makesCarlos Garcia Campos2006-05-021-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | 2006-05-02 Carlos Garcia Campos <carlosgc@gnome.org> * backend/Makefile.am: * backend/ev-document-links.[ch]: * backend/ev-document.[ch]: * backend/ev-link-action.[ch]: * backend/ev-link-dest.[ch]: * backend/ev-link.[ch]: * pdf/ev-poppler.cc: (pdf_document_find_link_dest), (ev_link_dest_from_dest), (ev_link_from_action), (build_tree): * shell/ev-page-action.c: (build_new_tree_cb): * shell/ev-sidebar-links.c: (get_page_from_dest), (print_section_cb), (links_page_num_func), (update_page_callback): * shell/ev-view.[ch]: (ev_view_goto_dest), (ev_view_handle_link), (tip_from_link): * shell/ev-jobs.c: * shell/ev-window.[ch]: (ev_window_open_uri), (sidebar_links_link_activated_cb), (ev_view_popup_cmd_open_link): * shell/ev-application.[ch]: (ev_application_open_window), (ev_application_open_uri): Rework links system, it adds support for remote links now and it makes easier to add new kinds of actions and destinations. Fixes bug #317292
* Cleanup mime type detection on document load. Fix for the bug #336448.Nickolay V. Shmyrev2006-04-021-63/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * backend/ev-document-factory.c: (get_document_from_uri), (ev_document_factory_get_document): * backend/ev-document-factory.h: * properties/ev-properties-main.c: (ev_properties_get_pages): * shell/Makefile.am: * 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-job-queue.h: * shell/ev-job-xfer.c: * shell/ev-job-xfer.h: * shell/ev-jobs.c: (ev_job_fonts_init), (ev_job_fonts_class_init), (ev_job_fonts_new), (ev_job_fonts_run), (ev_job_xfer_init), (ev_job_xfer_dispose), (ev_job_xfer_class_init), (ev_job_xfer_new), (ev_job_xfer_run): * shell/ev-jobs.h: * shell/ev-window.c: (ev_window_is_empty), (password_dialog_response), (ev_window_clear_xfer_job), (ev_window_xfer_job_cb), (ev_window_open_uri), (ev_window_cmd_focus_page_selector), (ev_window_cmd_scroll_forward), (ev_window_cmd_scroll_backward), (ev_window_cmd_continuous), (ev_window_cmd_dual), (ev_window_cmd_view_best_fit), (ev_window_cmd_view_page_width), (ev_window_dispose): * thumbnailer/evince-thumbnailer.c: (evince_thumbnail_pngenc_get): * Cleanup mime type detection on document load. Fix for the bug #336448.
* Fix orientation in the postscript documentMarco Pesenti Gritti2005-08-241-1/+2
| | | | | | | | | | | | | | 2005-08-24 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-async-renderer.c: (ev_async_renderer_render_pixbuf): * backend/ev-async-renderer.h: * ps/ps-document.c: (ps_document_init), (setup_pixmap), (setup_page), (ps_document_get_page_size), (ps_async_renderer_render_pixbuf): * ps/ps-document.h: * shell/ev-jobs.c: (ev_job_render_run): Fix orientation in the postscript document
* Make thread safe.Jonathan Blandford2005-08-091-3/+3
| | | | | | | Tue Aug 9 02:17:13 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-jobs.c: (ev_job_render_new), (ev_job_render_run): * shell/ev-jobs.h: Make thread safe.
* Change selection color on focus in and focus out events. Also, poppler nowKristian Høgsberg2005-08-061-2/+2
| | | | | | | | | | | | | | | | | | 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-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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!
* Use rotation rather than orientation. It's easier and enough for ourMarco Pesenti Gritti2005-07-291-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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...
* Add I-Beam support to EvView. Now we can see where we can select! Sweet!Jonathan Blandford2005-07-011-0/+4
| | | | | | | | | | | | | | | | | | 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-301-13/+31
| | | | | | | | | | | | 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.
* Separate scan and fill so that we can incrementally fill from the mainMarco Pesenti Gritti2005-06-131-4/+2
| | | | | | | | | | | | | | | | | | | | | 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-111-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* PageCache and EvJobs are moved from backend to shell. Two new jobs toNickolay V. Shmyrev2005-06-071-0/+343
load document in background and a statusbar to display this process. FileChooser now can select multiple uris.