Previously, changing the size of the text view will not have animation on the border. This change will enable the animation if there is a size change.
PiperOrigin-RevId: 445022809
Previously, changing the size of the text view will not have animation on the border. This change will enable the animation if there is a size change.
PiperOrigin-RevId: 443535273
This change introduces a new private protocol, MDCTextControlTextField, which inherits from MDCTextControl. This protocol adds one property, of a new enum, MDCTextControlTextFieldSideViewVerticalPosition. This type helps MDCBaseTextFieldLayout determine how to vertically position side views. The purpose is to allow MDCUnderlinedTextField to vertically align its side views with the text rect, as opposed to vertically centering them in the container, like the filled and outlined styles do. I'm not sure about the name `MDCTextControlTextFieldSideViewVerticalPosition`, but other ones I considered that were maybe more clear were too ridiculously long.
PiperOrigin-RevId: 316028095
This CL breaks up the MDCTextControlStyleFilled into two separate classes, MDCTextControlStyleFilled and MDCTextControlStyleUnderlined. The filled style inherits from the underlined style. There's not really any "new" code here, just cut and pasted code.
cl/314528837 (which has this CL as a diffbase) adds the MDCUnderlinedTextField itself, along with with snapshot tests.
PiperOrigin-RevId: 314982942
No visible or public API changes. Internal refactor.
This change adds the notion of a horizontal positioning reference. This will make it so that different styles can have different horizontal padding values.
Prior to this change, there was only one "horizontal padding" value. This change separates it into two values: one for the padding between leftmost and rightmost views and the left and right edges of the TextControl, and one for the padding between subviews of the TextControl. These two values live on a horizontal positioning reference object. Different styles will one day have different horizontal positioning reference objects.
For now only TextControl text fields will use this.
It's a lot of files but trivial changes in most, if not all, of them.
PiperOrigin-RevId: 314748534
This follow up PR for #9731 includes the following:
* MDCTextControlLabelState has been renamed to MDCTextControlLabelPosition
* Identical methods in MDCTextField and MDCBaseArea have been consolidated as C functions in shared locations.
* A few methods have been renamed.
* A few pragma marks have been renamed.
Related to #9407.
Some internal snapshot tests force RTL by setting the semantic content attribute. The "is RTL" logic in MDCBaseTextFields up to this point only looked at effective layout direction. This change makes it so that it checks if either RTL or LTR semantic content attributes are being forced before consulting effective layout direction.
PiperOrigin-RevId: 293201200
In certain circumstances when we update the paths of the filled style without animations we need to remove any prior animations.
PiperOrigin-RevId: 293141419