static void
_deferred_recalc_job(void *data)
{
- Evas_Coord minh = -1, resw = -1, minw = -1, fw = 0, fh = 0;
+ // TIZEN_ONLY(20150824): Fix multiline entry calculation deferred issue.
+ //Evas_Coord minh = -1, resw = -1, minw = -1, fw = 0, fh = 0;
+ //
ELM_ENTRY_DATA_GET(data, sd);
sd->deferred_recalc_job = NULL;
+ // TIZEN_ONLY(20150824): Fix multiline entry calculation deferred issue.
+ /*
evas_object_geometry_get(sd->entry_edje, NULL, NULL, &resw, NULL);
edje_object_size_min_restricted_calc(sd->entry_edje, &minw, &minh, resw, 0);
elm_coords_finger_size_adjust(1, &minw, 1, &minh);
+ */
/* This is a hack to workaround the way min size hints are treated.
* If the minimum width is smaller than the restricted width, it
* means the minimum doesn't matter. */
+ /*
if (minw <= resw)
{
Evas_Coord ominw = -1;
evas_object_size_hint_max_set(data, -1, -1);
}
}
+ */
+ //
if (sd->deferred_cur)
{
}
else
{
+ // TIZEN_ONLY(20150824): Fix multiline entry calculation deferred issue.
+ if (resw > 0)
+ {
+ Evas_Coord fw;
+
+ edje_object_size_min_restricted_calc(sd->entry_edje, &minw, &minh, resw, 0);
+ elm_coords_finger_size_adjust(1, &minw, 1, &minh);
+
+ if (minw <= resw)
+ {
+ Evas_Coord ominw = -1;
+
+ evas_object_size_hint_min_get(obj, &ominw, NULL);
+ minw = ominw;
+ }
+
+ sd->ent_mw = minw;
+ sd->ent_mh = minh;
+
+ elm_coords_finger_size_adjust(1, &fw, 1, &minh);
+ evas_object_size_hint_min_set(obj, fw, minh);
+ evas_object_size_hint_max_set(obj, -1, -1);
+ }
+ //
ecore_job_del(sd->deferred_recalc_job);
sd->deferred_recalc_job =
ecore_job_add(_deferred_recalc_job, obj);