Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell/ev-view.c
Commit message (Collapse)AuthorAgeFilesLines
* make page size calculation consistent and set it to (int)( width * scale +Jonathan Blandford2005-05-111-4/+6
| | | | | | | | | | | | 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.
* This is evil... Make space/backspace global accelerators but enable themMarco Pesenti Gritti2005-05-101-30/+3
| | | | | | | | | | | | | | | | | | | | | | | 2005-05-10 Marco Pesenti Gritti <mpg@redhat.com> * data/evince-ui.xml: * shell/ev-sidebar-links.c: (ev_sidebar_links_get_treeview): * shell/ev-sidebar-links.h: * shell/ev-sidebar-thumbnails.c: (ev_sidebar_thumbnails_get_treeview): * shell/ev-sidebar-thumbnails.h: * shell/ev-view.c: (ev_view_scroll), (ev_view_scroll_view), (ev_view_class_init): * shell/ev-view.h: * shell/ev-window.c: (update_action_sensitivity), (ev_window_cmd_scroll_forward), (ev_window_cmd_scroll_backward), (set_view_actions_sensitivity), (view_actions_focus_in_cb), (view_actions_focus_out_cb), (enable_view_actions_for_widget), (ev_window_init): This is evil... Make space/backspace global accelerators but enable them only for some widgets (sidebars and view). I dont like it, but I dont know a better way... :/
* Implement middle button scrolling. Based on a patch by Tommi KomulainenMarco Pesenti Gritti2005-05-091-59/+125
| | | | | | | | | | | | 2005-05-09 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (ev_view_create_invisible_cursor), (ev_view_set_cursor), (ev_view_button_press_event), (ev_view_motion_notify_event), (ev_view_button_release_event), (ev_view_init): Implement middle button scrolling. Based on a patch by Tommi Komulainen <tommi.komulainen@iki.fi>.
* Release 0.3.0Marco Pesenti Gritti2005-05-071-1/+6
| | | | | | | | | | | | | | | | | 2005-05-07 Marco Pesenti Gritti <mpg@redhat.com> * NEWS: * configure.ac: Release 0.3.0 * data/evince-ui.xml: Hide presentation mode for now * shell/ev-view.c: (highlight_find_results): Show current find selection only on current page
* Compute size of the actual page, not of the current one.Marco Pesenti Gritti2005-05-071-4/+1
| | | | | | | | | 2005-05-07 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (ev_view_select_all): Compute size of the actual page, not of the current one.
* Fix text selectionMarco Pesenti Gritti2005-05-071-58/+116
| | | | | | | | | | | | | | 2005-05-07 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (clear_selection), (ev_view_finalize), (view_rect_to_doc_rect), (compute_selections), (ev_view_bin_expose), (ev_view_select_all), (get_selected_text), (ev_view_copy), (ev_view_primary_get_cb), (ev_view_primary_clear_cb), (ev_view_update_primary_selection), (ev_view_button_press_event), (ev_view_motion_notify_event), (ev_view_button_release_event), (page_changed_cb): Fix text selection
* First go at fixing search, still buggyMarco Pesenti Gritti2005-05-071-164/+149
| | | | | | | | | | | | 2005-05-07 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (compute_border), (get_page_extents), (doc_rect_to_view_rect), (highlight_find_results), (ev_view_bin_expose), (ev_view_select_all), (ev_view_motion_notify_event), (update_find_status_message), (jump_to_find_result), (jump_to_find_page): First go at fixing search, still buggy
* Output zoom-control Makefile. build zoom-control subdir.James Bowes2005-05-021-12/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-05-02 James Bowes <bowes@cs.dal.ca> * configure.ac: Output zoom-control Makefile. * cut-n-paste/Makefile.am: build zoom-control subdir. * cut-n-paste/zoom-control/ephy-zoom-action.c: * cut-n-paste/zoom-control/ephy-zoom-action.h: * cut-n-paste/zoom-control/ephy-zoom-control.c: * cut-n-paste/zoom-control/ephy-zoom-control.h: * cut-n-paste/zoom-control/ephy-zoom.c: * cut-n-paste/zoom-control/ephy-zoom.h: New files imported from epiphany, and modified to add a separator into the menu. * cut-n-paste/zoom-control/Makefile.am: Build zoom-control. * data/evince-ui.xml: Replace old zoom toolbar actions with new zoom-control action. * shell/Makefile.am: Include zoom-control flags. * shell/ev-view.c: (ev_view_set_zoom), (ev_view_get_zoom), (ev_view_get_sizing_mode), (ev_view_zoom_in), (ev_view_zoom_out), (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), (ev_view_zoom_normal): s/ev_view_zoom/ev_view_set_zoom/ and make public, add ev_view_get_zoom and ev_view_get_sizing_mode. * shell/ev-view.h: * shell/ev-window.c: (update_action_sensitivity), (update_sizing_buttons), (zoom_control_changed_cb), (register_custom_actions): Initialize and use the zoom-control widget.
* Change the preview cache back to 1. Don't know when it got set to 0.Jonathan Blandford2005-05-011-35/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Update current page while scrolling in continuous modeNickolay V. Shmyrev2005-04-271-2/+15
| | | | CVSr ----------------------------------------------------------------------
* Scroll up increase zoomNickolay V. Shmyrev2005-04-241-1/+1
|
* Horizontal scroll and zooming with mouse wheelNickolay V. Shmyrev2005-04-241-3/+34
|
* forgot to set this.Jonathan Blandford2005-04-241-1/+1
| | | | | | Sun Apr 24 01:37:39 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-view.c (ev_view_init): forgot to set this.
* Fix links for dual/continuous. Also, add a quick fix measuring of widths.Jonathan Blandford2005-04-241-44/+38
| | | | | | | | | | | | | | | 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.
* Fix crash on exit and scrolling to pageNickolay V. Shmyrev2005-04-231-9/+33
|
* Add Continuous and Dual page modes.Jonathan Blandford2005-04-231-133/+802
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Remove unnecessary locking.Kristian Høgsberg2005-04-221-4/+0
| | | | | | | 2005-04-22 Kristian Høgsberg <krh@redhat.com> * shell/ev-view.c (highlight_find_results): Remove unnecessary locking.
* Fix find on single page documentsMarco Pesenti Gritti2005-04-221-2/+2
| | | | | | | | | 2005-04-22 Marco Pesenti Gritti <mpg@redhat.com> * pdf/ev-poppler.cc: * shell/ev-view.c: (highlight_find_results): Fix find on single page documents
* Fix normal size zoom. Make zoom in/zoom out unsensitive when they areMarco Pesenti Gritti2005-04-221-1/+27
| | | | | | | | | | | | | | | | 2005-04-22 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (ev_view_can_zoom_in), (ev_view_can_zoom_out), (ev_view_zoom_out), (ev_view_zoom_normal): * shell/ev-view.h: * shell/ev-window.c: (update_action_sensitivity), (ev_window_cmd_view_best_fit), (ev_window_cmd_view_page_width), (ev_window_cmd_view_zoom_in), (ev_window_cmd_view_zoom_out), (ev_window_cmd_view_normal_size): Fix normal size zoom. Make zoom in/zoom out unsensitive when they are behyond the limits. Tweak MAX_ZOOM to 6, sucks but better than oom.
* actually remove the job.Jonathan Blandford2005-04-221-27/+27
| | | | | | | | | | 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.
* Minor cleanups removing some dead code.Jonathan Blandford2005-04-161-38/+28
| | | | | | | | | | | Sat Apr 16 18:53:47 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-sidebar-links.c: (selection_changed_cb): * shell/ev-view.c: (ev_view_finalize), (go_to_link), (ev_view_button_release_event), (ev_view_set_document): * shell/ev-view.h: * shell/ev-window.c: (find_bar_search_changed_cb): * shell/ev-window.h: Minor cleanups removing some dead code.
* Allow setting view spacing, default to 0Marco Pesenti Gritti2005-04-161-1/+14
| | | | | | | | | | | | | | 2005-04-16 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (ev_view_set_spacing), (ev_view_init): * shell/ev-view.h: Allow setting view spacing, default to 0 * shell/ev-window.c: (ev_window_unfullscreen), (ev_window_cmd_view_fullscreen), (ev_window_init): Remove spacing in fullscreen mode
* Do not draw the border in fulscreenMarco Pesenti Gritti2005-04-161-6/+34
| | | | | | | | | | | | | 2005-04-16 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (compute_border), (compute_zoom_factor), (ev_view_size_request), (expose_bin_window), (ev_view_set_show_border), (ev_view_init), (page_changed_cb): * shell/ev-view.h: * shell/ev-window.c: (ev_window_unfullscreen), (ev_window_cmd_view_fullscreen): Do not draw the border in fulscreen
* Rework border calculation, so that I can more easily disable it. CodeMarco Pesenti Gritti2005-04-161-39/+32
| | | | | | | | | | | 2005-04-16 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (ev_view_get_offsets), (compute_zoom_factor), (ev_view_size_request), (expose_bin_window), (ev_view_select_all), (find_page_at_location), (page_changed_cb): Rework border calculation, so that I can more easily disable it. Code somewhat cleaner too.
* Rework sizing to deal with documents with not uniform page size.Marco Pesenti Gritti2005-04-151-53/+55
| | | | | | | | | | | 2005-04-15 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (compute_zoom_factor), (ev_view_size_request), (page_changed_cb), (ev_view_zoom), (ev_view_zoom_in), (ev_view_zoom_out), (ev_view_set_size): Rework sizing to deal with documents with not uniform page size.
* Fix the crash when trying to copy in backends that doesnt support it. WeMarco Pesenti Gritti2005-04-141-0/+8
| | | | | | | | | | | | | | | | | | | | | 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-12/+29
| | | | and scrolling up with Shift + Space
* Check that the document supports findMarco Pesenti Gritti2005-04-081-1/+1
| | | | | | | | | 2005-04-08 Marco Pesenti Gritti <mpg@redhat.com> * shell/ev-view.c: (ev_view_can_find_next): * shell/ev-window.c: (ev_window_setup_document): Check that the document supports find
* Add Edit->Find NextMarco Pesenti Gritti2005-04-081-0/+16
| | | | | | | | | | | | | 2005-04-08 Marco Pesenti Gritti <mpg@redhat.com> * data/evince-ui.xml: * shell/ev-view.c: (ev_view_can_find_next): * shell/ev-view.h: * shell/ev-window.c: (update_action_sensitivity), (find_changed_cb), (ev_window_setup_document), (ev_window_cmd_edit_find_next): Add Edit->Find Next
* Make searching work again.Kristian Høgsberg2005-04-051-39/+45
| | | | | | | | | | | | | | | | | | | 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.
* Patch from Alberto Mesas <amesas@gmail.com> to make F1 bring upJonathan Blandford2005-04-031-41/+105
| | | | | | | | | | | | | | | | | | | | | Sat Apr 2 18:57:00 2005 Jonathan Blandford <jrb@redhat.com> * shell/evwindow.c: Patch from Alberto Mesas <amesas@gmail.com> to make F1 bring up non-existent help. * shell/eggfindbar.c: Patch from Christian Persch to sync to epiphany's find bar, #167477 * shell/ev-view.c (ev_view_jump): Patch from Emil Soleyman-Zomalan <emil@nishra.com> to add space-bar scrolling, * shell/ev-window.c (static GtkActionEntry entries): add default keybinding for Help (F1) Fixes #171068 * shell/ev-view.c (ev_view_show_cursor): Fix from Yuval Tanny changing EV_VIEW_CURSOR_LINK to EV_VIEW_CURSOR_NORMAL resolves bug 170110
* Implement search based on poppler_page_find_text(). Currently a bit crudeKristian Høgsberg2005-04-011-12/+13
| | | | | | | | | | | | | | | 2005-04-01 Kristian Høgsberg <krh@redhat.com> * pdf/ev-poppler.cc: Implement search based on poppler_page_find_text(). Currently a bit crude since we remember all matches from all pages. Also, we grab the big document lock when we search since searching changes the underlying stream and thus conflicts with the rendering thread. * shell/ev-view.c: (draw_rubberband), (highlight_find_results), (jump_to_find_page), (ev_view_set_document), (ev_view_find_next), (ev_view_find_previous): Fix some page indexes to be 0 based, offset rubber band by view offset,
* Changed to use page labels now. Rewrote completely because I didn'tJonathan Blandford2005-04-011-1/+1
| | | | | | | | | | | 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-311-5/+6
| | | | | | | | | | | | | | | | | | | | | | | 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-311-17/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-149/+193
|
* Do not cache offsets in size_allocate.Marco Pesenti Gritti2005-02-241-29/+46
| | | | | | | | | | | 2005-02-24 Marco Pesenti Gritti <marco@gnome.org> * shell/ev-view.c: (ev_view_get_offsets), (view_rect_to_doc_rect), (doc_rect_to_view_rect), (ev_view_size_allocate), (expose_bin_window), (ev_view_select_all), (page_changed_callback), (scale_changed_callback): Do not cache offsets in size_allocate.
* Calculate offsets before calling the parent class (which does a redraw)Marco Pesenti Gritti2005-02-241-5/+5
| | | | | | | | | 2005-02-24 Marco Pesenti Gritti <marco@gnome.org> * shell/ev-view.c: (ev_view_size_allocate): Calculate offsets before calling the parent class (which does a redraw)
* Separate page/scale notificationsMarco Pesenti Gritti2005-02-241-99/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Give translators more flexibility with ngettext plural handling.Tommi Vainikainen2005-02-231-1/+6
| | | | | | | 2005-02-23 Tommi Vainikainen <thv@iki.fi> * shell/ev-view.c (update_find_status_message): Give translators more flexibility with ngettext plural handling.
* Fixup selection offset calculationMarco Pesenti Gritti2005-02-211-26/+72
| | | | | | | | | | | | | | | | 2005-02-21 Marco Pesenti Gritti <marco@gnome.org> * pdf/xpdf/pdf-document.cc: Fixup selection offset calculation * shell/ev-view.c: (view_rect_to_doc_rect), (doc_rect_to_view_rect), (ev_view_size_allocate), (expose_bin_window), (ev_view_select_all), (ev_view_copy), (ev_view_primary_get_cb), (ev_view_motion_notify_event): Store selection as document relative, so that zooming and offset changing doesnt break it.
* Do not try to best fit if the view is not realizedMarco Pesenti Gritti2005-02-211-1/+1
| | | | | | | | 2005-02-21 Marco Pesenti Gritti <marco@gnome.org> * shell/ev-view.c: (ev_view_best_fit): Do not try to best fit if the view is not realized
* Change the fullscreen toolbar to always be in the popup window. ThatJonathan Blandford2005-02-181-1/+5
| | | | | | | | | | | | | | Fri Feb 18 15:32:57 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-window.c: Change the fullscreen toolbar to always be in the popup window. That prevents it resizing when in full screen mode. * shell/ev-view.c: Change Zoom epsilon as a bad hack to avoid multiple rerenders. This pretty much sucks. * data/evince-ui.xml: Change the fullscreen toolbar to include the rest of the toolbar.
* Automatically hide the fullscreen button. Patch by Kristian HøgsbergMarco Pesenti Gritti2005-02-161-10/+47
| | | | | | | | | | | | | | | | | | | | 2005-02-16 Marco Pesenti Gritti <marco@gnome.org> * shell/ev-view.c: (ev_view_realize), (highlight_find_results), (ev_view_create_invisible_cursor), (ev_view_set_cursor), (set_document_page), (document_changed_callback), (ev_view_set_document), (ev_view_find_previous), (ev_view_hide_cursor), (ev_view_show_cursor): * shell/ev-view.h: * shell/ev-window.c: (update_chrome_visibility), (fullscreen_timeout_cb), (fullscreen_set_timeout), (fullscreen_clear_timeout), (fullscreen_motion_notify_cb), (fullscreen_leave_notify_cb), (ev_window_fullscreen), (ev_window_unfullscreen): * shell/main.c: (main): Automatically hide the fullscreen button. Patch by Kristian Høgsberg <krh@redhat.com>
* get rid of the black flash.Jonathan Blandford2005-02-161-0/+2
| | | | | | Wed Feb 16 06:30:13 2005 Jonathan Blandford <jrb@redhat.com> * shell/ev-view.c (ev_view_realize): get rid of the black flash.
* New function to canonicalize sizing/painting a border.Jonathan Blandford2005-02-161-59/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* add parameters providing allocation width and height without scrollbarsMartin Kretzschmar2005-02-151-9/+32
| | | | | | | | | | | | | | | | | * shell/ev-view.c (ev_view_best_fit, ev_view_fit_width): add parameters providing allocation width and height without scrollbars and width of a possible vertical scrollbar. With this additional information the functions can work as intended. Unfortunately they're not idempotent. We should transform these commands to toggles. Fixes Bug #164976 Initial patch by Stephane Loeuillet, then heavily modified. * shell/ev-view.h: update prototypes. * shell/ev-window.c (ev_window_cmd_view_best_fit) (ev_window_cmd_view_page_width): provide EvView fit functions with all the information they need. Formulas to calculate this information taken from GtkScrolledWindow.
* Fix compilation on non-gcc platformsMarco Pesenti Gritti2005-02-091-2/+2
| | | | | | | | | | | | | | | | 2005-02-09 Marco Pesenti Gritti <marco@gnome.org> * lib/ev-debug.c: * lib/ev-debug.h: * ps/ps-document.c: (ps_document_finalize), (set_up_page), (start_interpreter), (stop_interpreter), (document_load), (ps_document_next_page), (ps_document_goto_page), (ps_document_set_page_size), (ps_document_widget_event), (ps_document_render): * shell/ev-page-view.c: (ev_page_view_dispose): * shell/ev-view.c: (ev_view_finalize), (expose_bin_window): Fix compilation on non-gcc platforms
* Solve more refs issues.Marco Pesenti Gritti2005-02-071-0/+2
| | | | | | | | | | | | | | | | | | 2005-02-07 Marco Pesenti Gritti <marco@gnome.org> * shell/ev-page-view.c: (ev_page_view_dispose): * shell/ev-view.c: (ev_view_finalize): * shell/ev-window.c: (ev_window_setup_document), (ev_window_dispose), (ev_window_init): Solve more refs issues. I commented out the page_view initialization for now: it was never destroyed (because it's never added to a container). Because of that we was leaking gs processes. Couldnt think to a clean fix. We need to figure this out, password view has the same issue probably.
* Add debugging helpersMarco Pesenti Gritti2005-02-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-02-07 Marco Pesenti Gritti <marco@gnome.org> * Makefile.am: * configure.ac: * doc/debugging.txt: * lib/.cvsignore: * lib/Makefile.am: * lib/ev-debug.c: (log_module), (trap_handler), (ev_debug_init), (ev_profiler_new), (ev_should_profile), (ev_profiler_dump), (ev_profiler_free), (ev_profiler_start), (ev_profiler_stop): * lib/ev-debug.h: Add debugging helpers * ps/Makefile.am: * ps/ps-document.c: (set_up_page), (start_interpreter), (stop_interpreter), (document_load), (ps_document_next_page), (ps_document_goto_page), (ps_document_set_page_size), (ps_document_widget_event), (ps_document_render): * shell/Makefile.am: * shell/ev-view.c: (expose_bin_window): * shell/main.c: (main): Add some logs