}
view->end_page = i;
- } else if (found) {
+ } else if (found && view->current_page <= view->end_page) {
break;
}
}
if (view->cursor == EV_VIEW_CURSOR_HIDDEN)
return;
+
+ if (view->drag_info.in_drag) {
+ if (view->cursor != EV_VIEW_CURSOR_DRAG)
+ ev_view_set_cursor (view, EV_VIEW_CURSOR_DRAG);
+ return;
+ }
link = ev_view_get_link_at_location (view, x, y);
}
gtk_widget_queue_draw (widget);
+ } else if ((field = ev_view_get_form_field_at_location (view, event->x, event->y))) {
+ ev_view_remove_all (view);
+ ev_view_handle_form_field (view, field, event->x, event->y);
} else if (!location_in_text (view, event->x + view->scroll_x, event->y + view->scroll_y) &&
(image = ev_view_get_image_at_location (view, event->x, event->y))) {
if (view->image_dnd_info.image)
view->image_dnd_info.start.x = event->x + view->scroll_x;
view->image_dnd_info.start.y = event->y + view->scroll_y;
- } else if ((field = ev_view_get_form_field_at_location (view, event->x, event->y))) {
- ev_view_remove_all (view);
- ev_view_handle_form_field (view, field, event->x, event->y);
} else {
ev_view_remove_all (view);
GdkEventButton *event)
{
EvView *view = EV_VIEW (widget);
- EvLink *link;
+ EvLink *link = NULL;
+
+ view->drag_info.in_drag = FALSE;
+ view->image_dnd_info.in_drag = FALSE;
if (view->pressed_button == 2) {
- ev_view_set_cursor (view, EV_VIEW_CURSOR_NORMAL);
+ ev_view_handle_cursor_over_xy (view, event->x, event->y);
}
if (view->document && view->pressed_button != 3) {
link = ev_view_get_link_at_location (view, event->x, event->y);
- } else {
- link = NULL;
}
view->pressed_button = -1;
- view->drag_info.in_drag = FALSE;
- view->image_dnd_info.in_drag = FALSE;
if (view->selection_scroll_id) {
g_source_remove (view->selection_scroll_id);
ev_view_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event)
{
EvView *view = EV_VIEW (widget);
-
- if (view->cursor == EV_VIEW_CURSOR_LINK ||
- view->cursor == EV_VIEW_CURSOR_IBEAM)
+
+ if (view->cursor != EV_VIEW_CURSOR_NORMAL)
ev_view_set_cursor (view, EV_VIEW_CURSOR_NORMAL);
#if !GTK_CHECK_VERSION (2, 11, 7)