forked from enlightenment/enlightenment
fix on hold events for selection by scrollframe in e if thumbscroll is
off. SVN revision: 78674
This commit is contained in:
parent
aa1da25166
commit
3eb7dfc04e
|
@ -658,24 +658,28 @@ _e_smart_event_mouse_move(void *data, Evas *e, Evas_Object *obj __UNUSED__, void
|
||||||
(e_config->thumbscroll_threshhold *
|
(e_config->thumbscroll_threshhold *
|
||||||
e_config->thumbscroll_threshhold)))
|
e_config->thumbscroll_threshhold)))
|
||||||
{
|
{
|
||||||
if (!sd->down.dragged)
|
if ((e_config->thumbscroll_enable) ||
|
||||||
evas_event_feed_hold(e, 1, ev->timestamp, ev->data);
|
(sd->thumbscroll.forced))
|
||||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
|
||||||
sd->down.dragged = 1;
|
|
||||||
x = sd->down.sx - (ev->cur.canvas.x - sd->down.x);
|
|
||||||
y = sd->down.sy - (ev->cur.canvas.y - sd->down.y);
|
|
||||||
if ((sd->down.dir_x) || (sd->down.dir_y))
|
|
||||||
{
|
{
|
||||||
if (!sd->down.locked)
|
if (!sd->down.dragged)
|
||||||
|
evas_event_feed_hold(e, 1, ev->timestamp, ev->data);
|
||||||
|
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||||
|
sd->down.dragged = 1;
|
||||||
|
x = sd->down.sx - (ev->cur.canvas.x - sd->down.x);
|
||||||
|
y = sd->down.sy - (ev->cur.canvas.y - sd->down.y);
|
||||||
|
if ((sd->down.dir_x) || (sd->down.dir_y))
|
||||||
{
|
{
|
||||||
sd->down.locked_x = x;
|
if (!sd->down.locked)
|
||||||
sd->down.locked_y = y;
|
{
|
||||||
sd->down.locked = 1;
|
sd->down.locked_x = x;
|
||||||
|
sd->down.locked_y = y;
|
||||||
|
sd->down.locked = 1;
|
||||||
|
}
|
||||||
|
if (sd->down.dir_x) y = sd->down.locked_y;
|
||||||
|
else x = sd->down.locked_x;
|
||||||
}
|
}
|
||||||
if (sd->down.dir_x) y = sd->down.locked_y;
|
e_scrollframe_child_pos_set(sd->smart_obj, x, y);
|
||||||
else x = sd->down.locked_x;
|
|
||||||
}
|
}
|
||||||
e_scrollframe_child_pos_set(sd->smart_obj, x, y);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue