Releases: material-components/material-components-ios
v42.2.0
API changes
Typography
UIFont(MaterialTypography)
new method: -mdc_fontSizedForMaterialTextStyle:scaledForDynamicType:
in UIFont(MaterialTypography)
Component changes
ButtonBar
Changes
- [ButtonBar, NavigationBar] Add BUILD file for kokoro (#2598) (Robert Moore)
NavigationBar
Changes
- [ButtonBar, NavigationBar] Add BUILD file for kokoro (#2598) (Robert Moore)
TextFields
Changes
- Corrected imports in examples. (#2655) (Randall Li)
Typography
Changes
v42.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
- Fixed float conversion build errors (#2602) (Randall Li)
- [Bazel] Fix BUILD files for bazel 0.8.0 and latest apple_rules (#2640) (Robert Moore)
AppBar
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
BottomAppBar
Changes
- Corrected imports in examples. (#2656) (Randall Li)
BottomNavigation
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
BottomSheet
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
ButtonBar
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
Buttons
Changes
- Corrected imports in examples. (#2645) (Randall Li)
- Add unit tests for Floating Button layout (#2577) (Robert Moore)
- Fixed float conversion build errors (#2602) (Randall Li)
- Improve FloatingButton documentation (#2578) (Robert Moore)
- Re-enable legacy ink. (#2657) (featherless)
- Rename
MDCFloatingButton updateShapeForcingLayout
(#2625) (Robert Moore) - Revert "Re-enable legacy ink. (#2657)" (#2664) (featherless)
Chips
Changes
- Call [super layoutSubviews] (#2667) (Sam Morrison)
- Chip field (#2600) (Sam Morrison)
- Fixed float conversion build errors (#2602) (Randall Li)
- Stateful shadow colors (#2668) (Sam Morrison)
- Use shaped shadow layer (#2628) (Sam Morrison)
CollectionLayoutAttributes
Changes
- Add BUILD file (#2646) (Robert Moore)
Collections
Changes
- Fix iOS 11-specific bug where section headers would overlap scroll indicators. (#2572) (featherless)
- Fixed float conversion build errors (#2602) (Randall Li)
- Fixed method collision build errors (#2603) (Randall Li)
Dialogs
Changes
- Add BUILD file and test (#2647) (Robert Moore)
- Fixed float conversion build errors (#2602) (Randall Li)
FeatureHighlight
Changes
- Add BUILD file and no-op test (#2648) (Robert Moore)
- Fixed float conversion build errors (#2602) (Randall Li)
- Move Dynamic Type support to the FeatureHighlightView (#2653) (ianegordon)
FlexibleHeader
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
HeaderStackView
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
Ink
Changes
- Fixed float conversion build errors (#2602) (Randall Li)
- [Bazel] Fix BUILD files for bazel 0.8.0 and latest apple_rules (#2640) (Robert Moore)
NavigationBar
Changes
- Fix navbar placement in catalog for iPhoneX (#2581) (Yarden Eitan)
- Fixed float conversion build errors (#2602) (Randall Li)
- [[CocoaPods] Added warnings to example...
Release 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
- Add a delegate callback for the activity indicator mode animation (#2537) (John Detloff)
- Add compile time flag for import style (#2562) (Louis Romero)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
- [Themers] Add nullability to themers (#2551) (Junius Gunaratne)
AppBar
Changes
- Add compile time flag for import style (#2562) (Louis Romero)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
- [AppBar:ColorThemer] Add nullability annotations (#2536) (Brian Moore)
BottomAppBar
Changes
- Add compile time flag for import style (#2562) (Louis Romero)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
BottomNavigation
Changes
- Add compile time flag for import style (#2562) (Louis Romero)
- Ensure item top and bottom content insets are identical (#2579) (Junius Gunaratne)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
- [Ink] Use updated ink for bottom navigation (#2567) (Junius Gunaratne)
- [Themers] Add nullability to themers (#2551) (Junius Gunaratne)
BottomSheet
Changes
- Add compile time flag for import style (#2562) (Louis Romero)
- Deprecate to-be-removed APIs. (#2539) (featherless)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
ButtonBar
Changes
- Add compile time flag for import style (#2562) (Louis Romero)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
- [Cleanup] remove checks for iOS8 and above as we now only support iOS8+ (#2555) (Yarden Eitan)
- [Themers] Add nullability to themers (#2551) (Junius Gunaratne)
Buttons
Changes
- Add BUILD file for kokoro (#2599) (Robert Moore)
- Add compile time flag for import style (#2562) (Louis Romero)
- Extended FAB (#2563) (Robert Moore)
- Readability for newlines (#2568) (Robert Moore)
- Rename
imageTitleSpace
(#2565) (Robert Moore) - Revert "Add compile time flag for import style (#2562)" (#2612) (featherless)
- [Ink] Enable updated ink on MDCButton, add support for shadowPaths (#2530) (Junius Gunaratne)
- [Themers] Add nullability to themers (#2551) (Junius Gunaratne)
CollectionCells
Changes
- Add compile time flag for import style (#2562) (Louis Romero)
- Revert "Add compile time flag for import style (#2562)" (#2612) (featherle...
Release 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
- Fixed some compiler warnings (#2426) (Randall Li)
Buttons
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
Dialogs
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
- Migrate to Material Motion. (#2481) (featherless)
FeatureHighlight
Changes
- Minor fix of comment block notation. (#2503) (featherless)
FlexibleHeader
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
Ink
Changes
- Retrofit new ink layer with updated animation into existing ink API (#2488) (Junius Gunaratne)
MaskedTransition
Changes
- Bump the transitioning dependency to v5.0.0 (#2525) (featherless)
PageControl
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
ProgressView
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
ShadowElevations
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
- [Shadow*] Add BUILD files for shadow components. (#2510) (featherless)
ShadowLayer
Changes
- Add support for implicitly animating the shadow layer's elevation using MotionAnimator. (#2509) (featherless)
- [Shadow*] Add BUILD files for shadow components. (#2510) (featherless)
Slider
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
Snackbar
Changes
Tabs
Changes
- Add missing import (#2534) (featherless)
- Fixed some compiler warnings (#2426) (Randall Li)
TextFields
Changes
- Adding legacy storyboard. (#2517) (Will Larche)
- Correcting class of the textview to match the new class required for MDCMultilineTextField. (#2519) (Will Larche)
- Fixes bug: multiline having ambiguous height in the text view (#2489) (Will Larche)
- TrailingView tests. (#2516) (Will Larche)
- Updating encoding and copying. (#2515) (Will Larche)
Typography
Changes
- Fixed some compiler warnings (#2426) (Randall Li)
Release 40.1.1
Release 40.1.0
API Changes
AnimationTiming
- New enums:
MDCAnimationTimingFunctionStandard
,MDCAnimationTimingFunctionDeceleration
, andMDCAnimationTimingFunctionAcceleration
.
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 toNSObject
.
Component changes
ActivityIndicator
Changes
- Convert motion spec to an Objective-C static class. (#2451) (featherless)
- Make the motion spec values be class properties. (#2473) (featherless)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Use framework-style imports. (#2428) (Sylvain Defresne)
- [Kokoro] Support for TextFields, Math, and Typography (#2432) (Will Larche)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
AnimationTiming
Changes
- Rename animation timing curves to match spec. (#2370) (Cody Weaver)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Update animation timing README and examples (#2444) (Cody Weaver)
AppBar
Changes
- Automated header standardization by the kokoro script. (#2472) (featherless)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Use framework-style imports. (#2428) (Sylvain Defresne)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
BottomAppBar
Changes
- Implement viewSafeAreaInsetsDidChange (#2466) (Junius Gunaratne)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Use framework-style imports. (#2428) (Sylvain Defresne)
BottomNavigation
Changes
- Adding app bar navigation to demo (#2430) (Junius Gunaratne)
- Implement viewSafeAreaInsetsDidChange (#2465) (Junius Gunaratne)
- Use framework-style imports. (#2428) (Sylvain Defresne)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
BottomSheet
Changes
- Convert to Material Motion. (#2400) (featherless)
- Fix build breakage due to floating point conversions. (#2449) (featherless)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
ButtonBar
Changes
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Use framework-style imports. (#2428) (Sylvain Defresne)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
Buttons
Changes
- Automated header standardization by the kokoro script. (#2472) (featherless)
- Fix example storyboard module (#2427) (Robert Moore)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Update layer elevation only on change (#2484) (Robert Moore)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
Chips
Changes
- Fix private header import (#2434) (Sam Morrison)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
CollectionCells
Changes
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Use framework-style imports. (#2428) (Sylvain Defresne)
Collections
Changes
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
Dialogs
Changes
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- Use framework-style imports. (#2428) (Sylvain Defresne)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
FeatureHighlight
Changes
- Automated header standardization by the kokoro script. (#2472) (featherless)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
FlexibleHeader
Changes
- Automated header standardization by the kokoro script. (#2472) (featherless)
- Fix bug where insets wouldn't be removed from the old tracking scroll view when a new one was set. (#2498) (featherless)
- Replace unnecessary imports with forward declarations (#2429) (Yurii Samsoniuk)
- [Themer] Updating the protocol generic syntax. (#2440) (Will Larche)
- [kokoro] Specify ios_multi_cpus and ios_minimum_os when building against bazel. (#2458) (featherless)
HeaderS...
Release 40.0.3
40.0.3
- [Chips] Fix private header import (#2434)
Release 40.0.2
- Fix missing step from 40.0.1: update version numbers throughout library.
Release 40.0.1
- [Catalog] Added Import to catalog’s AppDelegate.
Release 40.0.0
API Changes
Bottom Sheet
- Added
trackingScrollView
property to support better dragging.
Chips (new)
- Added Chips.
LibraryInfo (new)
- Added LibraryInfo for accessing information about the MDC library itself.
Tabs
- Added
[MDCTabBar defaultHeightForBarPosition:itemAppearance:]
.
Text Fields
- Refactored color theming support.
Component changes
ActivityIndicator
Changes
- Fix bug where outer rotation was incorrect in determinate state. (#2390) (featherless)
- Prefix the motion spec with the API name. (#2387) (featherless)
- Replace Motion relative imports with framework imports throughout the repo. (#2424) (featherless)
- [ProgressView|ActivityIndicator] Fix build (#2385) (Brian Moore)
AppBar
Changes
BottomNavigation
Changes
- Update bottom navigation bar defaults to match native component height and orientation behavior (#2411) (Junius Gunaratne)
BottomSheet
Changes
- Add BUILD file for kokoro + bazel support. (#2396) (featherless)
- Add a trackingScrollView API to the bottom sheet controller. (#2420) (featherless)
- Don't set the frame on the draggable view until we've set the anchor point. (#2399) (featherless)
- Remove umbrella imports from source files. (#2397) (featherless)
- Replace mdc_cancel category method with a C function. (#2398) (featherless)
- Safe Area fixes (#2392) (Andrés)
Chips
Changes
- Chip component (#2389) (Sam Morrison)
Collections
Changes
- Support SafeAreaInsets in MDCCollectionInfoBarView. (#2378) (Andrés)
- Use MDCPalettes for info bar colors (#2364) (Yurii Samsoniuk)
FlexibleHeader
Changes
- Add hideViewWhenShifted API. (#2317) (Andrés)
LibraryInfo
Changes
- Add new LibraryInfo component (attempt #2) (#2412) (Adrian Secord)
MaskedTransition
Changes
PageControl
Changes
ProgressView
Changes
- Replace Motion relative imports with framework imports throughout the repo. (#2424) (featherless)
- [ProgressView|ActivityIndicator] Fix build (#2385) (Brian Moore)
Slider
Changes
- Correct colors for slider default light color scheme (#2409) (John Detloff)
- Use MDCPalettes for default thumb track color (#2369) (Yurii Samsoniuk)
Tabs
Changes
- Remove incorrect layout optimization (#2422) (Brian Moore)
- Use bottom position when determining the bottom tab bar's height (#2375) (Brian Moore)
TextFields
Changes
- Complete theming of controllers (#2416) (Will Larche)
Themes
Changes
- [TextFields] Complete theming of controllers (#2416) (Will Larche)