summaryrefslogtreecommitdiff
path: root/legacy
diff options
context:
space:
mode:
Diffstat (limited to 'legacy')
-rw-r--r--legacy/elementary/src/lib/els_scroller.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/legacy/elementary/src/lib/els_scroller.c b/legacy/elementary/src/lib/els_scroller.c
index bb26075905..de96703014 100644
--- a/legacy/elementary/src/lib/els_scroller.c
+++ b/legacy/elementary/src/lib/els_scroller.c
@@ -1623,17 +1623,20 @@ _smart_event_wheel(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__,
1623 Evas_Event_Mouse_Wheel *ev; 1623 Evas_Event_Mouse_Wheel *ev;
1624 Smart_Data *sd; 1624 Smart_Data *sd;
1625 Evas_Coord x = 0, y = 0; 1625 Evas_Coord x = 0, y = 0;
1626 int direction = 0;
1626 1627
1627 sd = data; 1628 sd = data;
1628 ev = event_info; 1629 ev = event_info;
1630 direction = ev->direction;
1629 if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return ; 1631 if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return ;
1630 if ((evas_key_modifier_is_set(ev->modifiers, "Control")) || 1632 if ((evas_key_modifier_is_set(ev->modifiers, "Control")) ||
1631 (evas_key_modifier_is_set(ev->modifiers, "Alt")) || 1633 (evas_key_modifier_is_set(ev->modifiers, "Alt")) ||
1632 (evas_key_modifier_is_set(ev->modifiers, "Shift")) ||
1633 (evas_key_modifier_is_set(ev->modifiers, "Meta")) || 1634 (evas_key_modifier_is_set(ev->modifiers, "Meta")) ||
1634 (evas_key_modifier_is_set(ev->modifiers, "Hyper")) || 1635 (evas_key_modifier_is_set(ev->modifiers, "Hyper")) ||
1635 (evas_key_modifier_is_set(ev->modifiers, "Super"))) 1636 (evas_key_modifier_is_set(ev->modifiers, "Super")))
1636 return; 1637 return;
1638 else if (evas_key_modifier_is_set(ev->modifiers, "Shift"))
1639 direction = 1;
1637 elm_smart_scroller_child_pos_get(sd->smart_obj, &x, &y); 1640 elm_smart_scroller_child_pos_get(sd->smart_obj, &x, &y);
1638 if ((sd->down.bounce_x_animator) || (sd->down.bounce_y_animator) || 1641 if ((sd->down.bounce_x_animator) || (sd->down.bounce_y_animator) ||
1639 (sd->scrollto.x.animator) || (sd->scrollto.y.animator)) 1642 (sd->scrollto.x.animator) || (sd->scrollto.y.animator))
@@ -1666,9 +1669,9 @@ _smart_event_wheel(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__,
1666 if (sd->child.resized) 1669 if (sd->child.resized)
1667 _elm_smart_scroller_wanted_region_set(sd->smart_obj); 1670 _elm_smart_scroller_wanted_region_set(sd->smart_obj);
1668 } 1671 }
1669 if (!ev->direction) 1672 if (!direction)
1670 y += ev->z * sd->step.y; 1673 y += ev->z * sd->step.y;
1671 else if (ev->direction == 1) 1674 else if (direction == 1)
1672 x += ev->z * sd->step.x; 1675 x += ev->z * sd->step.x;
1673 1676
1674 if ((!sd->hold) && (!sd->freeze)) 1677 if ((!sd->hold) && (!sd->freeze))