55.1.0

This minor release introduces some new features to Flexible Header and Snackbar and includes some bug fixes in the Catalog app.

Upcoming deprecations

MDCFlexibleHeaderViewController's -updateTopLayoutGuide will be deprecated in the future. It should no longer be necessary to call this API if you are using an MDCFlexibleHeaderContainerViewController.

API changes

Snackbar

MDCSnackbarManager

new class method: +hasMessagesShowingOrQueued in MDCSnackbarManager

Component changes

Tabs

Changes

schemes/Color

Changes

schemes/Typography

Changes

FeatureHighlight

Changes

Buttons

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

Dialogs

Changes

Themes

Changes

ShadowElevations

Changes


55.0.4

This patch release adds metadata to the bidirectionality eng stub doc.


55.0.3

This patch release adds documentation polish around bidirectionality.


55.0.2

This patch release includes more documentation polish and a bug fix for Cards theming.

Component changes

Tabs

Changes

schemes/Color

Changes

schemes/Typography

Changes

FeatureHighlight

Changes

Ink

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

Slider

Changes

LibraryInfo

Changes

ShadowLayer

Changes

BottomSheet

Changes

Dialogs

Changes

PageControl

Changes

FlexibleHeader

Changes

ShadowElevations

Changes

ProgressView

Changes

Palettes

Changes


55.0.1

This patch release polishes and fleshes out documentation across many of our components. There are no source changes in this release.

Component changes

MaskedTransition

Changes

schemes/Color

Changes

schemes/Typography

Changes

FeatureHighlight

Changes

AppBar

Changes

CollectionCells

Changes

ButtonBar

Changes

TextFields

Changes

Cards

Changes

BottomAppBar

Changes

NavigationBar

Changes

OverlayWindow

Changes

ShadowLayer

Changes

ActivityIndicator

Changes

BottomSheet

Changes

BottomNavigation

Changes

PageControl

Changes

AnimationTiming

Changes

Collections

Changes

HeaderStackView

Changes

FlexibleHeader

Changes

ShadowElevations

Changes

ProgressView

Changes

CollectionLayoutAttributes

Changes


55.0.0

This major release introduces breaking changes to CocoaPods dependencies. Please read the breaking changes section for more details.

This release also includes a significant amount of documnetation polish and some accessibility bug fixes.

Breaking changes

CocoaPods +Extension targets have been removed and replaced with more specific targets for the individual extensions. For example, if you were importing a component's extensions like this before:

pod 'MaterialComponents/Buttons+Extensions'

You‘ll now need to depend on the individual Button extension targets that you’re making use of:

pod 'MaterialComponents/Buttons+ButtonThemer'

To see a full list of available extensions for a given component, read the MaterialComponents.podspec file.

API changes

Component changes

Tabs

Changes

schemes/Color

Changes

schemes/Typography

Changes

FeatureHighlight

Changes

AppBar

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

Slider

Changes

NavigationBar

Changes

ShadowLayer

Changes

ActivityIndicator

Changes

BottomSheet

Changes

Typography

Changes

Dialogs

Changes

BottomNavigation

Changes

PageControl

Changes

AnimationTiming

Changes

Collections

Changes

HeaderStackView

Changes

FlexibleHeader

Changes

Themes

Changes

ProgressView

Changes

Palettes

Changes


54.13.0

This release focused on documentation across all of our componentry and introduced new outlined themes for components. There have also been significant improvements to theming in the MDCCatalog app.

Breaking changes

New features

Buttons, Cards, and Chips now support outlined themes.

// Buttons:
[MDCOutlinedButtonThemer applyScheme:buttonScheme toButton:outlinedButton];

// Cards:
[MDCCardThemer applyOutlinedVariantWithScheme:cardScheme toCard:component];

// Chips:
[MDCChipViewThemer applyOutlinedVariantWithScheme:cardScheme toChipView:component];

Chip hit areas can now be modified using the new hitAreaInsets API:

chip.hitAreaInsets = UIEdgeInsetsMake(chipVerticalInset, 0, chipVerticalInset, 0);

API changes

Chips

MDCChipView

new property: hitAreaInsets in MDCChipView

Component changes

Tabs

Changes

MaskedTransition

Changes

schemes/Color

Changes

schemes/Typography

Changes

FeatureHighlight

Changes

AppBar

Changes

Ink

Changes

CollectionCells

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

Slider

Changes

NavigationBar

Changes

OverlayWindow

Changes

LibraryInfo

Changes

ShadowLayer

Changes

ActivityIndicator

Changes

BottomSheet

Changes

Typography

Changes

Dialogs

Changes

BottomNavigation

Changes

PageControl

Changes

AnimationTiming

Changes

Collections

Changes

HeaderStackView

Changes

FlexibleHeader

Changes

Themes

Changes

ShadowElevations

Changes

ProgressView

Changes

Palettes

Changes

CollectionLayoutAttributes

Changes


54.12.0

This release introduces umbrella headers for all themer targets. We encourage you to start using the new umbrella headers for all themer APIs.

For example, Swift imports would change like so:

// Before
import MaterialComponents.MDCActivityIndicatorColorThemer
// After
import MaterialComponents.MaterialActivityIndicator_ColorThemer

While Objective-C imports would change like so:

// Before
#import "MDCAppBarColorThemer.h"
// After
#import "MaterialAppBar+ColorThemer.h"

We are focused on polishing the Catalog with the new theming systems and updating our component documentation accordingly. Few new features, if any, will be added over the next few releases.

API changes

Component changes

Tabs

Changes

schemes/Color

Changes

FeatureHighlight

Changes

AppBar

Changes

Ink

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

Slider

Changes

NavigationBar

Changes

ActivityIndicator

Changes

BottomSheet

Changes

Dialogs

Changes

BottomNavigation

Changes

PageControl

Changes

AnimationTiming

Changes

HeaderStackView

Changes

FlexibleHeader

Changes

ShadowElevations

Changes

ProgressView

Changes


54.11.1

Component changes

ButtonBar

Changes


54.11.0

This release is the final push towards supporting themers on our components.

We will now shift focus to polishing APIs, documentation, and examples and to fixing bugs.

New features

It is now possible to configure colors on BottomNavigation, ButtonBar, NavigationBar, and Tabs statefully.

TextFields now allows customization of the active floating placeholder color.

MDCTabBar now allows the display of a bottom divider using the bottomDividerColor API.

API changes

BottomNavigation

MDCBottomNavigationBar

new property: selectedItemTitleColor in MDCBottomNavigationBar

ButtonBar

MDCButtonBar

new method: -buttonsTitleColorForState: in MDCButtonBar

new method: -setButtonsTitleColor:forState: in MDCButtonBar

Buttons

MDCButton

new method: -imageTintColorForState: in MDCButton

new method: -setImageTintColor:forState: in MDCButton

NavigationBar

MDCNavigationBar

new method: -setButtonsTitleColor:forState: in MDCNavigationBar

new method: -buttonsTitleColorForState: in MDCNavigationBar

Tabs

MDCTabBarItemState

new typedef: MDCTabBarItemState

new enum value: MDCTabBarItemStateSelected in MDCTabBarItemState

new enum: MDCTabBarItemState

new enum value: MDCTabBarItemStateNormal in MDCTabBarItemState

MDCTabBar

new method: -imageTintColorForState: in MDCTabBar

new method: -titleColorForState: in MDCTabBar

new method: -setImageTintColor:forState: in MDCTabBar

new property: bottomDividerColor in MDCTabBar

new method: -setTitleColor:forState: in MDCTabBar

TextFields

MDCTextInputControllerFloatingPlaceholder

new property: floatingPlaceholderActiveColorDefault in MDCTextInputControllerFloatingPlaceholder

new property: floatingPlaceholderActiveColor in MDCTextInputControllerFloatingPlaceholder

Component changes

Tabs

Changes

AppBar

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Snackbar

Changes

NavigationBar

Changes

BottomNavigation

Changes


54.10.0

This release continues to increase coverage of themers across our components.

New features

ButtonBar now has a Typography themer.

NavigationBar now has APIs for customizing title button fonts.

API changes

NavigationBar

MDCNavigationBar

new method: -setButtonsTitleFont:forState: in MDCNavigationBar

new method: -buttonsTitleFontForState: in MDCNavigationBar

Component changes

Buttons

Changes

ButtonBar

Changes

Chips

Changes

NavigationBar

Changes


54.9.0

This release continues to improve the support for our themer APIs across all components.

New features

Button Bar now allows button typography to be configured.

Floating buttons and contained buttons now have themers.

AppBar and Tabs now have a surface variant color themer API.

Slider now has a color themer.

API changes

ButtonBar

MDCButtonBar

new method: -setButtonsTitleFont:forState: in MDCButtonBar

new method: -buttonsTitleFontForState: in MDCButtonBar

Component changes

Tabs

Changes

AppBar

Changes

Ink

Changes

Buttons

Changes

ButtonBar

Changes

Chips

Changes

Slider

Changes

ShadowLayer

Changes


54.8.0

This new release introduces shapes support to buttons and a variety of new themer APIs for many components.

New features

Buttons can now be styled with different shape outlines. Example usage:

MDCRectangleShapeGenerator *raisedShapeGenerator =
    [[MDCRectangleShapeGenerator alloc] init];
[raisedShapeGenerator setCorners:[[MDCCutCornerTreatment alloc] initWithCut:8.f]];
button.shapeGenerator = raisedShapeGenerator;

There is a new Text Button API for theming an MDCButton to make complete use of typography, color, and other configurable properties of a button's design. A button themed as a text button is closely equivalent to the MDCFlatButton class, MDCFlatButton will soon be deprecated as a result in favor of the following pattern:

// Define your button's scheme somewhere centrally in your app.
let buttonScheme = MDCButtonScheme()
buttonScheme.colorScheme = myAppColorScheme

// Apply the button scheme to an MDCButton to give it the appearance of a text button.
// button: MDCButton
MDCTextButtonThemer.applyScheme(buttonScheme, to: button)

NavigationBar and FlexibleHeader now both have a surface variant themer.

Chips and Tabs have updated color themers.

API changes

Buttons

MDCButton

new property: shapeGenerator in MDCButton

Component changes

Tabs

Changes

Buttons

Changes

Chips

Changes

NavigationBar

Changes

FlexibleHeader

Changes


54.7.0

This release introduces a new API for compositing colors for use by color themers.

API diff

schemes/Color

new method: MDCSemanticColorScheme +blendColor:withBackgroundColor:

Component changes

schemes/Color

Changes

ButtonBar

Changes

Cards

Changes


54.6.1

This is a hotfix release fixing a bug in ButtonBar that was introduced in 54.6.0.

Component changes

ButtonBar

Changes


54.6.0

This release introduces new APIs and themers for customizing typography and color. This release also fixes a bug in NavigationBar affecting title label kerning for system fonts. This may result in visual changes for navigation bar instances.

New features

AppBar now has a Typography themer.

Buttons now has a raised button color themer.

BottomSheets background tap-to-dismiss behavior can now be disabled with dismissOnBackgroundTap.

ButtonBar and NavigationBar's ink color can now be customized.

Cars now has a Color themer.

NavigationBar has a new opt-in behavioral change gated by the useFlexibleTopBottomInsets property. Enabling this property will result in new layout behavior for the navigation bar's titleView. This flag will be enabled by default in the future. Consider enabling this flag on your navigation bar instances in order to verify that the new behavior will not cause regressions in your app.

TextFields now expose a backgroundColor property.

API changes

BottomSheet

MDCBottomSheetPresentationController

new property: dismissOnBackgroundTap in MDCBottomSheetPresentationController

MDCBottomSheetTransitionController

new property: dismissOnBackgroundTap in MDCBottomSheetTransitionController

MDCBottomSheetController

new property: dismissOnBackgroundTap in MDCBottomSheetController

ButtonBar

MDCButtonBar

new property: inkColor in MDCButtonBar

NavigationBar

MDCNavigationBar

new property: inkColor in MDCNavigationBar

new property: useFlexibleTopBottomInsets in MDCNavigationBar

TextFields

MDCTextInputControllerBase

new property: backgroundColor in MDCTextInputControllerBase

MDCTextInputController

new property: backgroundColorDefault in MDCTextInputController

new property: backgroundColor in MDCTextInputController

Component changes

AppBar

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Cards

Changes

NavigationBar

Changes

ActivityIndicator

Changes

BottomSheet

Changes

BottomNavigation

Changes


54.5.0

This release includes bug fixes and increased coverage of our themer APIs for components.

New features

Slider now exposes a variety of properties for customizing color, including new stateful color APIs. To make use of the new stateful APIs, you must enable statefulAPIEnabled on the MDCSlider instance.

BottomNavigationBar and Dialogs now both have a semantic color themer.

API changes

Slider

MDCSlider

new method: -setBackgroundTrackTickColor:forState: in MDCSlider

new property: valueLabelTextColor in MDCSlider

new method: -trackFillColorForState: in MDCSlider

new method: -backgroundTrackTickColorForState: in MDCSlider

new method: -setThumbColor:forState: in MDCSlider

new method: -trackBackgroundColorForState: in MDCSlider

new method: -setFilledTrackTickColor:forState: in MDCSlider

new method: -filledTrackTickColorForState: in MDCSlider

new method: -thumbColorForState: in MDCSlider

new method: -setTrackBackgroundColor:forState: in MDCSlider

new property: inkColor in MDCSlider

new property: statefulAPIEnabled in MDCSlider

new property: valueLabelBackgroundColor in MDCSlider

new method: -setTrackFillColor:forState: in MDCSlider

Component changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Slider

Changes

ActivityIndicator

Changes

Dialogs

Changes

BottomNavigation

Changes


54.4.0

New features

Buttons now has a Typography themer.

MDCFlatButton now has a color themer API.

API changes

Component changes

Buttons

Changes


54.3.0

This release continues to expand our support for component Color and Typography theming.

New features

Buttons and Snackbar now have a Color themer.

BottomNavigationBar, Chips, NavigationBar, TextFields each now have a Typography themer.

Component changes

Buttons

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

NavigationBar

Changes

BottomNavigation

Changes

FlexibleHeader

Changes


54.2.0

New features

Dialogs, FeatureHighlight, and TabBar now each have a Typography themer.

ActivityIndicator and AppBar now have an updated Color themer.

API changes

FeatureHighlight

MDCFeatureHighlightViewController

new property: titleFont in MDCFeatureHighlightViewController

new property: bodyFont in MDCFeatureHighlightViewController

TextFields

MDCTextInputController

new property: textInputFont in MDCTextInputController

new property: textInputFontDefault in MDCTextInputController

Component changes

Tabs

Changes

FeatureHighlight

Changes

AppBar

Changes

TextFields

Changes

Slider

Changes

NavigationBar

Changes

ActivityIndicator

Changes

Dialogs

Changes


54.1.0

New features

Snackbar now has a Typography themer.

NavigationBar now exposes a Color themer API that makes use of the MDCColorScheming type.

Component changes

FeatureHighlight

Changes

Ink

Changes

Snackbar

Changes

NavigationBar

Changes

Dialogs

Changes


54.0.1

Added missing CocoaPods dependencies from v54.0.0.


54.0.0

Breaking changes

MDCMaskedTransition has been removed and replaced with MDCMaskedTransitionController. You may now use MDCMaskedTransitionController 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 in MDCCardCollectionCell

MDCCard

new property: shapeGenerator in MDCCard

Dialogs

MDCAlertController

new property: titleColor in MDCAlertController

new property: titleFont in MDCAlertController

new property: messageFont in MDCAlertController

new property: buttonTitleColor in MDCAlertController

new property: buttonFont in MDCAlertController

new property: messageColor in MDCAlertController

MaskedTransition

MDCMaskedTransition

removed class: MDCMaskedTransition

removed method: -init in MDCMaskedTransition

removed method: -initWithSourceView: in MDCMaskedTransition

removed property: calculateFrameOfPresentedView in MDCMaskedTransition

MDCMaskedTransitionController

new property: sourceView in MDCMaskedTransitionController

new method: -initWithSourceView: in MDCMaskedTransitionController

new method: -init in MDCMaskedTransitionController

new property: calculateFrameOfPresentedView in MDCMaskedTransitionController

new class: MDCMaskedTransitionController

NavigationBar

MDCNavigationBar

new property: titleFont in MDCNavigationBar

new property: titleTextColor in MDCNavigationBar

Snackbar

MDCSnackbarManager

new class method: +buttonTitleColorForState: in MDCSnackbarManager

new property: mdc_adjustsFontForContentSizeCategory in MDCSnackbarManager

new property: snackbarMessageViewBackgroundColor in MDCSnackbarManager

new property: shouldApplyStyleChangesToVisibleSnackbars in MDCSnackbarManager

new property: buttonFont in MDCSnackbarManager

new class method: +setButtonTitleColor:forState: in MDCSnackbarManager

new property: snackbarMessageViewShadowColor in MDCSnackbarManager

new property: messageTextColor in MDCSnackbarManager

new property: messageFont in MDCSnackbarManager

modified class method: +setPresentationHostView: in MDCSnackbarManager

Type of change:Declaration
From:+ (void)setPresentationHostView:(UIView *)hostView;
To:+ (void)setPresentationHostView:(nullable UIView *)hostView;

modified class method: +dismissAndCallCompletionBlocksWithCategory: in MDCSnackbarManager

Type of change:Declaration
From:+ (void)dismissAndCallCompletionBlocksWithCategory:(NSString *)category;
To:+ (void)dismissAndCallCompletionBlocksWithCategory: (nullable NSString *)category;

modified class method: +suspendMessagesWithCategory: in MDCSnackbarManager

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: in MDCSnackbarManager

Type of change:Declaration
From:+ (id<MDCSnackbarSuspensionToken>)suspendMessagesWithCategory: (NSString *)category;
To:+ (nullable id<MDCSnackbarSuspensionToken>)suspendMessagesWithCategory: (nullable NSString *)category;

modified class method: +showMessage: in MDCSnackbarManager

Type of change:Swift declaration
From:class func show(_ message: MDCSnackbarMessage!)
To:class func show(_ message: MDCSnackbarMessage?)

modified class method: +showMessage: in MDCSnackbarManager

Type of change:Declaration
From:+ (void)showMessage:(MDCSnackbarMessage *)message;
To:+ (void)showMessage:(nullable MDCSnackbarMessage *)message;

modified class method: +suspendAllMessages in MDCSnackbarManager

Type of change:Swift declaration
From:class func suspendAllMessages() -> MDCSnackbarSuspensionToken!
To:class func suspendAllMessages() -> MDCSnackbarSuspensionToken?

modified class method: +suspendAllMessages in MDCSnackbarManager

Type of change:Declaration
From:+ (id<MDCSnackbarSuspensionToken>)suspendAllMessages;
To:+ (nullable id<MDCSnackbarSuspensionToken>)suspendAllMessages;

modified class method: +resumeMessagesWithToken: in MDCSnackbarManager

Type of change:Swift declaration
From:class func resumeMessages(with token: MDCSnackbarSuspensionToken!)
To:class func resumeMessages(with token: MDCSnackbarSuspensionToken?)

modified class method: +resumeMessagesWithToken: in MDCSnackbarManager

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

MaskedTransition

Changes

schemes/Color

Changes

schemes/Typography

Changes

FeatureHighlight

Changes

AppBar

Changes

Ink

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

NavigationBar

Changes

Dialogs

Changes

FlexibleHeader

Changes

Themes

Changes


53.0.0

Component Changes

ButtonBar

Changes

NavigationBar

Changes


52.0.0

Breaking changes

BottomNavigation

  • Color themer now only uses primaryColor and applies it to the selectedItemTintColor. It will no longer apply values to either unselectedItemTintColor or barTintColor.

TextFields

  • TextFields will no longer default to using Dynamic Type.
  • TextFields with floating placeholders now account for the placeholder when computing their bounds.

API Changes

TextFields

MDCTextInputControllerLegacyDefault

modified class: MDCTextInputControllerLegacyDefault

Type of change:Swift declaration
From:class MDCTextInputControllerLegacyDefault : NSObject, MDCTextInputControllerFloatingPlaceholder
To:class MDCTextInputControllerLegacyDefault : MDCTextInputControllerBase

modified class: MDCTextInputControllerLegacyDefault

Type of change:Declaration
From:@interface MDCTextInputControllerLegacyDefault : NSObject <MDCTextInputControllerFloatingPlaceholder>
To:@interface MDCTextInputControllerLegacyDefault : MDCTextInputControllerBase

MDCTextInputControllerLegacyFullWidth

modified class: MDCTextInputControllerLegacyFullWidth

Type of change:Swift declaration
From:class MDCTextInputControllerLegacyFullWidth : NSObject, MDCTextInputController
To:class MDCTextInputControllerLegacyFullWidth : MDCTextInputControllerFullWidth, NSSecureCoding

modified class: MDCTextInputControllerLegacyFullWidth

Type of change:Declaration
From:@interface MDCTextInputControllerLegacyFullWidth : NSObject <MDCTextInputController>
To:@interface MDCTextInputControllerLegacyFullWidth : MDCTextInputControllerFullWidth <NSSecureCoding>

MDCTextInputController

removed property: textInputFont in MDCTextInputController

removed property: textInputFontDefault in MDCTextInputController

Color

New component.

Component changes

Tabs

Changes

schemes/Color

Changes

FeatureHighlight

Changes

Ink

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

NavigationBar

Changes

LibraryInfo

Changes

Dialogs

Changes

BottomNavigation

Changes

PageControl

Changes

AnimationTiming

Changes

Collections

Changes

FlexibleHeader

Changes

Palettes

Changes


50.0.0

Breaking change

MDCTabBarFontThemer and MDCBottomAppBarColorThemer changed a argument to nonnull from nullable.

API changes

BottomNavigation

MDCBottomNavigationBar

new property: backgroundColor in MDCBottomNavigationBar

new property: barTintColor in MDCBottomNavigationBar

Chips

MDCChipView

new property: minimumSize in MDCChipView

Collections

MDCCollectionViewStyling

new property: cardBorderRadius in MDCCollectionViewStyling

TextFields

MDCTextInputController

new property: textInputFont in MDCTextInputController

new property: textInputFontDefault in MDCTextInputController

Component changes

Tabs

Changes

MaskedTransition

Changes

FeatureHighlight

Changes

AppBar

Changes

Ink

Changes

CollectionCells

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

Slider

Changes

NavigationBar

Changes

OverlayWindow

Changes

LibraryInfo

Changes

ShadowLayer

Changes

ActivityIndicator

Changes

BottomSheet

Changes

Typography

Changes

Dialogs

Changes

BottomNavigation

Changes

PageControl

Changes

AnimationTiming

Changes

Collections

Changes

HeaderStackView

Changes

FlexibleHeader

Changes

Themes

Changes

ShadowElevations

Changes

ProgressView

Changes

Palettes

Changes

CollectionLayoutAttributes

Changes


49.0.0

Breaking changes

BottomAppBar

MDCBottomAppBarView

NS_UNAVAILABLE property: backgroundColor in MDCBottomAppBarView

API changes

BottomAppBar

MDCBottomAppBarView

new property: barTintColor in MDCBottomAppBarView

NS_UNAVAILABLE property: backgroundColor in MDCBottomAppBarView

new property: shadowColor in MDCBottomAppBarView

new property: backgroundColor in MDCBottomAppBarView

Dialogs

MDCAlertControllerView

new property: titleColor in MDCAlertControllerView

new property: mdc_adjustsFontForContentSizeCategory in MDCAlertControllerView

new class: MDCAlertControllerView

new property: titleFont in MDCAlertControllerView

new property: buttonColor in MDCAlertControllerView

new property: buttonFont in MDCAlertControllerView

new property: messageColor in MDCAlertControllerView

new property: messageFont in MDCAlertControllerView

Component changes

Snackbar

Changes

BottomAppBar

Changes

Dialogs

Changes

Themes

Changes


48.0.0

Breaking changes

removed property: highlightedButtonTextColor in MDCSnackbarMessage

New deprecations

MDCSnackbarMessage

deprecated property: buttonTextColor in MDCSnackbarMessage

MDCSnackbarMessageView()

modified property: snackbarMessageViewTextColor in MDCSnackbarMessageView()

Type of change:Deprecation message
From:snackbarMessageViewTextColor
To:messsageTextColor

modified property: snackbarMessageViewTextColor in MDCSnackbarMessageView()

Type of change:Deprecation
From:0
To:1

modified property: snackbarMessageViewTextColor in MDCSnackbarMessageView()

Type of change:parent.usr
From:c:objc(cs)MDCSnackbarMessageView
To:c:objc(ext)MDCSnackbarMessageView@MDCSnackbarMessageView.h@2959

New features

API changes

Snackbar

MDCSnackbarMessageView

new property: messageTextColor in MDCSnackbarMessageView

new method: -buttonTitleColorForState: in MDCSnackbarMessageView

new property: mdc_adjustsFontForContentSizeCategory in MDCSnackbarMessageView

new method: -setButtonTitleColor:forState: in MDCSnackbarMessageView

MDCSnackbarMessage

new property: usesLegacySnackbar in MDCSnackbarMessage

removed property: highlightedButtonTextColor in MDCSnackbarMessage

removed property: buttonTextColor in MDCSnackbarMessage

MDCSnackbarMessageView()

new method: -snackbarMessageViewTextColor in snackbarMessageViewTextColor in MDCSnackbarMessageView()

new category: MDCSnackbarMessageView()

new method: -setSnackbarMessageViewTextColor: in snackbarMessageViewTextColor in MDCSnackbarMessageView()

modified property: snackbarMessageViewTextColor in MDCSnackbarMessageView()

Type of change:Deprecation message
From:``
To:Use messsageTextColor instead.

modified property: snackbarMessageViewTextColor in MDCSnackbarMessageView()

Type of change:Deprecation
From:0
To:1

modified property: snackbarMessageViewTextColor in MDCSnackbarMessageView()

Type of change:parent.usr
From:c:objc(cs)MDCSnackbarMessageView
To:c:objc(ext)MDCSnackbarMessageView@MDCSnackbarMessageView.h@2959

Component changes

Tabs

Changes

FeatureHighlight

Changes

Ink

Changes

Buttons

Changes

TextFields

Changes

Snackbar

Changes

BottomSheet

Changes

Themes

Changes

Palettes

Changes


47.0.0

Breaking changes

Cards

MDCCardCollectionCell

removed property: selectedImageTintColor in MDCCardCollectionCell

removed property: selectedImage in MDCCardCollectionCell

New deprecations

New features

API changes

Cards

MDCCardCollectionCell

new method: -setVerticalImageAlignment:forState: in MDCCardCollectionCell

new method: -setImageTintColor:forState: in MDCCardCollectionCell

new method: -horizontalImageAlignmentForState: in MDCCardCollectionCell

new method: -imageForState: in MDCCardCollectionCell

new method: -imageTintColorForState: in MDCCardCollectionCell

new method: -setImage:forState: in MDCCardCollectionCell

new method: -verticalImageAlignmentForState: in MDCCardCollectionCell

new method: -setHorizontalImageAlignment:forState: in MDCCardCollectionCell

removed property: selectedImageTintColor in MDCCardCollectionCell

removed property: selectedImage in MDCCardCollectionCell

modified class: MDCCardCollectionCell

MDCCardCellVerticalImageAlignment

new enum value: MDCCardCellVerticalImageAlignmentBottom in MDCCardCellVerticalImageAlignment

new typedef: MDCCardCellVerticalImageAlignment

new enum: MDCCardCellVerticalImageAlignment

new enum value: MDCCardCellVerticalImageAlignmentCenter in MDCCardCellVerticalImageAlignment

new enum value: MDCCardCellVerticalImageAlignmentTop in MDCCardCellVerticalImageAlignment

MDCCardCellHorizontalImageAlignment

new enum value: MDCCardCellHorizontalImageAlignmentRight in MDCCardCellHorizontalImageAlignment

new enum value: MDCCardCellHorizontalImageAlignmentCenter in MDCCardCellHorizontalImageAlignment

new typedef: MDCCardCellHorizontalImageAlignment

new enum: MDCCardCellHorizontalImageAlignment

new enum value: MDCCardCellHorizontalImageAlignmentLeft in MDCCardCellHorizontalImageAlignment

Component changes

Tabs

Changes

FeatureHighlight

Changes

Ink

Changes

CollectionCells

Changes

ButtonBar

Changes

TextFields

Changes

Snackbar

Changes

Cards

Changes

NavigationBar

Changes

BottomSheet

Changes

BottomNavigation

Changes

PageControl

Changes

Collections

Changes

Themes

Changes


46.1.1

Component changes

CollectionCells

Changes


46.1.0

API changes

ActivityIndicator

MDCActivityIndicator

new method: -setProgress:animated: in MDCActivityIndicator

Themes

MDCTonalPalette

modified class: MDCTonalPalette

Type of change:Swift declaration
From:class MDCTonalPalette : NSObject, NSCoding, NSCopying
To:class MDCTonalPalette : NSObject, NSCopying, NSSecureCoding

modified class: MDCTonalPalette

Type of change:Declaration
From:@interface MDCTonalPalette : NSObject <NSCoding, NSCopying>
To:@interface MDCTonalPalette : NSObject <NSCopying, NSSecureCoding>

Component changes

Tabs

Changes

MaskedTransition

Changes

FeatureHighlight

Changes

Ink

Changes

CollectionCells

Changes

Buttons

Changes

ButtonBar

Changes

TextFields

Changes

Chips

Changes

Snackbar

Changes

Cards

Changes

BottomAppBar

Changes

NavigationBar

Changes

ShadowLayer

Changes

ActivityIndicator

Changes

BottomSheet

Changes

BottomNavigation

Changes

PageControl

Changes

Collections

Changes

HeaderStackView

Changes

FlexibleHeader

Changes

Themes

Changes


46.0.0

Breaking changes

BottomSheets

Remove Material Motion from the BottomSheets component as it was causing crashes on iOS 8.


45.0.0

API changes

Dialogs

MDCDialogTransition

removed property: dismissOnBackgroundTap in MDCDialogTransition

removed class: MDCDialogTransition

TextFields

MDCTextInputUnderlineView

modified class: MDCTextInputUnderlineView

Type of change:Swift declaration
From:class MDCTextInputUnderlineView : UIView, NSCopying, NSCoding
To:class MDCTextInputUnderlineView : UIView, NSCopying, NSSecureCoding

modified class: MDCTextInputUnderlineView

Type of change:Declaration
From:@interface MDCTextInputUnderlineView : UIView <NSCopying, NSCoding>
To:@interface MDCTextInputUnderlineView : UIView <NSCopying, NSSecureCoding>

MDCTextInputController

modified protocol: MDCTextInputController

Type of change:Swift declaration
From:protocol MDCTextInputController : NSObjectProtocol, NSCoding, NSCopying, MDCTextInputPositioningDelegate
To:protocol MDCTextInputController : NSObjectProtocol, NSSecureCoding, NSCopying, MDCTextInputPositioningDelegate

modified protocol: MDCTextInputController

Type of change:Declaration
From:@protocol MDCTextInputController <NSObject, NSCoding, NSCopying, MDCTextInputPositioningDelegate>
To:@protocol MDCTextInputController <NSObject, NSSecureCoding, NSCopying, MDCTextInputPositioningDelegate>

Component changes

BottomNavigation

Changes

Cards

Changes

Dialogs

Changes

TextFields

Changes


44.6.1

Component changes

MDCIcons

Added extra guard to prevent crash cause by adding nil to a NSCache.


44.6.0

API changes

Cards

New component.

Ink

MDCInkView

new method: -startTouchBeganAtPoint:animated:withCompletion: in MDCInkView

new method: -startTouchEndAtPoint:animated:withCompletion: in MDCInkView

Component changes

AnimationTiming

Changes

BottomSheet

Changes

Cards

Changes

Chips

Changes

Dialogs

Changes

FlexibleHeader

Changes

Ink

Changes

LibraryInfo

Changes

TextFields

Changes

Typography

Changes


44.5.0

API changes

ButtonBar

MDCButtonBarButton

new class: MDCButtonBarButton

Component changes

ButtonBar

Changes

ProgressView

Changes

TextFields

Changes


44.4.0

Breaking changes

New deprecations

New features

API changes

Chips

MDCChipView

new method: -inkColorForState: in MDCChipView

new method: -setInkColor:forState: in MDCChipView

modified class: MDCChipView

modified property: inkColor in MDCChipView

modified property: inkColor in MDCChipView

Snackbar

MDCSnackbarMessageView

new property: buttonFont in MDCSnackbarMessageView

new property: messageFont in MDCSnackbarMessageView

Component changes

Chips

Changes

Snackbar

Changes


44.3.0

API changes

Themes

MDCFontScheme

new property: button in MDCFontScheme

new property: body2 in MDCFontScheme

new property: headline5 in MDCFontScheme

new property: caption in MDCFontScheme

new property: subtitle2 in MDCFontScheme

new property: subtitle1 in MDCFontScheme

new property: body1 in MDCFontScheme

new property: headline1 in MDCFontScheme

new property: overline in MDCFontScheme

new property: headline2 in MDCFontScheme

new property: headline4 in MDCFontScheme

new protocol: MDCFontScheme

new property: headline3 in MDCFontScheme

new property: headline6 in MDCFontScheme

MDCBasicFontScheme

new property: button in MDCBasicFontScheme

new property: headline1 in MDCBasicFontScheme

new property: headline5 in MDCBasicFontScheme

new property: body1 in MDCBasicFontScheme

new property: subtitle2 in MDCBasicFontScheme

new property: headline2 in MDCBasicFontScheme

new property: body2 in MDCBasicFontScheme

new property: overline in MDCBasicFontScheme

new property: headline6 in MDCBasicFontScheme

new property: subtitle1 in MDCBasicFontScheme

new class: MDCBasicFontScheme

new property: headline4 in MDCBasicFontScheme

new property: headline3 in MDCBasicFontScheme

new property: caption in MDCBasicFontScheme

Component changes

FeatureHighlight

Changes

Themes

Changes


44.2.0

API changes

Chips

MDCChipView

new property: titleFont in MDCChipView

ActivityIndicator

Changes

BottomNavigation

Changes

ButtonBar

Changes

Chips

Changes

CollectionCells

Changes

FlexibleHeader

Changes

Typography

Changes


44.1.0

New features

  • MDCSlider supports more UIAppearance customization.
  • MDCActivityIndicator provides improved support for animation transitions.

API changes

ActivityIndicator

MDCActivityIndicatorTransition

new property: duration in MDCActivityIndicatorTransition

new method: -initWithAnimation: in MDCActivityIndicatorTransition

new class: MDCActivityIndicatorTransition

new property: animation in MDCActivityIndicatorTransition

new method: -init in MDCActivityIndicatorTransition

new method: -initWithCoder: in MDCActivityIndicatorTransition

new property: completion in MDCActivityIndicatorTransition

MDCActivityIndicatorAnimation

new typedef: MDCActivityIndicatorAnimation

MDCActivityIndicator

new method: -startAnimatingWithTransition:cycleStartIndex: in MDCActivityIndicator

new method: -stopAnimatingWithTransition: in MDCActivityIndicator

Slider

MDCSlider

new property: thumbRadius in MDCSlider

new property: thumbElevation in MDCSlider

modified property: trackBackgroundColor in MDCSlider

Type of change:Declaration
From:@property(nonatomic, strong, null_resettable) UIColor *trackBackgroundColor
To:@property (readwrite, strong, nonatomic, null_resettable) UIColor *trackBackgroundColor;

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

BottomSheet

Changes

ButtonBar

Changes

Chips

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

LibraryInfo

Changes

MaskedTransition

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Typography

Changes


44.0.0

Breaking changes

Podspec now separates out extensions (themers, accessibility additions, etc.) into their own podspec.

If you wish to add a component and all of its extensions, update your Podfile and add “+Extensions” to the component.

To include Activity Indicator and its extensions you would write:

pod 'MaterialComponents/ActivityIndicator+Extensions'

Component changes

ActivityIndicator

Changes

BottomNavigation

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

Collection Cells

Changes

Collections

Changes

Dialogs

Changes

Feature Highlights

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

ProgressView

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

Typography

Changes


43.1.1

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

Chips

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

MaskedTransition

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes


43.1.0

API changes

Buttons

MDCButton

new method: -setTitleFont:forState: in MDCButton

new method: -titleFontForState: in MDCButton

FeatureHighlight

MDCFeatureHighlightView

new property: bodyFont in MDCFeatureHighlightView

new property: titleFont in MDCFeatureHighlightView

Component changes

ActivityIndicator

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

ButtonBar

Changes

Buttons

Changes

Chips

Changes

CollectionCells

Changes

Collections

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

LibraryInfo

Changes

MaskedTransition

Changes

NavigationBar

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes


43.0.0

This major release includes a variety of API name changes. Please see the API changes below for more details.

Breaking changes

MDCTextInputControllerDefault has been removed. Use MDCTextInputControllerUnderline instead.

API changes

TextFields

MDCTextInputControllerOutlined

modified class: MDCTextInputControllerOutlined

Type of change:Swift declaration
From:class MDCTextInputControllerOutlined : MDCTextInputControllerDefault
To:class MDCTextInputControllerOutlined : MDCTextInputControllerBase

modified class: MDCTextInputControllerOutlined

Type of change:Declaration
From:@interface MDCTextInputControllerOutlined : MDCTextInputControllerDefault
To:@interface MDCTextInputControllerOutlined : MDCTextInputControllerBase

MDCTextInputControllerOutlinedTextArea

modified class: MDCTextInputControllerOutlinedTextArea

Type of change:Swift declaration
From:class MDCTextInputControllerOutlinedTextArea : MDCTextInputControllerDefault
To:class MDCTextInputControllerOutlinedTextArea : MDCTextInputControllerBase

modified class: MDCTextInputControllerOutlinedTextArea

Type of change:Declaration
From:@interface MDCTextInputControllerOutlinedTextArea : MDCTextInputControllerDefault
To:@interface MDCTextInputControllerOutlinedTextArea : MDCTextInputControllerBase

MDCTextInputControllerBase

new property: expandsOnOverflow in MDCTextInputControllerBase

new property: borderFillColorDefault in MDCTextInputControllerBase

new property: borderFillColor in MDCTextInputControllerBase

new property: minimumLines in MDCTextInputControllerBase

new class: MDCTextInputControllerBase

MDCTextInputControllerDefault

removed property: expandsOnOverflow in MDCTextInputControllerDefault

removed property: borderFillColor in MDCTextInputControllerDefault

removed class: MDCTextInputControllerDefault

removed property: borderFillColorDefault in MDCTextInputControllerDefault

removed property: minimumLines in MDCTextInputControllerDefault

MDCTextInputDefaultUnderlineActiveHeight

removed constant: MDCTextInputDefaultUnderlineActiveHeight

MDCTextInputControllerFilled

modified class: MDCTextInputControllerFilled

Type of change:Swift declaration
From:class MDCTextInputControllerFilled : MDCTextInputControllerDefault
To:class MDCTextInputControllerFilled : MDCTextInputControllerBase

modified class: MDCTextInputControllerFilled

Type of change:Declaration
From:@interface MDCTextInputControllerFilled : MDCTextInputControllerDefault
To:@interface MDCTextInputControllerFilled : MDCTextInputControllerBase

MDCTextInputDefaultBorderRadius

removed constant: MDCTextInputDefaultBorderRadius

MDCTextInputControllerUnderline

new class: MDCTextInputControllerUnderline

MDCTextInputControllerBaseDefaultBorderRadius

new constant: MDCTextInputControllerBaseDefaultBorderRadius

MDCTextInputController

new property: underlineHeightActiveDefault in MDCTextInputController

new property: underlineHeightActive in MDCTextInputController

new property: underlineHeightNormalDefault in MDCTextInputController

new property: underlineHeightNormal in MDCTextInputController

Component changes

TextFields

Changes

Themes

Changes


42.2.0

API changes

Typography

UIFont(MaterialTypography)

new method: -mdc_fontSizedForMaterialTextStyle:scaledForDynamicType: in UIFont(MaterialTypography)

Component changes

ButtonBar

Changes

NavigationBar

Changes

TextFields

Changes

Typography

Changes


42.1.0

New features

New MDCChipField API in the Chips component provides an interface through which a user can input a collection of string tokens.

API changes

Chips

MDCChipFieldDefaultContentEdgeInsets

new constant: MDCChipFieldDefaultContentEdgeInsets

MDCChipFieldDelimiter

new enum value: MDCChipFieldDelimiterReturn in MDCChipFieldDelimiter

new enum: MDCChipFieldDelimiter

new enum value: MDCChipFieldDelimiterAll in MDCChipFieldDelimiter

new enum value: MDCChipFieldDelimiterNone in MDCChipFieldDelimiter

new typedef: MDCChipFieldDelimiter

new enum value: MDCChipFieldDelimiterDefault in MDCChipFieldDelimiter

new enum value: MDCChipFieldDelimiterSpace in MDCChipFieldDelimiter

new enum value: MDCChipFieldDelimiterDidEndEditing in MDCChipFieldDelimiter

MDCChipField

new class: MDCChipField

new method: -focusTextFieldForAccessibility in MDCChipField

new method: -removeSelectedChips in MDCChipField

new method: -removeChip: in MDCChipField

new property: contentEdgeInsets in MDCChipField

new method: -addChip: in MDCChipField

new property: showPlaceholderWithChips in MDCChipField

new property: textField in MDCChipField

new property: minTextFieldWidth in MDCChipField

new property: chipHeight in MDCChipField

new method: -deselectAllChips in MDCChipField

new property: delegate in MDCChipField

new method: -selectChip: in MDCChipField

new property: chips in MDCChipField

new method: -clearTextInput in MDCChipField

new property: delimiter in MDCChipField

MDCChipFieldDelegate

new method: -chipField:didChangeInput: in MDCChipFieldDelegate

new protocol: MDCChipFieldDelegate

new method: -chipFieldHeightDidChange: in MDCChipFieldDelegate

new method: -chipFieldDidBeginEditing: in MDCChipFieldDelegate

new method: -chipField:didRemoveChip: in MDCChipFieldDelegate

new method: -chipField:didTapChip: in MDCChipFieldDelegate

new method: -chipField:shouldAddChip: in MDCChipFieldDelegate

new method: -chipFieldShouldBecomeFirstResponder: in MDCChipFieldDelegate

new method: -chipField:didAddChip: in MDCChipFieldDelegate

new method: -chipFieldShouldReturn: in MDCChipFieldDelegate

new method: -chipFieldDidEndEditing: in MDCChipFieldDelegate

MDCChipView

new property: shapeGenerator in MDCChipView

new method: -shadowColorForState: in MDCChipView

new method: -setShadowColor:forState: in MDCChipView

MDCChipFieldDefaultMinTextFieldWidth

new constant: MDCChipFieldDefaultMinTextFieldWidth

FeatureHighlight

MDCFeatureHighlightView

new property: mdc_adjustsFontForContentSizeCategory in MDCFeatureHighlightView

ShadowLayer

MDCShadowLayer(Subclassing)

new category: MDCShadowLayer(Subclassing)

Typography

UIFontDescriptor(MaterialTypography)

new class method: +mdc_standardFontDescriptorForMaterialTextStyle: in UIFontDescriptor(MaterialTypography)

UIFont(MaterialTypography)

new class method: +mdc_standardFontForMaterialTextStyle: in UIFont(MaterialTypography)

Component changes

AnimationTiming

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

Chips

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

ProgressView

Changes

ShadowLayer

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes


42.0.0

Breaking changes

MDCFloatingButtonShapeLargeIcon has been removed.

// Old code
MDCFloatingButton *button =
    [MDCFloatingButton floatingButtonWithShape:MDCFloatingButtonShapeLargeIcon];

// New code
MDCFloatingButton *button = [[MDCFloatingButton alloc] init];

New deprecations

BottomSheet has a variety of new deprecations.

New features

MDCFloatingButton has a new mode property and can now be expanded.

MDCInkView has a new delegate-based API for responding to animation events.

It's now possible to customize fonts on Tabs.

API changes

ActivityIndicator

MDCActivityIndicatorDelegate

new method: -activityIndicatorModeTransitionDidFinish: in MDCActivityIndicatorDelegate

BottomSheet

UIViewController(MaterialBottomSheet)

deprecated property: mdc_bottomSheetPresentationController in UIViewController(MaterialBottomSheet). Assign an instance of MDCBottomSheetTransition to your view controller's mdm_transitionController.transition instead.

MDCBottomSheetTransitionController

deprecated class: MDCBottomSheetTransitionController. Assign an instance of MDCBottomSheetTransition to your view controller's mdm_transitionController.transition instead.

MDCBottomSheetPresentationControllerDelegate

deprecated protocol: MDCBottomSheetPresentationControllerDelegate. This API will soon be made private. Use MDCBottomSheetController instead.

MDCBottomSheetPresentationController

deprecated class: MDCBottomSheetPresentationController. This API will soon be made private. Use MDCBottomSheetController instead.

Buttons

MDCFloatingButton

new method: -setMaximumSize: in MDCFloatingButton

new property: imageTitleSpace in MDCFloatingButton

new method: -setContentEdgeInsets: in MDCFloatingButton

new method: -setMinimumSize: in MDCFloatingButton

new property: imageLocation in MDCFloatingButton

new method: -setMinimumSize:forShape:inMode: in MDCFloatingButton

new property: mode in MDCFloatingButton

new method: -setHitAreaInsets:forShape:inMode: in MDCFloatingButton

new method: -setContentEdgeInsets:forShape:inMode: in MDCFloatingButton

new method: -setHitAreaInsets: in MDCFloatingButton

new method: -setMaximumSize:forShape:inMode: in MDCFloatingButton

MDCFloatingButtonMode

new enum value: MDCFloatingButtonModeExpanded in MDCFloatingButtonMode

new enum value: MDCFloatingButtonModeNormal in MDCFloatingButtonMode

new enum: MDCFloatingButtonMode

MDCFloatingButtonShape

removed enum value: MDCFloatingButtonShapeLargeIcon in MDCFloatingButtonShape

MDCFloatingButtonImageLocation

new enum value: MDCFloatingButtonImageLocationLeading in MDCFloatingButtonImageLocation

new typedef: MDCFloatingButtonImageLocation

new enum: MDCFloatingButtonImageLocation

new enum value: MDCFloatingButtonImageLocationTrailing in MDCFloatingButtonImageLocation

Ink

MDCInkView

new property: animationDelegate in MDCInkView

MDCInkViewDelegate

new method: -inkAnimationDidStart: in MDCInkViewDelegate

new method: -inkAnimationDidEnd: in MDCInkViewDelegate

new protocol: MDCInkViewDelegate

Tabs

MDCTabBar

new property: selectedItemTitleFont in MDCTabBar

new property: titleTextTransform in MDCTabBar

new property: unselectedItemTitleFont in MDCTabBar

MDCTabBarTextTransform

new enum: MDCTabBarTextTransform

new enum value: MDCTabBarTextTransformAutomatic in MDCTabBarTextTransform

new typedef: MDCTabBarTextTransform

new enum value: MDCTabBarTextTransformUppercase in MDCTabBarTextTransform

new enum value: MDCTabBarTextTransformNone in MDCTabBarTextTransform

Component changes

ActivityIndicator

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

LibraryInfo

Changes

MaskedTransition

Changes

NavigationBar

Changes

PageControl

Changes

ProgressView

Changes

ShadowLayer

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes


41.0.0

API changes

Dialogs

new class: MDCDialogTransition.

Ink

breaking changed property signature: MDCInkView's inkColor from null_resettable to nonnull.

new property: usesLegacyInkRipple.

Snackbar

breaking MDCSnackbarMessage's public APIs have all been annotated with nullability annotations.

TextFields

new class: MDCIntrinsicHeightTextView.

changed property signature: MDCMultilineTextField's textView changed from UITextView to MDCIntrinsicHeightTextView.

Component changes

BottomAppBar

Changes

Buttons

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

Ink

Changes

MaskedTransition

Changes

PageControl

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Typography

Changes

40.1.1

Component changes

Tabs

Changes

40.1.0

API Changes

AnimationTiming

  • New enums: MDCAnimationTimingFunctionStandard, MDCAnimationTimingFunctionDeceleration, and MDCAnimationTimingFunctionAcceleration.

BottomSheet

  • New class: MDCBottomSheetTransition.

Tabs

  • New property: -selectionIndicatorTemplate.

  • New class: MDCTabBarIndicatorAttributes.

  • New protocol: MDCTabBarIndicatorContext.

  • New Protocol: MDCTabBarIndicatorTemplate.

  • New class: MDCTabBarUnderlineIndicatorTemplate.

Themes

  • New conformity: MDCColorScheme now conforms to NSObject.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

Chips

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

LibraryInfo

Changes

MaskedTransition

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

40.0.3

  • [Chips] Fix private header import (#2434)

40.0.2

  • Fix missing step from 40.0.1: update version numbers throughout library.

40.0.1

  • [Catalog] Added Import to catalog’s AppDelegate.

40.0.0

API Changes

Bottom Sheet

  • Added trackingScrollView property to support better dragging.

Chips (new)

LibraryInfo (new)

  • Added LibraryInfo for accessing information about the MDC library itself.

Tabs

  • Added [MDCTabBar defaultHeightForBarPosition:itemAppearance:].

Text Fields

Component changes

ActivityIndicator

Changes

AppBar

Changes

BottomNavigation

Changes

BottomSheet

Changes

Chips

Changes

Collections

Changes

FlexibleHeader

Changes

LibraryInfo

Changes

MaskedTransition

Changes

PageControl

Changes

ProgressView

Changes

Slider

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

39.0.0

API Changes

Animation Timing

  • Added the MDCAnimationTimingFunctionSharp timing function from the spec.

Bottom Navigation

  • Added MDCBottomNavigationBarDelegate with controls on selecting items.

Button

  • Added minimumSize and maximumSize properties.

Ink

  • Added injectedInkViewForView convenience function to find an ink view in a view hierarchy.

Slider

  • Added disabledColor property.

Text Fields

  • Added MDCMultilineTextField expandsOnOverflow and placeholder text properties.
  • The MDCTextInput expandsOnOverflow property is no longer IBInspectable.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

BottomNavigation

Changes

Buttons

Changes

CollectionCells

Changes

FlexibleHeader

Changes

Ink

Changes

MaskedTransition

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

Slider

Changes

TextFields

Changes

38.1.1

No code changes. Added a missing dependency to the BottomNavigation component found after the 38.1.0 release was published.

38.1.0

API Changes

Bottom Navigation

  • New component: Bottom Navigation makes it easy to explore and switch between top-level views in a single tap, similar to a UITabBar.

Text Fields

  • MDCTextInput.cursorColor controls the color of the blinking cursor (in the text).

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomAppBar

Changes

BottomNavigation

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

MaskedTransition

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Tabs

Changes

TextFields

Changes

Typography

Changes

38.0.1

API Changes

None for this release.

Component changes

BottomAppBar

Changes

FlexibleHeader

Changes

TextFields

Changes

38.0.0

API Changes

Navigation Bar

  • (Swift only) titleTextAttributes uses a dictionary with keys of type NSAttributedStringKey instead of NSString * so, for example, .font should be used intead of NSAttributedStringKey.font.rawValue.

Component changes

AppBar

Changes

BottomAppBar

Changes

Collections

Changes

Dialogs

Changes

NavigationBar

Changes

37.0.0

API Changes

Text Fields

  • Added [MDCTextFieldPositioningDelegate textInputDidUpdateConstraints], called after the input's updateConstraints.
  • MDCTextInputControllerDefault's floatingPlaceholderDestination property is replaced with floatingPlaceholderOffset and is a UIOffset, not CGPoint.

Component changes

Buttons

Changes

FlexibleHeader

Changes

PageControl

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

36.3.0

API Changes

Flexible Header

  • Added minMaxHeightIncludesSafeArea to inform the component if the minimumHeight and maximumHeight properties include the safe area inset.

Component changes

FlexibleHeader

Changes

36.2.0

API Changes

Text fields

  • -[MDCTabBarControllerDelegate tabBarController:shouldSelectViewController:] and -[MDCTabBarControllerDelegate tabBarController:didSelectViewController:] will be called for the currently-selected tab if the user taps the tab again (that is, the tab doesn‘t change). This matches Apple’s behavior more closely and allows for custom behaviors.
  • MDCMultilineTextField now has a MDCMultilineTextInputDelegate for useful methods not included in UITextViewDelegate.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomAppBar

Changes

BottomSheet

Changes

Dialogs

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

NavigationBar

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

36.1.0

API Changes

Text fields

  • Added placeholderText property to control the placeholder text.

Component changes

ActivityIndicator

Changes

Buttons

Changes

Dialogs

Changes

FlexibleHeader

Changes

TextFields

Changes

Themes

Changes

36.0.0

API Changes

Buttons

  • Converted elevation methods to use MDCShadowElevation type insetad of raw CGFloats.

Palettes

  • Palettes require Xcode 8+'s toolchain to compile.

Shadow Elevations

  • Introduced the MDCShadowElevation typedef for shadow elevation values instead of raw CGFloats.

Component changes

ActivityIndicator

Changes

AppBar

Changes

BottomAppBar

Changes

BottomSheet

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

NavigationBar

Changes

PageControl

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

35.3.0

API Changes

Text Fields

  • New properties on MDCTextInputController:inlinePlaceholderFont, inlinePlaceholderFontDefault, leadingUnderlineLabelFont, leadingUnderlineLabelFontDefault`.
  • New classes MDCTextInputControllerFilled, MDCTextInputControllerOutlined, MDCTextInputControllerOutlinedTextArea.

Component changes

AppBar

Changes

BottomSheet

Changes

Buttons

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

MaskedTransition

Changes

NavigationBar

Changes

Tabs

Changes

TextFields

Changes

35.2.0

API Changes

Bottom App Bar

  • New component: A bottom app bar view with an embedded floating button.

Text Fields

  • MDCTextField.clearButtonMode now supports UIAppearance.

Component changes

BottomAppBar

Changes

Buttons

Changes

FlexibleHeader

Changes

Ink

Changes

NavigationBar

Changes

Tabs

Changes

TextFields

Changes

35.1.0

API Changes

Shadows

  • Added support for colored shadows.

Component changes

Buttons

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Tabs

Changes

TextFields

Changes

35.0.0

API Changes

PageControl

TextFields

Component changes

BottomSheet

Changes

ButtonBar

Changes

Dialogs

Changes

PageControl

Changes

Snackbar

Changes

TextFields

Changes

Themes

Changes

34.0.2

API Changes

None.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

MaskedTransition

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

34.0.1

Hotfix: Fixes Feature Highlight configuration.

Component changes

FeatureHighlight

Changes

34.0.0

API Diffs

AnimationTiming

  • Improved nullibility annotations.

Buttons

  • Added more support for UIAppearance in MDCButton.
  • Added border color and width parameters.

FeatureHighlight

  • Added support for UIContentSize (preferred user font sizes).

TextFields

  • Major update to improved visual styles. For previous version, use the *Legacy* classes.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

Ink

Changes

MaskedTransition

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

33.0.0

API Diffs

TextFields

Renaming changes in preparation for a new text field style coming soon. No functional or visual changes to the text fields.

  • MDCTextInputControllerDefault was renamed to MDCTextInputControllerLegacyDefault.
  • MDCTextInputControllerFullWidth was renamed to MDCTextInputControllerLegacyFullWidth.

Component changes

ActivityIndicator

Changes

Buttons

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

NavigationBar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

32.0.0

API Diffs

Buttons

  • Added larger-icon version of the floating action button.

TextFields

  • Added MDCTextInputController properties activeColor, disabledColor, normalColor, and associated default colors.
  • Removed MDCTextInputController properties underlineColorActive, underlineColorNormal, and associated default colors.
  • Removed MDCTextInputUnderlineView properties disabledUnderline and underline in favor of color and disabledColor.

Component changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

FeatureHighlight

Changes

MaskedTransition

Changes

NavigationBar

Changes

OverlayWindow

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

31.0.2

Hotfix release: fixes autolayout bug involving TextFields height.

Component changes

TextFields

Changes

31.0.1

No changes to code or docs, only updating metadata for generating https://material.io/components/ios/.

31.0.0

API Diffs

TextFields

  • Added MDCMultilineTextField, a Material Design-themed mutiline text field (multiline text input).
  • [MDCTextFieldPositioningDelegate sizeThatFits:defaultSize:] has been removed, see [MDCTextFieldPositioningDelegate textInsets:] instead.
  • Added MDCMultilineTextInput.minimumLines and .expandsOnOverflow properties.

Component changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

FeatureHighlight

Changes

NavigationBar

Changes

Slider

Changes

TextFields

Changes

30.0.0

API Diffs

Collections

  • Added ‘shouldHideSeparatorForCellLayoutAttributes’ to MDCCollectionViewStyling protocol.
  • Added three methods to MDCCollectionViewStylingDelegate for optionally hiding cell separators.

MaskedTransitioning

  • New component that makes it easy to animate between two view controllers using an expanding mask effect.

TextFields

  • Added ‘leadingView’ and ‘leadingViewMode’ properties to MDCTextField.
  • Renamed MDCTextFieldPositioningDelegate method ‘textContainerInset:’ to ‘textInsets:’
  • Added ‘enabled’, ‘textInsets’, ‘trailingView’ and ‘trailingViewMode’ properties to MDCTextInput.

Typography

  • Changed nullability of ‘lightFontOfSize’, ‘mediumFontOfSize’ and ‘boldItalicFontOfSize’ methods from nonnull to nullable.

Component changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

Ink

Changes

MaskedTransition

Changes

Snackbar

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

29.0.0

  • Reverts changes to the title color of MDCFlatButton and MDCRaisedButton.

28.0.0

API Diffs

AppBar

  • Added MDCAppBarTextColorAccessibilityMutator

Button

  • Marked ‘customTitleColor’ as deprecated.
  • Changed behavior of ‘setTitleColor:forState:’ so that it no longer changes the titleColor if the color was deemed to be of insufficient contrast with the background color.

Icons

  • For each icon in MDCIcons we now have a method that returns a UIImage.

TextFields

  • Removed UI_APPEARANCE_SELECTOR from all controller style properties.
  • Changed all controller style properties from instance to class properties.

Component changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

TextFields

Changes

27.0.0

API Diffs

Button

  • Removed ‘resetElevationForState’.
  • Removed NS_UNAVAILABLE from ‘setBackgroundColor’.

Component changes

ActivityIndicator

Changes

AppBar

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

ProgressView

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Typography

Changes

26.0.0

API diffs

ActivityIndicator

  • Setting ‘cycleColors’ to an empty array now sets ‘cycleColors’ to the default cycle colors.

BottomSheet

  • New component for presenting a view controller as a bottom sheet.

Buttons

  • New subcomponent MDCButtonTitleColorAccessibilityMutator for enforcing title/background color contrast.

Dialogs

  • ‘UIViewController+MaterialDialogs’ property ‘mdc_dialogPresentationController’ now has the nullability annotation of nullable.

TextFields

  • ‘MDCTextInputController’ renamed to ‘MDCTextInputControllerDefault’
  • Added ‘MDCTextInputController’ protocol
  • Removed ‘presentationStyle’ property from MDCTextInputController
  • Added ‘MDCTextInputControllerFullWidth’

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

BottomSheet

Changes

ButtonBar

Changes

Buttons

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

NavigationBar

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

25.1.1

Hotfix: Cherry picked: [Buttons] Call designated initializer in init methods

Component changes

Buttons

Changes

25.1.0

Changes

API diffs

Buttons

  • Added ‘init’ method in MDCFloatingButton

TextFields

  • Added properties ‘underlineColorNormal’, ‘underlineColorActive’,‘errorText’ properties in MDCTextInputController
  • Changed nullabilitity attributes on ‘floatingPlaceholdColor’ & ‘inlinePlaceholderColor’ from nullable to null_resettable
  • Added class ‘MDCTextInputUnderlineView’
  • Added properties ‘disabledUnderline’, ‘underline’, ‘color’, ‘lineHeight’, ‘enabled’ in MDCTextInputUnderlineView
  • Added ‘sizeThatFIts:defaultSize:’ method to MDCTextFieldPositioningDelegate

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

ProgressView

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Typography

Changes

25.0.1

Hotfix: Added implementation for accessibilityElementForItem: for MDCTabBar

25.0.0

API diffs

FeatureHighlight

  • Added properties ‘bodyColor’ and ‘titleColor’ in MDCFeatureHighlightView
  • Added ‘nullable’ nullability specifiers to ‘innerHighlightColor’, ‘outerHighlightColor’
  • Added properties ‘bodyCOlor’ and ‘titleColor’ in MDCFeatureHighlightViewController

Palettes

  • Remove ‘redPalette’,‘pinkPalette’,‘purplePalette’,‘deepPurplePalette’,‘indigoPalette’,‘bluePalette’, ‘lightBluePalette’,‘cyanPalette’,‘tealPalette’,‘greenPalette’,‘lightGreenPalette’,‘limePalette’, ‘yellowPalette’,‘amberPalette’,‘orangePalette’,‘deepOrangePalette’,‘brownPalette’,‘greyPalette’, ‘blueGreyPalette’ class methods from MDCPalette in favor of class properties

Component changes

FeatureHighlight

Changes

Palettes

Changes

24.0.2

Hotfix: Fixed missing bump of version numbers.

24.0.1

Hotfix: Added missing dependencies in our podspec from ColorThemer subspecs to Component subspecs.

24.0.0

API diffs

Palettes

  • Added typedef for NSString so we can differentiate tints from accents
  • Added more palettes: Red, Pink, Purple etc.

Tabs

  • MDCTabBarDelegate conforms to UIBarPositioningDelegate protocol.
  • Added MDCTabBarViewController.

TextFields

  • New Component: Single line text input.

Themes

  • ColorScheme colors are now nonnull, readonly
  • New classes: TonalColorScheme, TonalPalette

Component changes

ActivityIndicator

Changes

ButtonBar

Changes

Buttons

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

TextFields

Changes

Themes

Changes

Typography

Changes

23.4.1

Fixed podspec

Component changes

Buttons

Changes

Typography

Changes

23.4.0

API diffs

FeatureHighlight

Made MDCFeatureHighlightView public with two properties: innerHighlightColor and outerHighlightColor.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

Themes

Changes

Typography

Changes

23.3.0

API diffs

  • No API changes.

Component changes

FlexibleHeader

Changes

23.2.0

API diffs

  • No API changes.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

Typography

Changes

23.1.0

API diffs

Collections

Changes

Make [MDCCollectionViewController cellWidthAtSectionIndex:] public.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

Typography

Changes

23.0.2

API diffs

No change in public APIs.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

Typography

Changes

23.0.1

API diffs

No change in public APIs.

Component changes

Component changes

AppBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

Ink

Changes

NavigationBar

Changes

Snackbar

Changes

Tabs

Changes

Typography

Changes

23.0.0

API diffs

CollectionCell

Changes

  • Add kSelectedCellAccessibilityHintKey

  • Add kDeselectedCellAccessibilityHintKey

Collections

Changes

  • Change [MDCCollectionViewStyling backgroundImageForCellLayoutAttributes] nullability

Ink

Changes

  • Change [MDCInkTouchController inkTouchController] nullability

Typography

Changes

  • Add [MDCTypography boldItalicFontOfSize:]

  • Add [MDCTypography boldFontFromFont:]

  • Add [MDCTypography italicFontFromFont:]

  • Add [MDCTypography isLargeForContrastRatios]

Component changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

FlexibleHeader

Changes

Ink

Changes

Snackbar

Changes

Typography

Changes

22.1.1

Component changes

Flexible Header

Changes

22.1.0

API diffs

Typography

Changes

Component changes

NavigationBar

Changes

Typography

Changes

22.0.0

API diffs

Dialogs

Changes

Typography

Changes

Component changes

AppBar

Changes

Buttons

Changes

Dialogs

Changes

Snackbar

Changes

Typography

Changes

21.3.0

API diffs

Buttons

Component changes

AppBar

Changes

Buttons

Changes

Collections

Changes

NavigationBar

Changes

Snackbar

Changes

Tabs

Changes

Typography

Changes

21.2.0

API diffs

NavigationBar

Component changes

CollectionCells

Changes

Ink

Changes

NavigationBar

Changes

Typography

Changes

21.1.0

Component changes

Buttons

Changes

21.0.1

Fixed podspec so it passes lint.

21.0.0

API diffs

Minimum iOS version is now 8.0

Given the usage of clients on versions of iOS below 8.0 and the increased power of the APIs available to us on iOS 8, our minimum iOS version is bumped from iOS 7 to 8.

New component: Tabs

Tab component with MDCTabBar (#1164) is an implementation of the Material tabs used to explore and switch between different views. Try tabs out! (Brian Moore with Will Larche)

Typography

Component changes

ButtonBar

Changes

Buttons

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

NavigationBar

Changes

Slider

Changes

Snackbar

Changes

Tabs

Changes

Typography

Changes

20.1.1

Component changes

Snackbar

Changes

20.1.0

API diffs

Snackbar

  • Message View Styling

Component changes

AppBar

Changes

Buttons

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

PageControl

Changes

Palettes

Changes

ShadowLayer

Changes

Snackbar

Changes

20.0.0

API changes

Ink

  • Return value of -[MDCInkTouchController initWithView:] changed from nullable instancetype to nonnull instancetype.

ProgressView

  • Added MDCProgressViewBackwardAnimationMode enumeration and -[MDCProgressView backwardProgressAnimationMode] to control how the progress view acts when its progress value is set to a smaller value than the current value.

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Typography

Changes

19.0.4

This point release changes certain podfiles and instructions to refer to the published pod up at CocoaPods.

19.0.3

This point release removes the examples from private/ThumbTrack; they didn't follow our normal conventions and was confusing pod try.

API changes

  • No API changes in this release.

Component changes

  • No component changes in this release.

19.0.2

API changes

  • No API changes in this release.

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Typography

Changes

19.0.1

This point release fixes stale references to MDFFontDiskLoader, MDFSpritedAnimationView, and MDFRobotoFontLoader in our CocoaPods podspec.

API diffs

None.

Component changes

Typography

Changes

19.0.0

API diffs

The following components have been refactored out of MDC into their own repos:

Please note that while MDC's repo is private, there is no way for MDFRobotoFontLoader to formally depend on MDCTypographyFontLoading, even though it informally implements the protocol. This means that MDFRobotoFontLoader can't be used out of the box to configure Typography with Roboto. Once we go public, a pull request to MDFFontDiskLoader will be created to add this convenience. Until that time, you can manually extend your local copy of MDFRobotoFontLoader to declare that it implements MDCTypographyFontLoading.

ShadowLayer

MDCShadowLayer

modified property: shadowMaskEnabled in MDCShadowLayer

Type of change:declaration
From:@property (assign, readwrite, nonatomic) BOOL shadowMaskEnabled;
To:@property (getter=isShadowMaskEnabled, assign, readwrite, nonatomic) BOOL shadowMaskEnabled;

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Typography

Changes

18.0.0

API diffs

ButtonBar

  • MDCButtonBar is now IB_DESIGNABLE.

MDCButtonBarDelegate

modified method: -buttonBar:viewForItem:layoutHints: in MDCButtonBarDelegate

Type of change:swift declaration
From:func buttonBar(_ buttonBar: MDCButtonBar!, viewForItem barButtonItem: Any!, layoutHints: Any!) -> Any!
To:func buttonBar(_ buttonBar: MDCButtonBar, viewForItem barButtonItem: Any!, layoutHints: Any!) -> Any!

modified method: -buttonBar:viewForItem:layoutHints: in MDCButtonBarDelegate

Type of change:declaration
From:- (UIView *)buttonBar:(MDCButtonBar *)buttonBar viewForItem:(UIBarButtonItem *)barButtonItem layoutHints:(MDCBarButtonItemLayoutHints)layoutHints;
To:- (nonnull UIView *)buttonBar:(nonnull MDCButtonBar *)buttonBar viewForItem:(nonnull UIBarButtonItem *)barButtonItem layoutHints:(MDCBarButtonItemLayoutHints)layoutHints;

MDCButtonBar

modified property: items in MDCButtonBar

Type of change:declaration
From:@property (readwrite, copy, nonatomic) NSArray<UIBarButtonItem *> *items;
To:@property (readwrite, copy, nonatomic, nullable) NSArray<UIBarButtonItem *> *items;

FlexibleHeader

MDCFlexibleHeaderViewController

new method: -updateTopLayoutGuide in MDCFlexibleHeaderViewController

FontDiskLoader

MDCFontDiskLoader

modified class: MDCFontDiskLoader

Type of change:key.deprecation_message
From:``
To:Use https://github.com/material-foundation/material-font-disk-loader-ios instead.

modified class: MDCFontDiskLoader

Type of change:key.always_deprecated
From:0
To:1

HeaderStackView

  • MDCHeaderStackView is now IB_DESIGNABLE.

RobotoFontLoader

MDCRobotoFontLoader

modified class: MDCRobotoFontLoader

Type of change:key.deprecation_message
From:``
To:Use https://github.com/material-foundation/material-roboto-font-loader-ios instead.

modified class: MDCRobotoFontLoader

Type of change:key.always_deprecated
From:0
To:1

SpritedAnimationView

MDCSpritedAnimationView

modified class: MDCSpritedAnimationView

Type of change:key.deprecation_message
From:``
To:Use https://github.com/material-foundation/material-sprited-animation-view-ios instead.

modified class: MDCSpritedAnimationView

Type of change:key.always_deprecated
From:0
To:1

Switch

  • MDCSwitch has been removed, please use UISwitch instead.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

SpritedAnimationView

Changes

Typography

Changes

17.2.0

API Changes

FlexibleHeader

  • MDCFlexibleHeaderView is now marked IB_DESIGNABLE.

Switch

  • MDCSwitch is completely deprecated and will be removed in the next release. We recommend apps use UISwitch instead.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

SpritedAnimationView

Changes

Switch

Changes

Typography

Changes

17.1.1

No public API or component changes.

Added missing components/private/Application/src/MaterialApplication.h umbrella header.

17.1.0

API diffs

No public API changes in this release. Note that the 17.0.0 release was not published to CocoaPods, so if you are updating from 16.3.0 you will see the breaking change from 17.0.0.

Behavior changes in MDCSnackbar

The behavior of MDCSnackbar has been changed to better match the spec:

  • Animation duration increased from 0.15s to 0.5s.
  • The snackbar no longer fades out, but translates down off screen.
  • The snackbar's text and button (but not the background) fade out during the animation.

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FeatureHighlight

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

SpritedAnimationView

Changes

Switch

Changes

Typography

Changes

17.0.0

API Diffs

Buttons

MDCButton

modified method: -setBackgroundColor: in MDCButton

Type of change:key.deprecation_message
From:Use setBackgroundColor:forState: instead.
To:

modified method: -setBackgroundColor: in MDCButton

Type of change:key.always_unavailable
From:0
To:1

modified method: -setBackgroundColor: in MDCButton

Type of change:key.always_deprecated
From:1
To:0

modified method: -setBackgroundColor: in MDCButton

Type of change:declaration
From:- (void)setBackgroundColor:(nullable UIColor *)backgroundColor __deprecated_msg("Use setBackgroundColor:forState: instead.");
To:- (void)setBackgroundColor:(nullable UIColor *)backgroundColor;

CollectionCells

MDCCollectionViewCell

new property: editingSelectorColor in MDCCollectionViewCell

Component changes

Buttons

Changes

CollectionCells

Changes

16.3.0

API diffs

Snackbar

Component changes

CollectionCells

Changes

Collections

Changes

FeatureHighlight

Changes

Snackbar

Changes

16.2.0

API diffs

FeatureHighlight

  • FeatureHighlight is a new component that lets you highlight a particular feature of your interface to the user.

Component changes

AppBar

Changes

CollectionCells

Changes

Collections

Changes

FeatureHighlight

Changes

NavigationBar

Changes

Switch

Changes

16.1.0

Component changes

ActivityIndicator

Changes

Buttons

Changes

Dialogs

Changes

Ink

Changes

ProgressView

Changes

Snackbar

Changes

16.0.0

API diffs

InkTouchController

Component changes

AppBar

Changes

Dialogs

Changes

Ink

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Switch

Changes

15.2.0

API diffs

Palettes

Component changes

FlexibleHeader

Changes

Ink

Changes

NavigationBar

Changes

Palettes

Changes

15.1.0

API diffs

Auto-generated by running:

scripts/api_diff -o 203562553800ed3d3b5eebfd1dd76cda875d833c -n f8e2c8b5e87d0414f6b08f691949ecebfaca41b8

Ink

NavigationBar

Component changes

ButtonBar

Changes

CollectionCells

Changes

Collections

Changes

Ink

Changes

NavigationBar

Breaking changes

15.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o 1926458f491c928adfb573a6eda38b6d5b5bc55e -n c39811a2344114302327b6fa64d86346bacbea9a

Dialogs

Ink

NavigationBar

Switch

  • [protocols changed] MDCSwitch. Removed NSCoding. Added NSSecureCoding.

Component changes

Collections

Changes

Dialogs

Changes

Ink

Changes

NavigationBar

Changes

Slider

Changes

Snackbar

Changes

Switch

Changes

14.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o 52692216832dc446ae2471bd2f42a40cd8746bbe -n 9ecf191c8d5fa6d8afc7ba119f4cb0ebe926483c

FontDiskLoader

Component changes

Buttons

Changes

Collections

Changes

FlexibleHeader

Changes

FontDiskLoader

Breaking changes

Ink

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowLayer

Changes

Switch

Changes

13.4.0

API diffs

Auto-generated by running:

scripts/api_diff -o fb77a9716a80ba4ee2a9f92a81a89335570366e3 -n 8fa99ffb150b99597f19783d54203ff77a4219d2

FontDiskLoader

Component changes

AppBar

Changes

Dialogs

Changes

FontDiskLoader

Changes

Ink

Changes

Slider

Changes

Switch

Changes

13.3.0

API diffs

Auto-generated by running:

scripts/api_diff -o 51fbbacdf98a1f086cdbf6210f849c8133e91183 -n dd3d2622f6935e70854d3ccb72677b09e19e045a

FontDiskLoader

@property (nonatomic, strong, nonnull) NSString *fontName
- (void)setFontName:(nonnull NSString *)fontName

RobotoFontLoader

+ (nonnull instancetype)sharedInstance
+ (nonnull MDCRobotoFontLoader *)sharedInstance

Component changes

ActivityIndicator

Changes

Buttons

Changes

CollectionLayoutAttributes

Changes

Dialogs

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

RobotoFontLoader

Changes

Slider

Changes

Typography

Changes

13.2.1

API diffs

Icons

Component changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Switch

Changes

Typography

Changes

13.2.0

API diffs

Auto-generated by running:

scripts/api_diff -o 6b00b97156fcd8ed5a661c736df6b363cf4c8457 -n 9ef47c149996f078e5f6a4ed3474688e187ab573

Slider

SpritedAnimationView

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

SpritedAnimationView

Changes

Switch

Changes

Typography

Changes

13.1.1

Component changes

Snackbar

Changes

13.1.0

API diffs

Auto-generated by running:

scripts/api_diff -o 5d7ad466b9e1429ad6242272958b149ded34da63 -n 205b1b49fd311af9246133e1499007dec0957e4b

AnimationTiming

New component.

Switch

Component changes

ActivityIndicator

Changes

AnimationTiming

Changes

AppBar

Changes

Buttons

Changes

CollectionCells

Changes

Dialogs

Changes

FlexibleHeader

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

Switch

Changes

13.0.2

API diffs

Auto-generated by running:

scripts/api_diff -o 313365e03bc6f74f43910264ee31d1e2721db36b -n e66a70dc0cd3bb40eb0f4ff3d5867bafba20db3a

No public API changes detected.

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ProgressView

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

SpritedAnimationView

Changes

Switch

Changes

Typography

Changes

13.0.1

Hotfix for Xcode 8.0 beta 3 (8S174q) compilation.

API diffs

Auto-generated by running:

scripts/api_diff -o 50ed805a58529c8cd3a0bfe56a9b99937134ad2c -n e8dbfebbb20f3d1314b5396e6cc1f76f9d23beb2

No public API changes detected.

Component changes

Collections

Changes

ProgressView

Changes

Snackbar

Changes

SpritedAnimationView

Changes

13.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o 0c7bda2e69db44668360b89e3403a7ad9e16c3aa -n 10e4a258fa529178d1aa6ae8962193eb18b43d20

Dialogs

SpritedAnimationView

- (void)startAnimatingWithCompletion:(nullable void (^)())completion
- (void)startAnimatingWithCompletion:(nullable void (^)(BOOL))completion

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

Dialogs

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

ProgressView

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

SpritedAnimationView

Breaking changes

Changes

Switch

Changes

Typography

Changes

12.2.0

API diffs

Auto-generated by running:

scripts/api_diff -o c6523eae8e811b1c89d94073b9153a03390b1950 -n edab0db4908985cd0b56003b4341d5f064f98d6a

Dialogs

New component.

Component changes

Dialogs

Changes

Ink

Changes

ProgressView

Changes

Slider

Changes

Snackbar

Changes

12.1.1

API diffs

Auto-generated by running:

scripts/api_diff -o ec923edf948c5c0ef8cef52f3a3b26a21cbf29d9 -n 34f12cf42f45e30bada83ff6c4c67d5104201a00

No public API changes detected.

Component changes

SpritedAnimationView

Changes

12.1.0

API diffs

NavigationBar

ProgressView

New component.

Component changes

ActivityIndicator

Changes

Collections

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

Palettes

Changes

ProgressView

Changes

Snackbar

Changes

12.0.1

API diffs

Auto-generated by running:

scripts/api_diff -o bdc034da8700a9cbd6064823dc045b511d622f8c -n f9f6d8e87d6cdaf884ac2d3ad462403bdb2fd008

No public API changes detected.

Component changes

CollectionCells

Changes

Slider

Changes

Snackbar

Changes

12.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o e4b240934cbf7211790e0929c73652dbd7c2f46f -n 55a289f0cfeebdc10931243d613d4cf5bcef3986

ActivityIndicator

FromToKind
RequiredOptionaloptional

ButtonBar

FromToKind
@property (nonatomic, copy) NSArray *items@property (nonatomic, copy) NSArray<UIBarButtonItem *> *itemsdeclaration

Collections

- (nullable NSArray *)indexPathsForInlaidItems
- (nullable NSArray<NSIndexPath *> *)indexPathsForInlaidItems

NavigationBar

FromToKind
@property (nonatomic, copy, nullable) NSArray *leadingBarButtonItems@property (nonatomic, copy, nullable) NSArray<UIBarButtonItem *> *leadingBarButtonItemsdeclaration
FromToKind
@property (nonatomic, copy, nullable) NSArray *leftBarButtonItems@property (nonatomic, copy, nullable) NSArray<UIBarButtonItem *> *leftBarButtonItemsdeclaration
FromToKind
@property (nonatomic, copy, nullable) NSArray *rightBarButtonItems@property (nonatomic, copy, nullable) NSArray<UIBarButtonItem *> *rightBarButtonItemsdeclaration
FromToKind
@property (nonatomic, copy, nullable) NSArray *trailingBarButtonItems@property (nonatomic, copy, nullable) NSArray<UIBarButtonItem *> *trailingBarButtonItemsdeclaration
FromToKind
@property (nonatomic, copy, nullable) NSArray *leftBarButtonItems@property (nonatomic, copy, nullable) NSArray<UIBarButtonItem *> *leftBarButtonItemsdeclaration
FromToKind
@property (nonatomic, copy, nullable) NSArray *rightBarButtonItems@property (nonatomic, copy, nullable) NSArray<UIBarButtonItem *> *rightBarButtonItemsdeclaration

OverlayWindow

New component.

Snackbar

New component.

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Changes

FlexibleHeader

Changes

Ink

Changes

NavigationBar

Changes

OverlayWindow

Changes

PageControl

Changes

Palettes

Changes

ShadowLayer

Changes

Slider

Changes

Snackbar

Changes

SpritedAnimationView

Changes

11.0.1

API diffs

Auto-generated by running:

scripts/api_diff -o 5cea05817470a3fd906dc3663aff5628491e3224 -n 914490127624d9526f24a497021efffddcf3d567

No public API changes detected.

Component changes

ButtonBar

Changes

FontDiskLoader

Changes

Slider

Changes

Switch

Changes

11.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o a33f87199b2f4e29e35f0b93c75d60520742d5aa -n 0b277c9ff00628400b291d2e6900ff6389b27ecf

FontDiskLoader

Palettes

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

FlexibleHeader

Changes

FontDiskLoader

Breaking changes

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

Palettes

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

SpritedAnimationView

Changes

Switch

Changes

Typography

Changes

10.1.2

Changes

10.1.1

FontDiskLoader

Changes

10.1.0

API diffs

Auto-generated by running:

scripts/api_diff -o dc74cd290f327e950eab32b48f3105c55972fad9 -n d4a3ac376f5c8498cfb52401f4fbb69d2e318897

ActivityIndicator

New component.

FontDiskLoader

Added NSCopying.

Component changes

ActivityIndicator

Changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

Collections

Changes

FontDiskLoader

Changes

PageControl

Changes

RobotoFontLoader

Changes

ShadowLayer

Changes

Switch

Changes

10.0.0

Infrastructure

Material Components for iOS now requires Cocoapods 1.0.0.

API diffs

Auto-generated by running:

scripts/api_diff -o 0c97c7e25888d9da312c8610e21aa635cf9fb395 -n 1fc92b09a8539cf235667c4b2fb83c0f52578d65

RobotoFontLoader

9.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o cdbe7e499d85c320c41f31e51cd7cf29c3afed48 -n 636df09ea57a7cdefdacad3f53277c76df968f72

ButtonBar

NavigationBar

Component changes

ButtonBar

Changes

CollectionCells

Changes

Collections

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

NavigationBar

Changes

8.0.0

API diffs

Auto-generated by running the following while checked out at 4bc99e8ad0fe0ac7e9acc044591a8581165fb5c2:

scripts/api_diff -o 2153f8fa453ecec4dfe48a328e331846d5d37aac -n bbabb375953fbd01c3f818ac9092b55fe56dd9b9

AppBar

ButtonBar

NavigationBar

Component changes

AppBar

Breaking changes

ButtonBar

Breaking changes

Changes

CollectionCells

Changes

Collections

Changes

NavigationBar

Breaking changes

7.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o d2f436fdcfa711da5a8a077b42feb052c1abdf9e -n 6c8ca274056aed6850920f6010b47655c67730c9

AppBar

ButtonBar

Collections

FromToKind
- (void)collectionView:(nonnull UICollectionView *)collectionView didDeleteItemsAtIndexPaths:(nonnull NSArray *)indexPaths- (void)collectionView:(nonnull UICollectionView *)collectionView didDeleteItemsAtIndexPaths:(nonnull NSArray<NSIndexPath *> *)indexPathsdeclaration
FromToKind
- (void)collectionView:(nonnull UICollectionView *)collectionView willDeleteItemsAtIndexPaths:(nonnull NSArray *)indexPaths- (void)collectionView:(nonnull UICollectionView *)collectionView willDeleteItemsAtIndexPaths:(nonnull NSArray<NSIndexPath *> *)indexPathsdeclaration
FromToKind
- (void)collectionView:(nonnull UICollectionView *)collectionView didApplyInlayToItemAtIndexPaths:(nonnull NSArray *)indexPaths- (void)collectionView:(nonnull UICollectionView *)collectionView didApplyInlayToItemAtIndexPaths:(nonnull NSArray<NSIndexPath *> *)indexPathsdeclaration
FromToKind
- (void)collectionView:(nonnull UICollectionView *)collectionView didRemoveInlayFromItemAtIndexPaths:(nonnull NSArray *)indexPaths- (void)collectionView:(nonnull UICollectionView *)collectionView didRemoveInlayFromItemAtIndexPaths:(nonnull NSArray<NSIndexPath *> *)indexPathsdeclaration

Palettes

New component.

Component changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

Collections

Breaking changes

Changes

FlexibleHeader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Breaking changes

Changes

PageControl

Changes

Palettes

Changes

RobotoFontLoader

Changes

ShadowLayer

Changes

Slider

Changes

Switch

Changes

Typography

Changes

6.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o da19cc89a5bb91c94480aee818d2f0ac52410e1c -n bac6ea73c709e95ac88f202ca6c02e1ab88e91f5

CollectionLayoutAttributes

Switch

Typography

Component changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

Switch

Changes

Typography

Breaking changes

Changes

5.1.0

API diffs

Auto-generated by running:

scripts/api_diff -o 037551fa3b17c25f6546d290e41f747e3713bc4f -n 4b6b0a414e599af1fe3a29bba66af8e04ba67b4d

No public API changes.

Component changes

AppBar

Changes

ButtonBar

Changes

Buttons

Changes

CollectionCells

Changes

CollectionLayoutAttributes

Changes

Collections

Changes

FlexibleHeader

Changes

FontDiskLoader

Changes

HeaderStackView

Changes

Ink

Changes

NavigationBar

Changes

PageControl

Changes

RobotoFontLoader

Changes

ShadowElevations

Changes

ShadowLayer

Changes

Slider

Changes

SpritedAnimationView

Changes

Switch

Changes

Typography

Changes

5.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o 55afa3aaef67799bdb8a94881f31c5c3b242e9a6 -n fe1ac2f14b7ad4179c84b01590df9c93289f2e36

CollectionCells

New component.

CollectionLayoutAttributes

New component.

Collections

New component.

FlexibleHeader

PageControl

Component changes

AppBar

ButtonBar

Buttons

CollectionCells

CollectionLayoutAttributes

Collections

FlexibleHeader

FontDiskLoader

HeaderStackView

Ink

NavigationBar

PageControl

RobotoFontLoader

ShadowElevations

ShadowLayer

Slider

SpritedAnimationView

Switch

Typography

4.0.1

API diffs

Auto-generated by running:

scripts/api_diff -o 1542251633905c3c2089b38f1c01a5010a8894f1 -n 789beeb556aab8b4aeddb71fa837d7db8c4660d7

Typography

Component changes

Typography

4.0.0

API diffs

Auto-generated by running:

scripts/api_diff -o 11959487eb429c37b382c521a1c469eac96ed0da -n 7cc87bd6d90ed2c641212339f00f67b08fb76314

Buttons

FlexibleHeader

Ink

RobotoFontLoader

ScrollViewDelegateMultiplexer

Component changes

AppBar

ButtonBar

Buttons

FlexibleHeader

FontDiskLoader

HeaderStackView

Ink

NavigationBar

PageControl

RobotoFontLoader

ScrollViewDelegateMultiplexer

ShadowElevations

ShadowLayer

Slider

SpritedAnimationView

Switch

Typography

3.1.0

API diffs

Auto-generated by running:

scripts/api_diff -o ddb35150fe10c2974b63d1e29c4ecce4ccaa51fb -n ad904b8748ce469af886b2f27172d8e3c44928e8

AppBar

ButtonBar

Buttons

FlexibleHeader

RobotoFontLoader

Typography

Component changes

AppBar

ButtonBar

Buttons

FlexibleHeader

HeaderStackView

Ink

NavigationBar

PageControl

RobotoFontLoader

ScrollViewDelegateMultiplexer

ShadowElevations

ShadowLayer

Slider

SpritedAnimationView

Switch

Typography

3.0.0

Breaking
  • [FlexibleHeader] contentView is now nonnull and readonly. (Jeff Verkoeyen)
    • Swift code will need to change contentView! to contentView. This will be made apparent at build time.
Enhancements
  • [ButtonBar] Rename buttonItems API to items. (Jeff Verkoeyen)
  • [ButtonBar] Add Buttons dependency and remove Buttons dependency from AppBar. (Jeff Verkoeyen)
  • [Site] Adding excerpts to component docs metadata. (Jason Striegel)
  • [RobotoFontLoader] Removed #define that should not have made it public. (randallli)
  • [Demos] Fix compilation errors for Xcode 7.2 (Junius Gunaratne)
  • [Cleanup] Replaced [Foo new] with [[Foo alloc] init], per the style guide. (Adrian Secord)
  • [checks] Add missing_readme check and check_all runner. (Jeff Verkoeyen)
  • [ButtonBar] Deprecating all ButtonBar delegate-related APIs. (Jeff Verkoeyen)
  • [AppBar] Don‘t set the bar buttons’ title color. (Jeff Verkoeyen)
  • [Ink] Update demo so ink is not obstructed by adjacent views (Junius Gunaratne)
  • [Switch] Rename commonInit to avoid name collisions (Ian Gordon)
  • [Slider] Rename commonInit to avoid name collisions (Ian Gordon)
  • [Site] Including component README screenshots. (Jason Striegel)
  • [Ink] Use custom ink center property in ink implementation (Junius Gunaratne)
  • [AppBar] Implement the App Bar container's header view setter. (Jeff Verkoeyen)
  • [Shrine] Add launch screen (Junius Gunaratne)
  • [Catalog] Fix build breakage. (Jeff Verkoeyen)
  • [Documentation] Initial draft of the Material Components Getting Started guide (Alastair Tse)
  • [Documentation] Adding component screenshots from catalog for website (Junius Gunaratne)
  • [Site] Created ROADMAP.md (Katy Kasmai)
  • [AppBar] Add README section on interacting with background views. (Jeff Verkoeyen)
  • [Catalog] Add exit bar for demos (Junius Gunaratne)
  • [Shrine] Fix compiler errors (Junius Gunaratne)
  • [AppBar|FlexibleHeader] Add section on touch forwarding. (Jeff Verkoeyen)
  • [FlexibleHeader] Clarify that touch forwarding does not apply to subviews. (Jeff Verkoeyen)
  • [AppBar] Call out the content view in the view hierarchy. (Jeff Verkoeyen)
  • [NavigationBar] Add nullability annotations. (Jeff Verkoeyen)
  • [Documentation] Fixed pod install instructions for Buttons/README.md. (Adrian Secord)
  • [AppBar] Remove excess horizontal rules. (Jeff Verkoeyen)
  • [AppBar|FlexibleHeader] Move UINav section from App Bar to Flexible Header. (Jeff Verkoeyen)
  • [AppBar|FlexibleHeader] Move section on status bar style from App Bar to Flexible Header. (Jeff Verkoeyen)
  • [NavigationBar] Document that the navigationBar's state syncs with navigationItem on observation. (Jeff Verkoeyen)
  • [NavigationBar] Rename MDCUINavigationItemKVO to MDCUINavigationItemObservables. (Jeff Verkoeyen)
  • [AppBar|NavigationBar] Minor typos in navigation item section title. (Jeff Verkoeyen)
  • [CONTRIBUTING] Fix typo. (Jeff Verkoeyen)
  • [CONTRIBUTING] Cleaning up the checklist. (Jeff Verkoeyen)
  • [AppBar] No longer need to unwrap contentView in the imagery example. (Jeff Verkoeyen)
  • [Animated Menu Button] Double/float correction. (Will Larche)
  • [Demos] Pesto detail presentation and dismissal. (Will Larche)
  • [AppBar|NavigationBar] Added section on observing UINavigationItem. (Jeff Verkoeyen)
  • [AppBar] Minor grammatical rearrangements in README. (Jeff Verkoeyen)
  • [FlexibleHeader] Explain what the imagery usage example section is. (Jeff Verkoeyen)
  • [NavigationBar] Adding more specific documentation. (Jeff Verkoeyen)
  • [Docs] Cleanup pass for Markdown style (100 chars). (Adrian Secord)
  • [Sample] Pesto: Marking target ‘Requires Full Screen’ (Will Larche)
  • [community] Change Stack Overflow tag to ‘material-components-ios’. (Jeff Verkoeyen)
  • [AppBar] Replace iOS 9 APIs with older APIs. (Jeff Verkoeyen)
  • [AppBar] Add imagery example. (Jeff Verkoeyen)
  • [Demos] Pesto: Adding AppBar to Settings (Will Larche)
  • [Typography] Corrections to markdown in readme.md (Will Larche)
  • [Typography ReadMe] First pass at updated content (Will Larche)
  • [Site] Add option hint to build-site.sh (Yiran Mao)
  • [Testing] Naming consistency for unit tests. (Jeff Verkoeyen)
  • [Other] Remove old @ingroup document annotations. (Adrian Secord)
  • [ThumbTrack] Add Ink as a dependency (Ian Gordon)
  • [MDCButton] Documentation updates (Ian Gordon)
  • [Site] Update code snippet markdown h3 to h4 and corresponding css styles (Yiran Mao)
  • [Testing] Unit test target must be 8.0 in order to build Swift unit tests. (Jeff Verkoeyen)
  • [Ink] Changed MDCInkView API to better reflect the modern ink behavior (breaking). (Adrian Secord)
  • [Other] Fixes block comments globally. (Adrian Secord)
  • [FlexibleHeader] Prefer CGFloat when calculating shadow intensity. (Jeff Verkoeyen)
  • [Demos] Adding Font Opacities for all labels in Pesto (Will Larche)
  • [FlexibleHeader] Always project the flexible header's frame onto the tracking scroll view. (Jeff Verkoeyen)
  • [Catalog] Temporarily bump deployment target to 9.0 (Ian Gordon)
  • [MDCButton] Remove Work In Progress annotation (Ian Gordon)
  • [FlexibleHeader] Comment the #endif statements. (Jeff Verkoeyen)
  • [Typography] Re-added deleted file for deprecated class (randallli)
  • [FlexibleHeader] Revert tracking scroll view delegate assertion. (Jeff Verkoeyen)
  • [Pesto] Add example of MDCInk in Pesto header (Junius Gunaratne)
  • [Typography] Remove /** */ internal comments. (Jeff Verkoeyen)
  • [AppBar] Templatize the back button image. (Jeff Verkoeyen)
  • [Demos] Add legal copy above source files (Junius Gunaratne)
  • [Pesto] Change small header logo to text (Junius Gunaratne)
  • [UICollectionViewLayout] Correction for arithmetic (Will Larche)
  • [Shrine] Use small text logo on scroll, add did change page event handler (Junius Gunaratne)
  • [Site] Switch markdown formatting. (Jason Striegel)
  • [Site] Slider markdown formatting. (Jason Striegel)
  • [Site] ShadowLayer editing intro and markdown formatting. (Jason Striegel)
  • [Icons] MDCIcons+BundleLoader.h must be a protected header. (Jeff Verkoeyen)
  • [Demos] Pesto: Minor issues in style and safety (Will Larche)
  • [Site] ShadowElevations markdown formatting. (Jason Striegel)
  • [Site] Bash example consistency pass. (Jason Striegel)
  • [Icons] Base source needs its own explicit target. (Jeff Verkoeyen)
  • [Site] PageControl docs formatting, images, and video. (Jason Striegel)
  • [Icons] Add missing header search paths in pod specs. (Jeff Verkoeyen)
  • [Catalog] Update colors to blue branding color (Junius Gunaratne)
  • [AppBar] Provide recommendations for status bar style. (Jeff Verkoeyen)
  • [SpritedAnimationView] Remove testAnimationPerformance. (Jeff Verkoeyen)
  • [AppBar] Minor typo. (Jeff Verkoeyen)

2.2.0

Deprecations
  • [Typography] Marked FontResource deprecated. Use the renamed component as FontDiskLoader. (randallli)
Enhancements
  • [AppBar Example] Addressing code style feedback from D326. (Jeff Verkoeyen)
  • [AppBar] Add typical Swift usage example. (Jeff Verkoeyen)
  • [AppBar] Add UINavigatonItem section. (Jeff Verkoeyen)
  • [AppBar] readme updates. (Jeff Verkoeyen)
  • [AppBar] Remove unnecessary code from the ObjC example. (Jeff Verkoeyen)
  • [AppBar] Standardize and document the examples in preparation for upcoming examples. (Jeff Verkoeyen)
  • [AppBar] Use the catalog's blue color in the examples. (Jeff Verkoeyen)
  • [Button] Change ink color on buttons to improve visibility of ink (Junius Gunaratne)
  • [Catalog] Miscellaneous cleanup and fixes to the Catalog. (Jeff Verkoeyen)
  • [Catalog] Update catalog home screen to new light themed design (Junius Gunaratne)
  • [Docs] Navigationbar initial markdown formatting. (Jason Striegel)
  • [FlexibleHeader] Assert that the tracking scroll view has a delegate. (Jeff Verkoeyen)
  • [FlexibleHeader] Only call sizeToFit on the flexible header view when it does not have a tracking scroll view. (Jeff Verkoeyen)
  • [FlexibleHeader] Poke the header into laying out its content when the view controller has been fully registered. (Jeff Verkoeyen)
  • [FontDiskLoader] Revived old class, MDCFontResource, and marked it deprecated. (randallli)
  • [Icons] Add private/ directory to Icons target. (Jeff Verkoeyen)
  • [Icons] Added component (Jeff Verkoeyen)
  • [Icons] Bundles can't have plusses in their names. (Jeff Verkoeyen)
  • [Ink] markdown formatting. (Jason Striegel)
  • [Ink] Minor tweaks to ink for more consistency with other platforms (Junius Gunaratne)
  • [Site] Remove alternate remotes from build-site remote determination. (Jeff Verkoeyen)
  • [Site] Updates to top links and markdown formatting. (Jason Striegel)
  • [Site] Using HTML markup for lists to avoid github comment issue. (Jason Striegel)
  • [Typography] Moved the FontLoader and FontResource into their own components. (randallli)

2.1.1

Enhancements
Code
  • [AppBar] Add App Bar builder API. (Jeff Verkoeyen)
  • [AppBar] Fix compiler warnings about formatting NSIntegers. (Adrian Secord)
  • [FlexibleHeader] MDCFlexibleHeaderViewController conforms to UITableViewDelegate. (Jeff Verkoeyen)
  • [Ink] Updated the ink example to include smaller shapes. (Adrian Secord)
  • [Ink] Visual adjustments to ink ripple (Junius Gunaratne)
  • [NavigationBar] Add back button icon. (Jeff Verkoeyen)
Examples
  • [Demos] Updates to header behavior and minor layout changes after UX review (Junius Gunaratne)
  • [Pesto] Adding ‘nonatomic’ attribute to all delegates (Will Larche)
  • [Pesto] Corrections for build warnings (Will Larche)
  • [Pesto] making string and URL propertys ‘copy’ (Will Larche)
  • [Pesto] Style update: @property ivars (larche)
  • [Pesto] Update card zoom animation to be more Material Design like (Junius Gunaratne)
Docs and site
  • [Docs] Minor touchups to FlexibleHeader readme. (Jeff Verkoeyen)
  • [Docs] Minor updates to AppBar readme. (Jeff Verkoeyen)
  • [Docs] Updated community/README.md (Katy Kasmai)
  • [FlexibleHeader] README.md formatting. (Jason Striegel)
  • [Site] AppBar jump links to open in new tab. (Jason Striegel)
  • [Site] Buttons jump link formatting. (Jason Striegel)
  • [Site] Corrected links and formatting. (Jason Striegel)
  • [Site] Formatting markdown structure for site. (Jason Striegel)
  • [Site] Jump link styling for ButtonBar README. (Jason Striegel)
  • [Site] New formatting for Buttons documentation. (Jason Striegel)
  • [Site] Removing defunct placeholder documents. (Jason Striegel)
  • [Site] Replacing lorem with description content, where possible. (Jason Striegel)
  • [Site] Update component landing page's nav list (Yiran Mao)

2.1.0

Enhancements
  • [AppBar] Introducing the App Bar component. (Jeff Verkoeyen)
  • [Arcanist] Adds scripts/install_arc.sh, which installs or updates arc and our project-specific dependencies. (Adrian Secord)
  • [Arcanist] Updated Arcanist config to use submodules. (Adrian Secord)
  • [ButtonBar] Add ButtonBar component. (Jeff Verkoeyen)
  • [ButtonBar] Add ButtonBar readme. (Jeff Verkoeyen)
  • [Buttons] Add Flatbutton commonInit (Ian Gordon)
  • [Buttons] Add storyboard sample (Ian Gordon)
  • [Buttons] Clean up API documentation style. (Jeff Verkoeyen)
  • [Catalog] Adds localizable strings to catalog. Allows changing language in scheme for debugging. Closes #166. (Chris Cox)
  • [Catalog] Moving assets into catalog by convention. (Jeff Verkoeyen)
  • [CocoaPods] Allow pod install to be run from anywhere for the catalog. (Jeff Verkoeyen)
  • [CocoaPods] Standardizing the podspec format. (Jeff Verkoeyen)
  • [CocoaPods] Variables for podspec. (Jeff Verkoeyen)
  • [Examples] Moved all example resources into a examples/resources/ directory by convention. Jeff Verkoeyen
  • [FlexibleHeader] Add headerIsTranslucent API. (Jeff Verkoeyen)
  • [FlexibleHeader] Add sizeThatFits contract tests. (Jeff Verkoeyen)
  • [FlexibleHeader] Prefer use of childViewControllerForStatusBarHidden. (Jeff Verkoeyen)
  • [FlexibleHeader] Add tests for basic tracking scroll view contract. Jeff Verkoeyen
  • [HeaderStackView] Add HeaderStackView README. (Jeff Verkoeyen)
  • [NavigationBar] Add NavigationBar component. (Jeff Verkoeyen)
  • [Pesto] Update layout after design review with UX, fix rotation issues (Junius Gunaratne)
  • [Pesto] Update network image request methods, improve collection view cell layout (Junius Gunaratne)
  • [Scripts] Add generate_jazzy_yamls script. (Jeff Verkoeyen)
  • [Scripts] Added ‘bump version’ script and updated pod_install_all. (Adrian Secord)
  • [Shrine] Layout updates after UX design review, make sure rotation works correctly (Junius Gunaratne)
  • [Shrine] Use improved network image class from Pesto (Junius Gunaratne)
  • [Testing] Add support for xcode unit tests to arc unit. (Jeff Verkoeyen)
Bug Fixes
  • [AppBar] Minor changes to MDCAppBar documentation. (Jeff Verkoeyen)
  • [Buttons] Adjust the title insets of text buttons, not the frame. (Jeff Verkoeyen)
  • [Buttons] Fix uppercasing (Ian Gordon)
  • [Buttons] Fixes a bug with contentEdgeInsets for MDCFloatingButtonShapeMini. (Matt Rubin)
  • [Catalog] Remove the root catalog workspace. (Jeff Verkoeyen)
  • [CocoaPods] Minor fixes to Podspec for ButtonBar and Switch. (Jeff Verkoeyen)
  • [CocoaPods] Ran pod install on all Podfiles (randallli)
  • [CocoaPods] Update Podfile.lock (Ian Gordon)
  • [FlexibleHeader] Cleaning up the README.md. (Jeff Verkoeyen)
  • [FlexibleHeader] Minor wording consistency in FlexibleHeader readme. (Jeff Verkoeyen)
  • [HeaderStackView] Generated missing HeaderStackView .jazzy.yaml. (Jeff Verkoeyen)
  • [Ink] Fix animation, split foreground and background ripple into independent classes (Junius Gunaratne)
  • [Ink] Set evaporate point so ink expands from correct point on gesture cancel (Junius Gunaratne)
  • [Other] Remove the project templates directory. (Jeff Verkoeyen)
  • [PageController] Fix FP conversion warning (Ian Gordon)
  • [Site] Add landing page placeholder markdown files & update build-site.sh (Yiran Mao)
  • [Site] Continued work on markdown doc formatting. (Jason Striegel)
  • [Site] Editing pass at community.md. (Jeff Verkoeyen)
  • [Site] Fixed section regarding our license. (Jeff Verkoeyen)
  • [Site] Formatting for icon list markdown. (Jason Striegel)
  • [Site] Initial import of site build structure. (Jason Striegel)
  • [Site] Preliminary additions of the components checklist. (Jeff Verkoeyen)
  • [Site] Update community.md (Katy Kasmai)
  • [Site] Updates to the community.md doc. Jeff Verkoeyen
  • [SpritedAnimationView] Replaces example checkmark icon with grid/list icon. Closes #151. (Chris Cox)
  • [SpritedAnimationView] Updates readme image assets to new URL (Chris Cox)
  • [SpritedAnimationView] Updates readme, test, and example with grid/list icon. (Chris Cox)

2.0.4

Breaking
Enhancements
  • Fixed the reference to the private folder of Typography in podspec.
Bug Fixes

2.0.3

Breaking
Enhancements
  • Renamed the privateWasCapitalPrivate folders to private.
Bug Fixes

2.0.2

Breaking
Enhancements
  • Renamed the Private folders to privateWasCapitalPrivate.
Bug Fixes

2.0.1

Breaking
Enhancements
  • Removed unused files: podfile.lock
Bug Fixes

2.0.0

Breaking
  • [FlexibleHeader] Removed -[MDCFlexibleHeaderViewController addFlexibleHeaderViewToParentViewControllerView], MDCFlexibleHeaderParentViewController, and +[MDCFlexibleHeaderViewController addToParent:]. These methods were marked deprecated in 1.0.0. Jeff Verkoeyen
Enhancements
  • Components

    • [Slider] default color updated to nicer blue.
    • [Ink] Replace rand() with arc4random() to avoid a static analyzer warning. Ian Gordon
    • [FlexibleHeader] Removed redundant APIs from MDCFlexibleHeaderContainerViewController. Jeff Verkoeyen
    • Rename Private directories to private. (Jeff Verkoeyen)
  • Documentation

    • [Button] Readme copy edits
  • [Conventions] Moved all docs assets into a docs/assets directory per component by convention. Issue #130 filed by peterfriese. Closed by Jeff Verkoeyen

  • [CONTRIBUTING] Document our file system conventions in CONTRIBUTING.md. Jeff Verkoeyen

  • [CONTRIBUTING] Document our pull request expectations in CONTRIBUTING.md. Jeff Verkoeyen

  • [Switch] Removed internal docs that were pretending to be public docs. Jeff Verkoeyen

  • Catalog

    • Use single asset for component icons. Junius Gunaratne
    • Style catalog component screen and change to collection view. Junius Gunaratne
    • Sorts titles alphabetically. Also fixes title typo in sliders. Chris Cox
    • Catalog by convention grabs storyboard resources. Randall Li
    • Increasing our warnings coverage. Jeff Verkoeyen
    • Support duplicate hierarchy entries. Randall Li
    • Add support for Swift examples and unit tests Jeff Verkoeyen
    • Added Swift sample for buttons. Peter Friese
    • Refactored Button example to be compatibile with catalog by convention Randall Li
    • Refactored Slider example to be compatibile with catalog by convention Randall Li
    • Refactored ShadowLayer example to be compatible with catalog by convention Randall Li
    • Refactored Switch example to be compatible with catalog by convention Randall Li
    • Added Swift example for Typography. Peter Friese
  • Demos

    • Shrine
  • Misc

    • [Jazzy] scripts/gendocs.sh now infers Jazzy arguments by convention. Jeff Verkoeyen
    • [gh-pages] Minor tiding of the preview script for gh-pages. Jeff Verkoeyen Enforced lint with arc lint --everything.
  • Enable line length warnings in arc lint. Jeff Verkoeyen

  • Added script to run pod install on all pods. Randall Li

  • Fix build breakage in MDCCatalog.

  • [FlexibleHeader] Removed redundant APIs from MDCFlexibleHeaderContainerViewController. Jeff Verkoeyen

  • Increasing our warnings coverage. Jeff Verkoeyen

Bug Fixes
  • [scripts/gendocs.sh] Ensure that doc assets show up in jazzy output. peterfriese
  • [MDCSlider] Fixed to issue that was causing the slider to disappear when disabled. Randall Li
  • Ensure that all private directory references are lower-cased. Jeff Verkoeyen
  • [MDCSlider] fixed disabled state so it has the mask around the thumb. Randall Li
  • MaterialComponentsUnitTests.podspec depends on MaterialComponents. Jeff Verkoeyen
  • [PageControl] Add missing ss.resource_bundles to the podspec.
  • [Various] Fixed floating-point conversion warnings with Xcode 6 release mode. ajsecord
  • [Typography] Add CoreText dependency.

1.0.1

Enhancements
  • [Switch] Removed internal docs that were pretending to be public docs. Jeff Verkoeyen

1.0.0

Breaking
  • [MDCFlexibleHeaderView] Removed shadowIntensity property, use setShadowLayer:intensityDidChangeBlock: instead. Jeff Verkoeyen
  • [MDCInkTouchControllerDelegate] Renamed inkTouchControllerShouldProcessInkTouches: to inkTouchController:shouldProcessInkTouchesAtTouchLocation:. Chris Cox
Deprecations
  • MDCFlexibleHeaderParentViewController, +[MDCFlexibleHeaderViewController addToParent], and -[MDCFlexibleHeaderViewController addFlexibleHeaderViewToParentViewControllerView]. These APIs are being deprecated in favor of the eventual equivalent AppBar convenience APIs. In the meantime the FlexibleHeader will need to be instantiated and configured like a typical UIViewController.
Enhancements
  • [MDCFlexibleHeaderView] Added setShadowLayer:intensityDidChangeBlock:. Jeff Verkoeyen
  • [MDCHeaderStackView] Added MDCHeaderStackView. Jeff Verkoeyen
  • [MDCSlider] Changed default color. Randall Li
  • [MDCSlider] Readme.md copy edits. Randall Li
  • [MDCSwitch] Readme.md copy edits. Randall Li
  • [MDCTypograpy:example] Refactored to be compatible with catalog by convention Randall Li
  • [Shrine] First pass at a new Swift demo app, “Shrine”. Junius Gunaratne
Bug Fixes
  • Fixed issue where MDCShadowLayer would ghost behind the MDCFlexibleHeaderView. Jeff Verkoeyen

0.2.1

Bug Fixes

0.2.0

Enhancements
Bug Fixes

x.x.x

This is a template. When cutting a new release, rename “master” to the release number and create a new, empty “Master” section.

Breaking
Enhancements
Bug Fixes