Date & Time 79/109579/2
authorRadek Kintop <r.kintop@samsung.com>
Tue, 10 Jan 2017 15:15:45 +0000 (16:15 +0100)
committerRadek Kintop <r.kintop@samsung.com>
Tue, 10 Jan 2017 15:18:42 +0000 (07:18 -0800)
- Fix: if out of range date had been set, time part would be affected

Change-Id: I0499e9dfbc2705952b72b26b8aba224246a1d770
Signed-off-by: Radek Kintop <r.kintop@samsung.com>
setting-time/src/setting-time-main.c

index 510e7e40eb14bb6c39efc5c22b253aa18f0cd509..9ab7beae573e4ff9c98f4bdf381e521a21623f37 100755 (executable)
@@ -519,7 +519,7 @@ typedef struct _tagParamData {
        Evas_Object *box;
 } Datefield_Paramdata;
 
-static void _datefield_set_min_max(Evas_Object *datetime)
+static void _datefield_set_min_max(Evas_Object *datetime, bool affect_time_part)
 {
        /* get the current local time */
        time_t t = time(NULL);
@@ -535,8 +535,10 @@ static void _datefield_set_min_max(Evas_Object *datetime)
        time1.tm_year = 100;
        time1.tm_mon = 1;
        time1.tm_mday = 1;
-       time1.tm_hour = 0;
-       time1.tm_min = 0;
+       if (affect_time_part) {
+               time1.tm_hour = 0;
+               time1.tm_min = 0;
+       }
        elm_datetime_value_min_set(datetime, &time1);
 }
 
@@ -602,9 +604,8 @@ static void _datefield_time_btn_clicked_cb(void *data, Evas_Object *obj,
        Datefield_Paramdata *param = (Datefield_Paramdata *)data;
 
        Evas_Object *datetime = elm_datetime_add(param->parent);
-#if 1
-       _datefield_set_min_max(datetime);
-#endif
+
+       _datefield_set_min_max(datetime, true);
 
        elm_object_style_set(datetime, "date_layout");
 
@@ -619,7 +620,6 @@ static void _datefield_time_btn_clicked_cb(void *data, Evas_Object *obj,
                        elm_datetime_format_set(datetime, "%d/%b/%Y %H:%M");
                }
        }
-
        evas_object_size_hint_align_set(datetime, 0.5, 0.5);
        evas_object_show(datetime);
 
@@ -658,9 +658,9 @@ static void _datefield_date_btn_clicked_cb(void *data, Evas_Object *obj,
        Evas_Object *datetime = elm_datetime_add(param->parent);
        elm_object_style_set(datetime, "date_layout");
        elm_datetime_format_set(datetime, "%d/%b/%Y");
-#if 1
-       _datefield_set_min_max(datetime);
-#endif
+
+       _datefield_set_min_max(datetime, false);
+
        evas_object_data_set(datetime, "popup", popup);
 
        /*--------------------------------------- */