HomePhabricator

elm: Move elm_layout_sizing_eval to legacy

Authored by Jean-Philippe Andre <jp.andre@samsung.com> on Aug 7 2017, 12:13 AM.

Description

elm: Move elm_layout_sizing_eval to legacy

elm_layout_sizing_eval() marks an object as requiring recalc.

Unfortunately, it's been massively abused by various widgets into
actually doing the calc, or the min calc. So we end up with one API
that has 3 different definitions depending on the widget type:

  1. Mark as requiring recalc (correct, respects doc, elm_layout)
  2. Calculate min size and other size hints
  3. Actually do some geometry modification

I believe we need to clarify these 3 requirements into 3 very clear
and specific APIs in elementary. Right now we have similar functions
in evas for 1 (evas_object_smart_changed) and 3 (smart_calculate).
But their exact definition also isn't necessarily what we want for
elementary.

Another clear problem is that layout_eval does not do any calculation
(in theory), so the "eval" word is a bit of a stretch here.

Once we're sure about the exact API we want, we can add this back to
EO and make it work across our EO widgets. For now let's just keep
the legacy API, and its EO overrides, as is.

Ref T5315

Jean-Philippe Andre <jp.andre@samsung.com> committed rEFL6864495c993c: elm: Move elm_layout_sizing_eval to legacy (authored by Jean-Philippe Andre <jp.andre@samsung.com>).Aug 7 2017, 7:10 PM