+static gboolean
+location_in_selected_text (EvView *view,
+ gdouble x,
+ gdouble y)
+{
+ gint page = -1;
+ gint x_offset = 0, y_offset = 0;
+ EvViewSelection *selection;
+ GList *l = NULL;
+
+ for (l = view->selection_info.selections; l != NULL; l = l->next) {
+ selection = (EvViewSelection *)l->data;
+
+ find_page_at_location (view, x, y, &page, &x_offset, &y_offset);
+
+ if (page != selection->page)
+ continue;
+
+ if (selection->covered_region &&
+ gdk_region_point_in (selection->covered_region, x_offset, y_offset))
+ return TRUE;
+ }
+
+ return FALSE;
+}
+