tree acfa1415168711e15013edd1b522f8c9f02030e0
parent 113eaa59c1dfafd548a13919e48c0346c0c925ac
author Romain Guy <romainguy@android.com> 1248287749 -0700
committer Romain Guy <romainguy@android.com> 1248287749 -0700

DrawableContainer was not respecting the value returned by Drawable.getPadding(Rect).

Before this change, DrawableContainer would always return true from getPadding(Rect)
even if all of its children were returning false from getPadding(Rect). This change
modifies this behavior to respect getPadding(Rect): mConstantPadding is kept null
when getPadding(Rect) returns false for all of the children and a flag is set
to avoid recomputing that value every time getConstantPadding() is invoked.
