diff options
author | WooHyun Jung <wh0705.jung@samsung.com> | 2019-03-25 08:52:10 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@samsung.com> | 2019-03-25 08:52:10 -0400 |
commit | d761658985f45c582a9d5cbc6ab6a1beada6d642 (patch) | |
tree | d058a20d10065284a2c265fb52968b5488a316ca | |
parent | 620eb070f40f398ecb180181f98469fbb6ac9dd8 (diff) | |
download | efl-d761658985f45c582a9d5cbc6ab6a1beada6d642.tar.gz |
elm_entry: fix a bug in moving the magnifier
Summary:
When moving the magnifier in elm_entry, _magnifier_move
function occured infinite loop problem by calling
evas_object_move twice with different positions.
So, I changed it to call evas_object_move once.
ref T7202
Test Plan:
1. Set profile to "mobile"
2. elementary_test
3. entry
4. long press mouse button on elm_entry
5. when the magnifier is shown, try to move it
Reviewers: zmike, bu5hm4n, bowonryu, id213sin
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7202
Differential Revision: https://phab.enlightenment.org/D8462
-rw-r--r-- | src/lib/elementary/elm_entry.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lib/elementary/elm_entry.c b/src/lib/elementary/elm_entry.c index d42f630c01..ed7035fd90 100644 --- a/src/lib/elementary/elm_entry.c +++ b/src/lib/elementary/elm_entry.c @@ -1891,9 +1891,8 @@ _magnifier_move(void *data) cx += ex; cy += ey; - //Move the Magnifier + // calculate the position of the magnifier edje_object_parts_extends_calc(sd->mgf_bg, &x, &y, &w, &h); - evas_object_move(sd->mgf_bg, cx - x - (w / 2), cy - y - h); mx = cx - x - (w / 2); my = cy - y - h; @@ -1920,9 +1919,11 @@ _magnifier_move(void *data) my = 0; if (my + mh > wh) my = wh - mh; - evas_object_move(sd->mgf_bg, mx, my); } + // move the magnifier to the proper position + evas_object_move(sd->mgf_bg, mx, my); + //Set the Proxy Render Area evas_object_geometry_get(data, &x, &y, &w, &h); evas_object_geometry_get(sd->mgf_proxy, &px, &py, &pw, &ph); |