From: Woochan Lee Date: Tue, 10 Oct 2017 10:57:59 +0000 (+0900) Subject: Spinner: Fix can't input number in case of min value is bigger than 1. X-Git-Tag: submit/tizen/20171020.120936~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F28%2F154528%2F2;p=platform%2Fupstream%2Felementary.git Spinner: Fix can't input number in case of min value is bigger than 1. Min Max validate logic has been changed to support decimal point counting. It makes this side effect. Change-Id: Iede1a1ee48b60680387a770eaecd68a499d9eed4 --- diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c index 421608b97..8530af611 100644 --- a/src/lib/elm_spinner.c +++ b/src/lib/elm_spinner.c @@ -607,14 +607,8 @@ _min_max_validity_filter(void *data, Evas_Object *obj, char **text) insert = *text; new_str = _text_insert(str, insert, elm_entry_cursor_pos_get(obj)); if (!new_str) return; - max_len = log10(fabs(sd->val_max)) + 1; - if (sd->format_type == SPINNER_FORMAT_INT) - { - len = strlen(new_str); - if (len < max_len) goto end; - } - else if (sd->format_type == SPINNER_FORMAT_FLOAT) + if (sd->format_type == SPINNER_FORMAT_FLOAT) { point = strchr(new_str, '.'); if (point) @@ -627,6 +621,10 @@ _min_max_validity_filter(void *data, Evas_Object *obj, char **text) } } + max_len = log10(fabs(sd->val_max)) + 1; + len = strlen(new_str); + if (len < max_len) goto end; + val = strtod(new_str, NULL); if ((val < sd->val_min) || (val > sd->val_max)) *insert = 0;