Releases: material-components/material-components-ios
v105.0.0
In this major release we removed the deprecated themers: MDCTextFieldTypographyThemer, MDCOutlinedButtonThemer.
Breaking changes
Deleted MDCTextFieldTypographyThemer and MDCOutlinedButtonThemer classes. Please use the theming extensions.
Learn more at https://github.com/material-components/material-components-ios/blob/develop/docs/theming.md#migration-guide-themers-to-theming-extensions
Component changes
ActionSheet
- Migrates Action sheet to MDCAvailability. (#9733) (Bryan Oltman)
ActivityIndicator
- Migrates activity indicator to MDCAvailability. (#9735) (Bryan Oltman)
BottomNavigation
Buttons
- Fix tvOS target bug. (#9705) (Randall Li)
- MDCButton. (#9667) (copybara-service[bot])
- Delete deprecated MDCOutlinedButtonThemer (#9688) (Bryan Oltman)
Cards
- Migrates cards to MDCAvailability. (#9728) (Randall Li)
Chips
- Migrates Chips to MDCAvailability. (#9713) (Randall Li)
Dialogs
- Add snapshot tests for additional dialog configurations. (#9646) (Galia Kaufman)
- Adding accessory view vertical inset to private header (#9692) (Galia Kaufman)
- Adding an adjustable insets feature flag. Flag default is NO. Clients must enable flag if they want to customize the inset. This flag has no effect yet in this CL. Adjustable layout logic will be introduced in followup CLs. (#9648) (Galia Kaufman)
- Delete Dialogs OWNERS file (#9697) (Randall Li)
- Fix custom title icon view layout - top inset (#9721) (Iryna Berezan)
- Migrate dialogs to availability (#9743) (Andrew Overton)
- Refactor action frame calculations to accommodate adjustable insets (5 seconds ago) (#9656) (Galia Kaufman)
- Refactor content frame calculations to accommodate adjustable insets (#9710) (Galia Kaufman)
- Refactor title frame calculations to accommodate adjustable insets (#9709) (Galia Kaufman)
- Refactor title-icon, title-icon-view frames calculations to accommodate adjustable insets (#9657) (Galia Kaufman)
- Update adjustable insets comments (#9694) (Galia Kaufman)
- Update adjustable insets values (#9695) (Galia Kaufman)
FlexibleHeader
- Added property for minimumHeaderViewHeight (#9649) (copybara-service[bot])
- Migrates Flexible Header to MDCAvailability. (#9744) (Bryan Oltman)
Ink
- Migrates Ink to MDCAvailability. (#9741) (Bryan Oltman)
NavigationDrawer
- Delete NavigationDrawer OWNERS file (#9696) (Randall Li)
Slider
- Migrates Slider to MDCAvailability. (#9704) (Randall Li)
Snackbar
- Migrates Snackbar to MDCAvailability. (#9739) (Bryan Oltman)
Tabs
- Migrates Tabs to MDCAvailability. (#9716) (Randall Li)
TextFields
- Delete deprecated MDCTextFieldTypographyThemer (#9689) (Bryan Oltman)
private/Color
- Make private/color use availability (#9738) (Andrew Overton)
private/TextControlsPrivate
- Migrates Text Controls to MDCAvailability (#9720) (Andrew Overton)
- Move static const assignment to MDCTextControl.m (#9701) (Andrew Overton)
- Changes from text-area-feature-branch with additional podspec and BUILD file changes (#9711) (Andrew Overton)
schemes/Color
- Migrates Schemes to MDCAvailability (#9736) (Andrew Overton)
v104.0.1
In this patch release we fixed the syntax of the TV_OS macro.
Component changes
Buttons
- Fix tvOS target bug. (#9705) (Randall Li)
v104.0.0
104.0.0
In this major release we removed the deprecated MDCFloatingActionButtonThemer, added APIs to AppBar flexible header, alert controllers, bottom drawers and sliders to make the more configurable for clients.
Breaking changes
Deleted the MDCFloatingActionButtonThemer class. Use the theming extension.
New features
AppBar added an API for changing the stack view offset.
Flexible header added an API for showing the hairline and its color.
Availability macro for internal use.
AlertControllers added an API for titleIconView.
Bottom drawer added an API for sticky status bars and adjustment when content size changes.
let contentViewController = UIViewController() let bottomDrawerViewController = MDCBottomDrawerViewController()
...
bottomDrawerVC.shouldIncludeSafeAreaInContentHeight = true
bottomDrawerVC.shouldIncludeSafeAreaInInitialDrawerHeight = true
present(bottomDrawerViewController, animated: true, completion: nil)
Slider added an API for allowAnimatedValueChanges and trackEndsAreRounded or trackEndsAreInset.
API changes
Component changes
ActionSheet
- Change default header to be 8pt tall instead of 0. (Cody Weaver)
AppBar
- Add a snapshot test for a scrolled app bar. (Jeff Verkoeyen)
- Add an AppBar Theming example. (Jeff Verkoeyen)
- Always apply the default shadow behavior when theming. (featherless)
- Minor clarification to example documentation. (Jeff Verkoeyen)
- internal change (Nobody)
Availability
- Add an umbrella header. (Jeff Verkoeyen)
- add Availability build file (#9678) (Randall Li)
Banner
BottomNavigation
- Layout item views after title changes. (Rob Moore)
ButtonBar
- Add missing self-> within a block. (Jeff Verkoeyen)
- Add snapshot tests for title color behavior. (Jeff Verkoeyen)
- Assign the UIBarButtonItem's tintColor to the button's text color. (Jeff Verkoeyen)
- Assign the UIBarButtonItem's tintColor to the button's text color. (Jeff Verkoeyen)
- Refactor title color logic to a single location. (Jeff Verkoeyen)
- Rolling back "Assign the UIBarButtonItem's tintColor to the button's text color." (Jeff Verkoeyen)
- Use CGSizeZero instead of CGSizeMake(0, 0). (Jeff Verkoeyen)
Buttons
- Delete deprecated MDCFloatingActionButtonThemer (#9662) (Bryan Oltman)
- Migrates Buttons to MDCAvailability. (Nobody)
- Set contentEdgeInsets in theming for MDCFloatingButton with normal shape. (Wenyu Zhang)
Dialogs
- Add a private API for passing a custom title icon view. It can be used for passing a custom animation into the title. (Iryna Berezan)
- Adding scuba tests for long, short, text and outlined actions in vertical and horizontal layout, in LTR and RTL. (Galia Kaufman)
- Avoid code duplication for placing action and content scroll views in 'layoutSubviews' method of MDCAlerControllerView. (Iryna Berezan)
- Ensure to remove correct notification observer for the style updates. (Iryna Berezan)
- Initialize a few CGFloat expressions in dialogs with a single-precision floating point constant. (Iryna Berezan)
- Keep the title on the screen during scrolling, just like the action buttons, to follow MD guidelines on Dialogs. (Iryna Berezan)
- Refactor out the layout calculations for title, title icon, message and the view insets into private methods. (Iryna Berezan)
- Removing redundant function argument (Galia Kaufman)
- Renaming "custom" category to "customize". (Galia Kaufman)
- Renaming "custom" category to "customize". (Galia Kaufman)
- Update comments describing private margin properties. (Galia Kaufman)
- Update comments describing private margin properties. (Galia Kaufman)
Elevation
FeatureHighlight
FlexibleHeader
- Add hairline support. (Jeff Verkoeyen)
- Add missing import to MDCFlexibleHeaderView+Private.h (Jeff Verkoeyen)
- Add missing nullability annotation. (Jeff Verkoeyen)
- Resolve precision warning due to use of floating point. (Jeff Verkoeyen)
List
- Make padding between title label and detail label smaller (Andrew Overton)
- This change makes rippleColor null_resettable on MDCBaseCell (Andrew Overton)
NavigationDrawer
- Add ability to change the maximumInitialDrawerHeight after drawer has been presented. (Yarden Eitan)
- Add contributor to OWNERS file (Yarden Eitan)
- Adding a flag to allow clients to opt-in to when the preferredContentSize of the contentViewController changes, it visually updates the drawer height. (Yarden Eitan)
- Implemented opt-in ability to have a "sticky" view, presented behind top safe area, when a headerViewController is not provided (continuation of #9464). (Nobody)
- [Improve behavior when navigating the bottom drawer with Voice Over. This change makes it po...
v103.1.0
This minor release introduces iOS 13 support for BottomNavigation, divider customization for ActionSheet actions, and several bug fixes.
New features
ActionSheet
MDCActionSheetAction has two new APIs, dividerColor
and showsDivider
. These APIs can be used to show a divider above the action.
action.showsDivider = YES;
action.dividerColor = UIColor.greenColor;
MDCActionSheetController now has a delegate, MDCActionSheetControllerDelegate
, that can be used to react to action sheet dismissal.
actionSheet.delegate = self;
- (void)actionSheetControllerDidDismiss:(MDCActionSheetController *)actionSheetController {
NSLog(@"Did dismiss");
}
BottomNavigation
MDCBottomNavigationBar now supports iOS 13's large content viewer functionality.
Component changes
ActionSheet
- Action sheet divider (#9449) (Cody Weaver)
- Add delegate to support dismissal notification (#9475) (Bryan Oltman)
AppBar
BottomNavigation
- Adds large content viewer support (#9451) (Eric Lee)
- Fix bug in delegate method call (#9489) (Robert Moore)
Dialogs
FeatureHighlight
FlexibleHeader
- Annotate to-be-deprecated APIs accordingly. (#9492) (featherless)
NavigationDrawer
Snackbar
- Add example to show snackbar with keyboard (#9479) (Bryan Oltman)
- Update dismiss animation duration (#9472) (Yarden Eitan)
TextControls
- Update README (#9466) (Andrew Overton)
TextFields
- Add identity check in -setTextColor: in MDCTextField (#9480) (Andrew Overton)
- MDCTextInputControllerOutlinedTextArea border width fix (#9454) (Andrew Overton)
v103.0.0
This major release includes a refactoring of the TextControls libraries, a theming extension for TextFields' underline controller, a bugfix change to Chips imagePadding handling, and the annotation of an AppBar API as to be deprecated.
API changes
TextControls+BaseTextFields
New extension.
TextControls+Enums
New extension.
TextControls+FilledTextFields
New extension.
TextControls+FilledTextFieldsTheming
New extension.
TextControls+OutlinedTextFields
New extension.
TextControls+OutlinedTextFieldsTheming
New extension.
Component changes
AppBar
Chips
- Additional
imagePadding
tests. (#9441) (Robert Moore) - Fix
contentPadding
API. (#9440) (Robert Moore) - Fix
imagePadding
behavior. (#9442) (Robert Moore)
TextFields
- Add theming extension for underline controller (#9437) (Cody Weaver)
Multi-component changes
- Restructure Cocoapods and Blaze targets (#9430) (Andrew Overton)
v102.0.0
This major hotfix release reverts a change introduced in 101.1.0 that caused Snackbar not to appear in some situations.
Component changes
Snackbar
v101.1.1
This release includes a bug fix for Dialogs. In some cases a change in
preferredContentSize
did not correctly trigger a layout of an Alert's
subviews.
Component changes
Dialogs
- Layout fix for MDCAlertController (#9383) (Bambara@)
v101.1.0
This minor release improves tvOS support for Buttons and Snackbar, annotates some AppBar APIs as to-be-deprecated, and fixes a bug in the NavigationDrawer.
New features
tvOS support is being added to some of our components.
Component changes
AppBar
- Annotate MDCAppBarContainerViewController's appBar and topLayoutGuideAdjustmentEnabled as to be deprecated. (#9394) (featherless)
Buttons
- Add tvOS support to MDCButton. (#9427) (Yarden Eitan)
Chips
- Add snapshot tests for selectedImage layout. (#9425) (Robert Moore)
- Tests to evaluate
padding
APIs. (#9423) (Robert Moore)
NavigationDrawer
- Fix #9410 (#9411) (Jake Rockland)
Snackbar
- Add tvOS support to MDCSnackbar. (#9428) (Yarden Eitan)
v101.0.1
In this patch release we reverted Snackar's display accessibility level from UIAccessibilityScreenChangedNotification
to UIAccessibilityLayoutChangedNotification
, as it caused in some cases an unwanted immediate focus shift for VoiceOver users.
Component changes
Snackbar
v101.0.0
In this major release we deleted the class MDCFlexibleHeaderColorThemer
and deprecated the MDCHeaderStackViewColorThemer
. As well as allowing the NavigationDrawer to account for the bottom safe area in presentation, improvements to our BUILD files, touch targets on TextFields
and our TextControl
examples and documentation.
Breaking changes
The MDCFlexibleHeaderColorThemer
no longer exists.
New deprecations
We deprecated MDCHeaderStackViewColorThemer
. No current replacement exists.
New features
In order to account for the bottom safe area in presentation of a MDCBottomDrawerViewController
we added a behavioral flag shouldIncludeSafeAreaInInitialDrawerHeight
.
MDCBottomDrawerViewController *bottomDrawer =
[[MDCBottomDrawerViewController alloc] init];
bottomDrawer.shouldIncludeSafeAreaInInitialDrawerHeight = YES;
API changes
HeaderStackView
deprecated class: MDCHeaderStackViewColorThemer
, no replacement exists.
NavigationDrawer
new property: shouldIncludeSafeAreaInInitialDrawerHeight
in MDCBottomDrawerPresentationController
.
new property: shouldIncludeSafeAreaInInitialDrawerHeight
in MDCBottomDrawerViewController
.
Component changes
Cards
FlexibleHeader
- Delete MDCFlexibleHeaderColorThemer (#9351) (Bryan Oltman)
HeaderStackView
- Mark MDCHeaderStackViewColorThemer deprecated (#9354) (Bryan Oltman)
NavigationDrawer
- Added ability to account for bottom safe are… (#9321) (Jake Rockland)
Snackbar
TextControls
- Refactor text control examples (#9358) (Andrew Overton)
- Use CGFloat consts in theming extensions (#9360) (Andrew Overton)
- Write docs for MDCTextControls (#9327) (Andrew Overton)
TextFields
- Give MDCTextField clear button proper hit area insets (#8790) (Andrew Overton)
Typography
Multi-component changes
- Implement Swift import rewriting as part of Bazel. (#9368) (featherless)
- Ran buildifier on all BUILD files. (#9366) (featherless)
- Remove all unused mdc_objc_library loads. (#9376) (featherless)
- Remove all unused swift_library load statements. (#9369) (featherless)
- Remove unused motion_transitioning_objc dependency. (#9379) (featherless)