[datetime_popup] Fix value min, max does not be set when text is set by entry.
authorYoungbok Shin <youngb.shin@samsung.com>
Fri, 2 Aug 2013 13:19:19 +0000 (22:19 +0900)
committerSungho Kwak <sungho1.kwak@samsung.com>
Tue, 6 Aug 2013 05:17:47 +0000 (14:17 +0900)
Change-Id: Ida41deeae3e8e8e30d3f52a858c9d97b5564872e

Conflicts:

packaging/elementary.spec

src/modules/datetime_input_popup/datetime_input_popup.c

index 81899b4..4d59622 100644 (file)
@@ -314,12 +314,14 @@ _datepicker_value_changed_cb(void *data, Evas_Object *obj, void *event_info __UN
    field_idx = idx;
    DATETIME_MODULE_TM_ARRAY(set_val_arr, &popup_mod->set_time);
    if (field_idx == ELM_DATETIME_YEAR)
-     *set_val_arr[field_idx] = (int)elm_spinner_value_get(obj) + STRUCT_TM_YEAR_BASE_VALUE;
+     *set_val_arr[field_idx] = (int)elm_spinner_value_get(obj) - STRUCT_TM_YEAR_BASE_VALUE;
    else if (field_idx == ELM_DATETIME_MONTH)
      *set_val_arr[field_idx] = (int)elm_spinner_value_get(obj) - 1;
    else
      *set_val_arr[field_idx] = (int)elm_spinner_value_get(obj);
 
+   elm_datetime_value_set(popup_mod->mod_data.base, &(popup_mod->set_time));
+
    popup_mod->mod_data.fields_min_max_get(popup_mod->mod_data.base,
                        &(popup_mod->set_time), &min_values, &max_values);
 
@@ -969,14 +971,18 @@ _create_datepicker_layout(Popup_Module_Data *popup_mod)
        elm_spinner_label_format_set(spinner, "%02.0f");
        snprintf(buf, sizeof(buf), "field%d", idx);
        elm_object_part_content_set(popup_mod->datepicker_layout, buf, spinner);
+
+       if (idx == ELM_DATETIME_YEAR)
+         elm_spinner_min_max_set(spinner, 1902, 2037);
+       else if (idx == ELM_DATETIME_MONTH)
+         elm_spinner_min_max_set(spinner, 1, 12);
+       else if (idx == ELM_DATETIME_DATE)
+         elm_spinner_min_max_set(spinner, 1, 31);
+
        evas_object_smart_callback_add(spinner, "changed", _datepicker_value_changed_cb, popup_mod);
        popup_mod->popup_field[idx] = spinner;
      }
 
-   elm_spinner_min_max_set(popup_mod->popup_field[ELM_DATETIME_YEAR], 1902, 2037);
-   elm_spinner_min_max_set(popup_mod->popup_field[ELM_DATETIME_MONTH], 1, 12);
-   elm_spinner_min_max_set(popup_mod->popup_field[ELM_DATETIME_DATE], 1, 31);
-
    _set_month_special_values(popup_mod);
    _set_datepicker_entry_filter(popup_mod);
 }