Releases: material-components/material-components-ios
v109.8.0
In this minor release we added indeterminate mode to MDCProgressView
. As well as various bug fixes to ActionSheet, Banner, Dialog, and TextFields components.
New features
MDCProgressView
now supports indeterminate mode.
MDCProgressView *progressView = [[MDCProgressView alloc] init];
progressView.mode = MDCProgressViewModeIndeterminate;
[progressView startAnimating];
API changes
Buttons
new property: defaultContentEdgeInsets
in MDCButton
ProgressView
new enum: MDCProgressViewMode
new property: mode
in MDCProgressView
new property: animating
in MDCProgressView
new method: setMode:animated:completion:
in MDCProgressView
new method: startAnimating
in MDCProgressView
new method: stopAnimating
in MDCProgressView
Component changes
ActionSheet
- Mark title as accessibility
.header
(Rob Moore)
Banner
- Support two buttons on a single row style banner. (Wenyu Zhang)
Buttons
Dialogs
- Voice over reads the message twice (Nobody)
ProgressView
Tabs
- Add explicit cast in MDCTabBarViewTests. (Wenyu Zhang)
- Internal change (Jeff Verkoeyen)
TextFields
private/TextControlsPrivate
- Rename + small refactor of horizontal positioning stuff (Andrew Overton)
Multi-component changes
v109.7.0
This minor release makes accessibility improvements related to high contrast colors, adds new functionality to Buttons, Chips, Dialogs, Snackbars, and Tabs, and adds a new TextControls text field, MDCUnderlinedTextField
, which is intended to replace MDCTextInputControllerLegacyDefault
and MDCTextInputControllerUnderline
.
New features
ActionSheet
MDCActionSheetControllerDelegate
has a new method,-actionSheetControllerDismissalAnimationCompleted:
.
Buttons
MDCFloatingButton
has a newvisibleHitAreaInsets
property.
Chips
MDCChipView
has a newcornerRadius
property.
Dialogs
MDCAlertController
has improved attributed link support.
Snackbar
MDCSnackbarMessage
has a newcompletionHandlerWithError
property.
Tabs
MDCItemBarCell
has a newselectedImage
property.
TextControls
- There is a new text field class,
MDCUnderlinedTextField
.
Component changes
ActionSheet
- Add actionSheetControllerDismissalAnimationCompleted method to MDCActionSheetControllerDelegate. (Bryan Oltman)
Banner
- Apply primary color to icon in theming. (Wenyu Zhang)
BottomNavigation
- Replace bottom navigation README (Andrew Overton)
BottomSheet
- Add BottomSheetPresentationControllerDelegateExample to demonstrate usage of MDCBottomSheetPresentationControllerDelegate. (Bryan Oltman)
- Add bottomSheetDismissalAnimationCompleted method to MDCBottomSheetPresentationController. (Bryan Oltman)
- Internal change (Bryan Oltman)
- Rename BottomSheetPresentationExample to BottomSheetModalPresentationExample to better represent its purpose. (Bryan Oltman)
- Updating BottomSheet examples organization (Nobody)
ButtonBar
- Remove excess iPad insets from the button bar buttons. (Jeff Verkoeyen)
Buttons
- Add a boolean for when observing cornerRadius so that we won't try to add 2 observers or remove a non-existent observer (Yarden Eitan)
- Add visibleAreaInsets support for the FAB. (Yarden Eitan)
- Put pointerStyleProvider API under a respondsToSelector conditional to ensure no crashes for 13.4 beta users. (Yarden Eitan)
- When visibleAreaInsets are set, don't allow additional setting of the shapeGenerator API directly. (Yarden Eitan)
Chips
Dialogs
- Adding attributed link color API and updating theming extension (Galia Kaufman)
- Annotate API using UITextItemInteraction to be iOS 10 only (Andrew Overton)
- Disable UIDataDetectorTypeLink by default for attributed messages. (Galia Kaufman)
- Fix mixed top and bottom insets for the actions. (Iryna Berezan)
- Header file comments cleanup (Galia Kaufman)
- Improve Dialogs docs Improve alt text and use string literals in Dialogs README examples. (Andrew Overton)
- Setting
orderVerticalActionsByEmphasis
incorrectly calculates top and bottom insets for actions. (Galia Kaufman)
Snackbar
- Add completion handler with error parameter to snackbar message. (Randall Li)
- Added error domain and code. (Randall Li)
- Added more information in description to Message and MessageView. (Randall Li)
- Making the an internal read write Error property for messages. (Randall Li)
- Remove the unneeded hitAreaInsets usage, and set minimumSize instead. (Yarden Eitan)
Tabs
- Add selectedImage property to MDCItemBarCell to allow MDCTabBar to support selected images. (Bryan Oltman)
- Add snapshot test to expose MDCTabBar not respecting UITabBarItem's selectedImage property. (Bryan Oltman)
TextControls
- Add underlined text field (Andrew Overton)
private/TextControlsPrivate
- Add underlined style object (Andrew Overton)
- Extract duplicated methods to C function (Andrew Overton)
- Extract some duplicated methods to C functions (Andrew Overton)
schemes/Color
- [schemes/Color]Add high contrast color to MDCColorSchemeDefaultsMaterial201907 scheme to support Increase Contrast feature. (Wenyu Zhang)
Multi-component changes
- Add notion of horizontal positioning reference (Andrew Overton)
- Adding feedback menu option (Galia Kaufman)
- Move private text fields files to TextControlsPrivate (Andrew Overton)
- Update Podspec after TextControls changes (Andrew Overton)
v109.6.0
This minor release adds new functionality to NavigationDrawer, ActionSheet, and Dialogs, and adds accessibility improvements to Buttons, Chips, and private/Color.
New deprecations
While there are no new deprecations in this release, the hitAreaInsets
APIs on MDCChipView
and MDCButton
have been moved to a ToBeDeprecated
category. hitAreaInsets
will eventually be deprecated across components. Its replacement, visibleHitAreaInsets
, is in the process of being added to all relevant components.
New features
ActionSheet
MDCActionSheetControllerDelegate
has a new method,-actionSheetController:willDisplayView:forRowAtIndexPath:
.
Buttons
MDCButton
has a newvisibleHitAreaInsets
property.
Chips
MDCChipView
has a newvisibleHitAreaInsets
property.
Dialogs
MDCAlertController
has a newattributedMessageAction
property.
NavigationDrawer
MDCBottonDrawerPresentationController
has a newmaximumDrawerHeight
property.
Component changes
ActionSheet
- internal change (Nobody)
AppBar
- Inject AppBars after view controllers have been added to the navigation controller. (Jeff Verkoeyen)
Banner
- Add example snapshot tests for verifying MDCColorSchemeDefaultsMaterial201907 color scheme. (Wenyu Zhang)
- Apply container theme in examples. (Wenyu Zhang)
Buttons
- Add a visibleAreaInsets API. (Yarden Eitan)
Chips
- Add visibleAreaInsets API to MDCChipView. (Wenyu Zhang)
Dialogs
- Adding tappable link support to the alert message (Galia Kaufman)
- replace the message UILabel type to UITextview (Galia Kaufman)
FeatureHighlight
FlexibleHeader
- Remove ShiftBehaviorWithStatusBar from the public API. (Jeff Verkoeyen)
NavigationDrawer
- Clarify
trackingScrollView
API. (Cody Weaver) - Fix bug where
maximumDrawerHeight
wouldn't allow for the correct height. (Cody Weaver) - Fix bug where setting
maximumDrawerHeight
andmaximumInitialDrawerHeight
would allow scrolling. (Cody Weaver) - Support a max height (Cody Weaver)
Shapes
- Resolve UIColor instance when it is set as shapedBackgroundColor to MDCShapedShadowLayer. (Wenyu Zhang)
Tabs
- Internal change (Jeff Verkoeyen)
private/Color
- Add colorWithAccessibilityContrastHigh:normal: API to support Increase Contrast color. (Wenyu Zhang)
Multi-component changes
v109.5.0
This minor release adds functionality to MDCSnackbarManagerDelegate and includes internal cleanup of FlexibleHeader.
New features
Snackbar
MDCSnackbarManagerDelegate has new snackbarWillDisappear
and isPresentingSnackbarWithMessageView:
methods.
Component changes
AppBar
- Fix a failing snapshot test (Galia Kaufman)
Buttons
Chips
- Adjust hitAreaInsets in the typical example. (Wenyu Zhang)
Dialogs
- Add additional theming screenshot to Dialogs docs (Andrew Overton)
FlexibleHeader
- Extract hidesStatusBarWhenShiftedOffscreen to the shifter. (Jeff Verkoeyen)
- Move ShiftBehaviorForCurrentAppContext into the MDCFlexibleHeaderShifter. (Jeff Verkoeyen)
- Move the shift behavior types to separate targets. (Jeff Verkoeyen)
- Turn MDCFlexibleHeaderShiftBehavior into an extensible enum. (Jeff Verkoeyen)
NavigationDrawer
- Add NavigationDrawer theming target to podspec (Andrew Overton)
Snackbar
- Add snackbarIsPresenting to MDCSnackbarManagerDelegate. (Morgan Redding)
- Add snackbarWillDisappear to SnackbarManagerDelegate (Morgan Redding)
Multi-component changes
- Internal change. (Wenyu Zhang)
- Internal change (Bryan Oltman)
- Internal change (Jeff Verkoeyen)
v109.4.0
This minor release adds Theming extension support to MDCBottomDrawerViewController and includes bug fixes and minor refactoring.
New features
- MDCBottomDrawerViewController now has Theming extension support.
Component changes
AppBar
- Add NavigationController example with AppBar initially hidden. (Jeff Verkoeyen)
FlexibleHeader
- Change links in FlexibleHeader README (Andrew Overton)
- Extract a shifter logical unit. (Jeff Verkoeyen)
Tabs
Multi-component changes
- - 51170612999194997e160654411ac87bb61d4764 Automatic changelog preparation for release. by Galia Kaufman [email protected] - 85feb78 [Tabs] Update podspec to include new folders. by Galia Kaufman [email protected] - fbd3f81 Hand-modified CHANGELOG.md API diff. by Galia Kaufman [email protected] - 27927ce Bumped version number to 109.3.1. by Galia Kaufman [email protected] (Galia Kaufman)
- Ensure that the FlexibleHeader's position reacts to safeAreaInsets changes when hidden. (Jeff Verkoeyen)
- Fix broken links This CL fixes some longstanding and some newly broken links. (Andrew Overton)
- Fix broken links This CL fixes some longstanding and some newly broken links. (Andrew Overton)
- Internal change (Nobody)
- Internal change (Jeff Verkoeyen)
v109.3.1
v109.3.0
This minor release includes API improvements to ProgressView, SnackBars and TextFields, as well as tests and bug fixes for ActionSheet, AppBar, BottomAppBar, BottomSheet, Collections, Dialogs, FlexibleHeader and Tabs.
New features
ProgressView supports a gradient progress bar:
self.progressView.progressTintColors = @[
(id)UIColor.greenColor.CGColor, (id)UIColor.blueColor.CGColor, (id)UIColor.redColor.CGColor
];
Snackbars support setting presentation host view on a specific message:
MDCSnackbarMessage *message = [MDCSnackbarMessage messageWithText:@"message"];
message.presentationHostViewOverride = self.collectionView;
Snackbars enable dismissal when the user taps anywhere on the snackbar.
MDCSnackbarMessage *message = [MDCSnackbarMessage messageWithText:@"message"];
message.shouldDismissOnOverlayTap = YES;
TextFields support setting the border radius:
textField.borderRadius = 4.0f;
API changes
Component changes
ActionSheet
- Add test showcasing how when an Action's image is set it does not update an ActionSheet. (Cody Weaver)
- Support setting image later in lifecycle (Cody Weaver)
AppBar
- Add a presented hidden example. (Jeff Verkoeyen)
- Clarify the purpose of the example supplemental view controllers. (Jeff Verkoeyen)
- Don't hide the navigation bar in AppBarNavigationControllerExample. (Jeff Verkoeyen)
- Extract a sample app bar view controller to supplemental. (Jeff Verkoeyen)
- Make the presented hidden example show a new view controller each time. (Jeff Verkoeyen)
BottomAppBar
- Have BottomAppBar respect safe area (Andrew Overton)
BottomSheet
Collections
- Fix dynamic color not working when it is used in collectionView:cellBackgroundColorAtIndexPath:. (Wenyu Zhang)
- Remove special characters from example breadcrumbs. (Jeff Verkoeyen)
Dialogs
- Allow MDCAlertController to become first responder via its view. (Jake Rockland)
- Allow MDCAlertController to become first responder. (Wenyu Zhang)
- Fix the vertical alignment of long justified actions. (Galia Kaufman)
- Fix UITextView accessory view example (Galia Kaufman)
- Fixing broken unit test (Galia Kaufman)
- Include insets in alignment calculations of long actions (Galia Kaufman)
- Test a large title image with custom insets. (Iryna Berezan)
FlexibleHeader
- Add a safe area layout guide example. (Jeff Verkoeyen)
ProgressView
- Add support for gradient progress bar. (Wenyu Zhang)
- Change progressTintColor and trackTintColor to nullable. (Wenyu Zhang)
- Update expected translated string value for Progress localization test. (Wenyu Zhang)
Snackbar
- Add ability to set presentation host view on specific message. (Yarden Eitan)
- Add an option to dismiss when the user taps anywhere on the overlay. (Nobody)
- Update localized string in localization test. (Wenyu Zhang)
Tabs
- Add programmatic tab switcher buttons to TabBarView example (Andrew Overton)
- Move effectively private MDCTabBarExtendedAlignment.h and MDCTabBarSizeClassDelegate.h headers into extension directories. (Bryan Oltman)
TextFields
- Add borderRadius property (Jonathan Willing)
Multi-component changes
- Correct
accessibilityLabel
docs (Rob Moore)
v109.2.0
109.2.0
This minor release includes bug fixes and tests for ActionSheet, BottomAppBar, BottomSheet, Cards, Dialogs, FlexibleHeader, NavigationBar and TextFields.
New features
New example snapshot tests added to Cards, Dialogs, FlexibleHeader and NavigationBar.
Component changes
ActionSheet
- Add test showcasing how when an Action's image is set it does not update an ActionSheet. (Cody Weaver)
- Support setting image later in lifecycle (Cody Weaver)
BottomAppBar
- Have BottomAppBar respect safe area (Andrew Overton)
BottomSheet
- Have the container sheet be laid out by the container view's bounds, not frame. (Yarden Eitan)
- [BottomSheet]Set MDCSheetStateExtended for MDCBottomSheetController in its initializer. (Wenyu Zhang)
Cards
- Add example snapshot tests. (Jeff Verkoeyen)
Chips
- Internal change (Bryan Oltman)
Collections
- Internal change. (Wenyu Zhang)
Dialogs
- Add example snapshot tests. (Jeff Verkoeyen)
- Allow MDCAlertController to become first responder. (Wenyu Zhang)
- Document icon image scaling condition (Galia Kaufman)
- No public changes, just a test that reproduces the issue. (Iryna Berezan)
FlexibleHeader
- Add example snapshot tests. (Jeff Verkoeyen)
NavigationBar
- Add example snapshot tests. (Jeff Verkoeyen)
TextFields
- Add borderRadius property (Jonathan Willing)
- Internal change. (Wenyu Zhang)
Multi-component changes
- Replace App Bar docs (Andrew Overton)
v109.1.0
This minor release includes new examples for Dialogs, and bug fixes BottomSheet, Chips, and
FlexibleHeader. It also cleans up the removeObserver calls on NSNotificationCenter.
Component changes
ActionSheet
- Pull MDCActionSheetActions into their own file (Cody Weaver)
ActivityIndicator
- Mark the swift example as flaky due to its use of animations and remove explicit titles. (Jeff Verkoeyen)
AnimationTiming
- Mark the swift example as flaky due to its use of animations and remove explicit titles. (Jeff Verkoeyen)
AppBar
- Implement catalogShouldHideNavigation in all examples. (Jeff Verkoeyen)
- Mark the webview examples as flaky. (Jeff Verkoeyen)
Banner
- Add snapshot test hooks to the examples. (Jeff Verkoeyen)
BottomSheet
- Better logging output in example. (Randall Li)
- Set the contentView's frame later in the lifecycle. (Yarden Eitan)
- TableViewExample: Fixed swift format and added class description to example. (Randall Li)
- recreate bug in catalog. Landscape presented tableviews resist scrolling up with longer content. (Randall Li)
- Fix dismissOnDraggingDownSheet behavior (Randall Li)
Buttons
- Move button alpha tests into their own file. (Bryan Oltman)
Chips
- Inform MDCChipField's delegate of height change in layoutSubviews. (Bryan Oltman)
- Only hide MDCChipField's placeholder text if showPlaceholderWithChips is false and chips are present. (Bryan Oltman)
Dialogs
- Add accessory view examples (Galia Kaufman)
- Add manual and auto layout accessory view tests. (Galia Kaufman)
- Fix incorrect initialization of properties (Galia Kaufman)
FlexibleHeader
- Round content offset clamp to nearest integer. (Yarden Eitan)
Snackbar
- Add snapshot test cases to the examples. (Jeff Verkoeyen)
Tabs
Multi-component changes
- As of iOS 9/macOS 10.11 (circa 2015) removing objective C objects from the NSNotificationCenter in - (void)dealloc. is no longer required (the classic example is: [[NSNotificationCenter defaultCenter] removeObserver:self] but there are several variations). (Dave MacLachlan)
- Fix the bazel BUILD files and snapshot that were restored unintentionally.(#9983) (Wenyu Zhang)
- Project import generated by Copybara. (Nobody)
- Rename "flaky" to "skip_snapshots". (Jeff Verkoeyen)
- Rename all icons to an ic_<#name#> convention. (Jeff Verkoeyen)
v109.0.0
This major release deletes bazel support, improves documentation for Cards and TextControls, and
adds the large content view support for MDCItemBar.
Breaking changes
Bazel is no longer supported.
Component changes
ActionSheet
- Remove duplicate primary demo bit. (Jeff Verkoeyen)
Banner
- Make the primary demo presentable. (Jeff Verkoeyen)
BottomAppBar
- Add MDCRipple support to MDCBottomAppBarView (Cody Weaver)
BottomSheet
- Present in full screen in vertical compact size classes when the content height is taller than the sheet view's bounds. (Andrew Overton)
Buttons
- Fix compilation with -std=c11 (Sylvain Defresne)
Cards
- Replace Cards documentation (Andrew Overton)
Chips
- Add unit tests for MDCChipField delegate interaction. (Bryan Oltman)
- Invalidate MDCChipField intrinsic content size in layoutSubviews. (Bryan Oltman)
- When deleting text in MDCChipField, only select the last chip if the text field is empty. (Bryan Oltman)
List
- Use standard "List Items" name for all Lists examples. (Jeff Verkoeyen)
Snackbar
- Add a property to allow customization the accessibility post notification level. (Yarden Eitan)
- Ensure snackbar buttons meet minimum touch target requirements (Andrew Overton)
Tabs
- Add ScrollableCentered option to TabBarView example (Andrew Overton)
- Add example to expose a bug where tab selection indicator and selected text highlighting can get out of sync. (Bryan Oltman)
- Adds large content viewer support to MDCItemBar. (Nobody)
- Adds large content viewer support to MDCItemBar. (Eric Lee)
- Ensure the cell representing MDCTabBar's selected item is selected before display. (Bryan Oltman)
- Stop ripple in MDCTabBar from showing up on scroll (Cody Weaver)
TextControls
- Update TextControls readme metadata path (Andrew Overton)
- Replace TextControls documentation (Andrew Overton)
Multi-component changes
- Delete all bazel support. (Jeff Verkoeyen)
- Remove stale code coverage badge. (Jeff Verkoeyen)