Material Components for iOS v54.0.0 Release Notes
-
๐ฅ Breaking changes
๐
MDCMaskedTransition
has been removed and replaced withMDCMaskedTransitionController
. You may now useMDCMaskedTransitionController
as a standard UIKit transitioning delegate.๐ New features
๐ง Many components now expose new public APIs for configuring typography, color, and shapes.
API changes
Cards
MDCCardCollectionCell
๐ new property:
shapeGenerator
inMDCCardCollectionCell
MDCCard
๐ new property:
shapeGenerator
inMDCCard
๐ Dialogs
MDCAlertController
๐ new property:
titleColor
inMDCAlertController
๐ new property:
titleFont
inMDCAlertController
๐ new property:
messageFont
inMDCAlertController
๐ new property:
buttonTitleColor
inMDCAlertController
๐ new property:
buttonFont
inMDCAlertController
๐ new property:
messageColor
inMDCAlertController
MaskedTransition
MDCMaskedTransition
โ removed class:
MDCMaskedTransition
โ removed method:
-init
inMDCMaskedTransition
โ removed method:
-initWithSourceView:
inMDCMaskedTransition
โ removed property:
calculateFrameOfPresentedView
inMDCMaskedTransition
MDCMaskedTransitionController
๐ new property:
sourceView
inMDCMaskedTransitionController
๐ new method:
-initWithSourceView:
inMDCMaskedTransitionController
๐ new method:
-init
inMDCMaskedTransitionController
๐ new property:
calculateFrameOfPresentedView
inMDCMaskedTransitionController
๐ new class:
MDCMaskedTransitionController
NavigationBar
MDCNavigationBar
๐ new property:
titleFont
inMDCNavigationBar
๐ new property:
titleTextColor
inMDCNavigationBar
Snackbar
MDCSnackbarManager
๐ new class method:
+buttonTitleColorForState:
inMDCSnackbarManager
๐ new property:
mdc_adjustsFontForContentSizeCategory
inMDCSnackbarManager
๐ new property:
snackbarMessageViewBackgroundColor
inMDCSnackbarManager
๐ new property:
shouldApplyStyleChangesToVisibleSnackbars
inMDCSnackbarManager
๐ new property:
buttonFont
inMDCSnackbarManager
๐ new class method:
+setButtonTitleColor:forState:
inMDCSnackbarManager
๐ new property:
snackbarMessageViewShadowColor
inMDCSnackbarManager
๐ new property:
messageTextColor
inMDCSnackbarManager
๐ new property:
messageFont
inMDCSnackbarManager
modified class method:
+setPresentationHostView:
inMDCSnackbarManager
Type of change: Declaration From: + (void)setPresentationHostView:(UIView *)hostView;
To: + (void)setPresentationHostView:(nullable UIView *)hostView;
modified class method:
+dismissAndCallCompletionBlocksWithCategory:
inMDCSnackbarManager
Type of change: Declaration From: + (void)dismissAndCallCompletionBlocksWithCategory:(NSString *)category;
To: + (void)dismissAndCallCompletionBlocksWithCategory: (nullable NSString *)category;
modified class method:
+suspendMessagesWithCategory:
inMDCSnackbarManager
Type of change: Swift declaration From: class func suspendMessages(withCategory category: Any!) -> MDCSnackbarSuspensionToken!
To: class func suspendMessages(withCategory category: Any!) -> MDCSnackbarSuspensionToken?
modified class method:
+suspendMessagesWithCategory:
inMDCSnackbarManager
Type of change: Declaration From: + (id<MDCSnackbarSuspensionToken>)suspendMessagesWithCategory: (NSString *)category;
To: + (nullable id<MDCSnackbarSuspensionToken>)suspendMessagesWithCategory: (nullable NSString *)category;
modified class method:
+showMessage:
inMDCSnackbarManager
Type of change: Swift declaration From: class func show(_ message: MDCSnackbarMessage!)
To: class func show(_ message: MDCSnackbarMessage?)
modified class method:
+showMessage:
inMDCSnackbarManager
Type of change: Declaration From: + (void)showMessage:(MDCSnackbarMessage *)message;
To: + (void)showMessage:(nullable MDCSnackbarMessage *)message;
modified class method:
+suspendAllMessages
inMDCSnackbarManager
Type of change: Swift declaration From: class func suspendAllMessages() -> MDCSnackbarSuspensionToken!
To: class func suspendAllMessages() -> MDCSnackbarSuspensionToken?
modified class method:
+suspendAllMessages
inMDCSnackbarManager
Type of change: Declaration From: + (id<MDCSnackbarSuspensionToken>)suspendAllMessages;
To: + (nullable id<MDCSnackbarSuspensionToken>)suspendAllMessages;
modified class method:
+resumeMessagesWithToken:
inMDCSnackbarManager
Type of change: Swift declaration From: class func resumeMessages(with token: MDCSnackbarSuspensionToken!)
To: class func resumeMessages(with token: MDCSnackbarSuspensionToken?)
modified class method:
+resumeMessagesWithToken:
inMDCSnackbarManager
Type of change: Declaration From: + (void)resumeMessagesWithToken:(id<MDCSnackbarSuspensionToken>)token;
To: + (void)resumeMessagesWithToken:(nullable id<MDCSnackbarSuspensionToken>)token;
Themes
MDCFontScheme
๐ Moved to schemes/Typography.
MDCTonalPalette
๐ Moved to schemes/Color.
MDCTonalColorScheme
๐ Moved to schemes/Color.
MDCColorScheme
๐ Moved to schemes/Color.
MDCBasicColorScheme
๐ Moved to schemes/Color.
MDCBasicFontScheme
๐ Moved to schemes/Typography.
schemes/Typography
๐ New component.
Component changes
Tabs
๐ Changes
- โ Disable TabBar test throwing an exception (#3221) (ianegordon)
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)
MaskedTransition
๐ Changes
- Convert MaskedTransition from a MotionTransitioning Transition type to a vanilla UIKit type (#3070) (featherless)
schemes/Color
๐ Changes
- 0๏ธโฃ [Color] Implement a swift-friendly API for color scheme defaults. (#3246) (featherless)
- [Color] Reduce the public API contract for MDCSemanticColorScheme. (#3234) (featherless)
- ๐ [Color] Remove straggling reference to NSCoding. (#3237) (featherless)
- [Themes] Add new semantic color scheme (#3216) (featherless)
schemes/Typography
๐ Changes
- Partial roll-forward of "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3258) (featherless)
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- ๐ [Typography] Fix build breakage due to missing implementation of MDCBasicFontScheme. (#3242) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)
๐ FeatureHighlight
๐ Changes
- Adding Color Themer. (#3260) (Mohammad Cazi)
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)
AppBar
๐ Changes
- Color Themer now composes to the FlexibleHeader and NavigationBar color themers. (#3210) (featherless)
Ink
๐ Changes
- ๐ [Cards] Added Shapes support for MDCCard and MDCCardCollectionCell + 2 Examples (#3215) (Yarden Eitan)
ButtonBar
๐ Changes
- Implement new semantic color scheme themer APIs. (#3252) (featherless)
- ๐ Update documentation for the themer. (#3265) (featherless)
TextFields
๐ Changes
- Adding Color Themer. (#3255) (Mohammad Cazi)
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)
Chips
๐ Changes
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)
Snackbar
๐ Changes
- ๐ Removed dependency on UIAppearance entirely for color/font customization/theming. (#3223) (Yarden Eitan)
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)
Cards
๐ Changes
- ๐ Added Shapes support for MDCCard and MDCCardCollectionCell + 2 Examples (#3215) (Yarden Eitan)
NavigationBar
๐ Changes
- Add an API for customizing the title label's text color. (#3266) (featherless)
- [MDCNavigationBar] Exposing typography API. (#3217) (Mohammad Cazi)
๐ Dialogs
๐ Changes
- Expose typography and color API. (#3218) (Mohammad Cazi)
FlexibleHeader
๐ Changes
- Implement a color themer API with the new MDCColorScheming type. (#3236) (featherless)
- โช Revert "Fix bug where shadow layer's opacity wouldn't be set without a tracking scroll view. (#3201)" (#3225) (Robert Moore)
- โช Revert "Revert "Fix bug where shadow layer's opacity wouldn't be set without a tracking scroll view. (#3201)" (#3225)" (#3229) (Robert Moore)
Themes
๐ Changes
- Add new semantic color scheme (#3216) (featherless)
- Partial roll-forward of "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3258) (featherless)
- โช Revert "[Typography] Migrate from FontScheme to TypographyScheming (#3219)" (#3256) (featherless)
- ๐ [Catalog] Remove the global theme change notifications. (#3213) (featherless)
- [Typography] Migrate from FontScheme to TypographyScheming (#3219) (ianegordon)