aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHosang Kim <hosang12.kim@samsung.com>2017-07-20 15:21:34 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-07-20 15:28:32 +0900
commit05e3e450e5ecb67f80c1be3df8ab7a08e8d33da2 (patch)
tree9dd2b3d780d270f9d9567806f22e4680c372347c
parentevas: Restore flag pre_render_done in render_mapped (diff)
downloadefl-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 https://phab.enlightenment.org/T5745 Test Plan: elementary_test -> slider Reviewers: jpeg Subscribers: cedric Maniphest Tasks: https://phab.enlightenment.org/T5745 Differential Revision: https://phab.enlightenment.org/D5031
-rw-r--r--src/bin/elementary/test_slider.c5
-rw-r--r--src/lib/edje/edje_calc.c5
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;