diff options
author | Hosang Kim <hosang12.kim@samsung.com> | 2017-07-20 15:21:34 +0900 |
---|---|---|
committer | Jean-Philippe Andre <jp.andre@samsung.com> | 2017-07-20 15:28:32 +0900 |
commit | 05e3e450e5ecb67f80c1be3df8ab7a08e8d33da2 (patch) | |
tree | 9dd2b3d780d270f9d9567806f22e4680c372347c | |
parent | 7243b71a19500e72780dc684bd7b2094b9bd5050 (diff) | |
download | efl-05e3e450e5ecb67f80c1be3df8ab7a08e8d33da2.tar.gz |
slider: fix jumping handler bug.
Summary:
Actual slider value is not changed.
So when user release mouse or touch, slider value is returned
to the value by user set.
This is a partial revert of f41e2761608fff7b070d630a738
Fixes T5745
Test Plan: elementary_test -> slider
Reviewers: jpeg
Subscribers: cedric
Maniphest Tasks: T5745
Differential Revision: https://phab.enlightenment.org/D5031
-rw-r--r-- | src/bin/elementary/test_slider.c | 5 | ||||
-rw-r--r-- | src/lib/edje/edje_calc.c | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/bin/elementary/test_slider.c b/src/bin/elementary/test_slider.c index 68e3f884ef..8a84926dbb 100644 --- a/src/bin/elementary/test_slider.c +++ b/src/bin/elementary/test_slider.c @@ -79,6 +79,11 @@ _change_cb2(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) elm_slider_value_set(obj, 80.0); _popup_add(api); } + else if (api->popup) + { + evas_object_del(api->popup); + api->popup = NULL; + } } void diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c index 1bad0321cc..4ec2d0288a 100644 --- a/src/lib/edje/edje_calc.c +++ b/src/lib/edje/edje_calc.c @@ -1075,6 +1075,7 @@ _edje_dragable_pos_set(Edje *ed, Edje_Real_Part *ep, FLOAT_T x, FLOAT_T y) Evas_Coord ex = 0, ey = 0; /* check whether this part is dragable at all */ if (!ep->drag) return; + if (ep->drag->down.count > 0) return; /* instead of checking for equality, we really should check that * the difference is greater than foo, but I have no idea what @@ -1085,8 +1086,6 @@ _edje_dragable_pos_set(Edje *ed, Edje_Real_Part *ep, FLOAT_T x, FLOAT_T y) if (NEQ(ep->drag->x, x) || ep->drag->tmp.x) { - if (ep->drag->down.count > 0) - ep->drag->down.x = ex; ep->drag->x = x; ep->drag->tmp.x = 0; ep->drag->need_reset = 0; @@ -1096,8 +1095,6 @@ _edje_dragable_pos_set(Edje *ed, Edje_Real_Part *ep, FLOAT_T x, FLOAT_T y) if (NEQ(ep->drag->y, y) || ep->drag->tmp.y) { - if (ep->drag->down.count > 0) - ep->drag->down.y = ey; ep->drag->y = y; ep->drag->tmp.y = 0; ep->drag->need_reset = 0; |