This minor release includes several API additions to BottomSheet, Dialogs, and NavigationDrawer, along with a bug fix to Snackbar and improved Buttons documentation.
## New deprecations
MDCSemanticColorScheme's `init` was deprecated. Please use initWithDefaults: instead.
## New features
### Creating a Dialog with attributed text
```objc
NSAttributedString *attributedStr =
[[NSAttributedString alloc] initWithString:@"attributed message" attributes:@{}];
self.attributedAlert = [MDCAlertController alertControllerWithTitle:@"title"
attributedMessage:attributedStr];
```
### Positioning subviews of a Dialog
The default insets of dialogs work well for the majority of use cases. Use the adjustable insets APIs to accommodate special use cases:
```objc
// Get a reference to the alert's view.
MDCAlertControllerView *alertView =
(MDCAlertControllerView *)mdcAlertController.view;
// Set the insets of the alert's title icon:
alertView.titleIconInsets = UIEdgeInsetsMake(10.0f, 10.0f, 10.0f, 10.0f);
// Set the insets of the alert's title:
alertView.titleInsets = UIEdgeInsetsMake(10.0f, 10.0f, 10.0f, 10.0f);
// Set the insets of the alert's content:
alertView.contentInsets = UIEdgeInsetsMake(10.0f, 10.0f, 10.0f, 10.0f);
// Set the insets of the insets's actions:
alertView.actionsInsets = UIEdgeInsetsMake(10.0f, 10.0f, 10.0f, 10.0f);
```
## API changes
The following properties were added to `MDCAlertController`:
* `titleIconAlignment`
* `attributedMessage`
`MDCAlertController` also has a new initializer:
* `alertControllerWithTitle:attributedMessage:`
The following previously private `MDCAlertControllerView` properties are now exposed:
* `titleIconInset`
* `titleInsets`
* `contentInsets`
* `actionsInsets`
* `actionsHorizontalMargin`
* `actionsVerticalMargin`
* `accessoryViewVerticalInset`
## Component changes
### BottomSheet
* [Give MDCBottomSheetPresentationController an opt-in mechanism to propagate presentingViewController safeAreaInsets to the presentedViewController.](3b7dfcd48c) (Andrew Overton)
### Buttons
* [Internal change.](d11159f59c) (Jeff Verkoeyen)
* [Replace Buttons documentation](91595a819a) (Andrew Overton)
### Chips
* [Allow ending touch animation to proceed if chip is disabled on tap.](a23ac94062) (Bryan Oltman)
### Dialogs
* [Add support for attributed dialog message text](19a973ff44) (Vladimir Pomsztein)
* [Calculate title Insets independently of content insets (resolve scuba diff)](6b790fe2e1) (Galia Kaufman)
* [Calculate title Insets independently of content insets](144b2f61dc) (Galia Kaufman)
* [Moving static c helper functions outside of test classes.](8c7be049e9) (Galia Kaufman)
* [Publish Adjustable Insets API](a477732a95) (Galia Kaufman)
* [Publish Customize API](2a0d0febc5) (Galia Kaufman)
* [Remove the logic that sets accessibilityFrame manually on messageLabel.](db06c081c3) (Wenyu Zhang)
* [Rollback of PR #9877 to fix the message text disappearing on device rotation when voiceover is active.](75fc33afc2) (Galia Kaufman)
* [Support custom alignment for the title image (independent of title)](a4d690cb1c) (Galia Kaufman)
* [snapshot test for custom insets.](0c1910ec64) (Galia Kaufman)
### NavigationDrawer
* [Update `MDCBottomDrawerContainerViewController` to account for non-full screen presentation styles when the content is large enough to scroll to fullscreen, by adjusting the container and scroll view height rather than just adjusting the scroll view offset.](a7451b084c) (Jake Rockland)
### ProgressView
* [Adding default accessibility label](a8a560da42) (Yarden Eitan)
### Snackbar
* [Add additional nil checks in SnackBar display/dismissal](5a03fc07ab) (Andrew Overton)
* [Only use self.snackbarView for dismissing snackbars, not presenting them](1d30c3ee1f) (Andrew Overton)
### Tabs
* [Have an option in MDCTabBarView to not adjust for safe are insets (default is to adjust).](27d333c749) (Alvin Wong)
### TextFields
* [Update TextFields docs](d26c963b75) (Andrew Overton)
### schemes/Color
* [Mark init as deprecated.](086c1d590e) (Cody Weaver)
## Multi-component changes
* [Remove usage of `init` within MDC.](fdf87c5995) (Cody Weaver)
PiperOrigin-RevId: 303812657
In #9776 we removed the DialogThemer but did not remove it from the CocoaPods podspec file. This causes pod validation to fail rather than reverting #9776 we should remove this target from the podspec.
This PR adds the TextControl filled text areas, as well as their theming extensions, and a bunch of unit tests. Snapshot tests to follow.
Related to #9407.
This PR adds the TextControl outlined text areas, as well as their theming extensions, and a bunch of unit tests. Snapshot tests to follow.
Related to #9407.
These commits were accidentally added to stable due to a `git pull` command.
```
git reset --hard v104.0.1
git reset --soft e2252009a850ea6d5e2a02efaa2add2f7f295aac
git commit
```
https://github.com/material-components/material-components-ios/pull/9711 causes the library to fail pod lib lint validations because there are currently no source files in the test spec. This will of course change very soon but in case there's a release before it does we should land this PR.
Related to #9407.