diff options
author | Carlos Garcia Campos <carlosgc@gnome.org> | 2007-08-31 20:37:24 (GMT) |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@src.gnome.org> | 2007-08-31 20:37:24 (GMT) |
commit | 982600bbceb76a22d5c7b3e0cbe6e20421105ad6 (patch) | |
tree | 1d233d670a447357a7d41044660881e4475f2658 /shell/ev-pixbuf-cache.c | |
parent | f76fa765536d1f5875699606d0a78c6f132fce1e (diff) |
Add support for double and triple click selections.
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
Diffstat (limited to 'shell/ev-pixbuf-cache.c')
-rw-r--r-- | shell/ev-pixbuf-cache.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/shell/ev-pixbuf-cache.c b/shell/ev-pixbuf-cache.c index 951decb..4605491 100644 --- a/shell/ev-pixbuf-cache.c +++ b/shell/ev-pixbuf-cache.c @@ -1,7 +1,6 @@ #include "ev-pixbuf-cache.h" #include "ev-job-queue.h" #include "ev-page-cache.h" -#include "ev-selection.h" #include "ev-document-images.h" #include "ev-document-forms.h" #include "ev-image.h" @@ -26,9 +25,10 @@ typedef struct _CacheJobInfo /* Selection data. * Selection_points are the coordinates encapsulated in selection. * target_points is the target selection size. */ - EvRectangle selection_points; - EvRectangle target_points; - gboolean points_set; + EvRectangle selection_points; + EvRectangle target_points; + EvSelectionStyle selection_style; + gboolean points_set; cairo_surface_t *selection; GdkRegion *selection_region; @@ -646,6 +646,7 @@ add_job (EvPixbufCache *pixbuf_cache, job_info->rc, width, height, &(job_info->target_points), + job_info->selection_style, text, base, include_forms, include_links, @@ -1021,6 +1022,7 @@ ev_pixbuf_cache_get_selection_surface (EvPixbufCache *pixbuf_cache, job_info->selection_region = ev_selection_get_selection_region (EV_SELECTION (pixbuf_cache->document), job_info->rc, + job_info->selection_style, &(job_info->target_points)); gtk_widget_ensure_style (pixbuf_cache->view); @@ -1031,6 +1033,7 @@ ev_pixbuf_cache_get_selection_surface (EvPixbufCache *pixbuf_cache, job_info->rc, &(job_info->selection), &(job_info->target_points), old_points, + job_info->selection_style, text, base); job_info->selection_points = job_info->target_points; ev_document_doc_mutex_unlock (); @@ -1046,6 +1049,7 @@ update_job_selection (CacheJobInfo *job_info, { job_info->points_set = TRUE; job_info->target_points = selection->rect; + job_info->selection_style = selection->style; } static void |