Releases: material-components/material-components-android
Releases · material-components/material-components-android
1.4.0
What's new since 1.3.0
NavigationRailView
(Docs)
- Motion theming (Docs)
Other highlights
- Support for centered titles in
MaterialToolbar
(cbf528e)
- Max width for
MaterialButton
s (eb5453c)
- Max width for
BottomSheet
s (63d01aa)
- Updated edge-to-edge support for
BottomSheet
(c15139a) (b163458) (c574e9e) (28c3254)
TextField
's collapsed hint background no longer overlap with the field's background color (6015a4e)
Dependency Updates
Dependency |
Previous version |
New version |
compileSdkVersion |
29 |
30 |
androidx.core |
1.2.0 |
1.5.0 |
Full list of changes
1.3.0...1.4.0
1.4.0-rc01
Dependency Updates
Dependency |
Previous version |
New version |
androidx.core |
1.5.0-rc01 |
1.5.0 |
Library Updates
CollapsingToolbarLayout
- Fixed RTL text only laying out as RTL when actual text is RTL. (72b0c39)
- Added experimental setRtlTextDirectionHeuristicsEnabled() method. (5af3643)
- Fix title fade mode collapsing title position errors. (bab907f)
TextAppearance
- Added a TextAppearanceConfig.shouldLoadFontSynchronously() check to allow forcing synchronous font loading for edge cases. (4e45c2c)
Full list of changes
1.4.0-beta01...1.4.0-rc01
1.4.0-beta01
Compile SDK Version changed to API 30.
Dependency Updates
Dependency |
Previous version |
New version |
androidx.core |
1.2.0 |
1.5.0-rc01 |
Library Updates
NavigationBarView
- Moves OnNavigationItem listeners to the NavigationBarView class (0ad4a8d)
TextInputLayout
- Fixed cutout padding so text field outline doesn't overlap collapsed hint. (1c7b75f)
MaterialButton
- Updated Material Button style to set the preferred maximum width to 320dp. (eb5453c)
Documentation
- Improving navigation rail documentation. (dabdef9)
CollapsingToolbarLayout
- Updated fade mode to allow expanded title to translate 1:1 with scrolling content. (1445e6d)
- Added title line spacing and hyphenation frequency setters (3ea60e6)
- Fixed multiline animation for fade title collapse mode (a29c93a)
- Updated default multiline hyphenation frequency to StaticLayout.HYPHENATION_FREQUENCY_NORMAL (2c45dcc)
- Added support for multiline RTL when using fade title mode (ffef9f6)
- Added getLineCount() method (c9f7a61)
BottomAppBar
- change cornersize to float to avoid truncation errors (7ffa571)
BottomSheet
- read the edgeToEdgeEnabled value earlier in the lifecycle (9c842a2)
- Adding a max width for bottom sheets to optimize for large screens. (63d01aa)
Other
- Update compile sdk version to 30 (1234385)
- Updated TextAppearance to load font synchronously if its cached. Also updates lib to depend on 1.5.0-rc01 for the
ResourcesCompat#getCachedFont method. (d301145)
Full list of changes
1.4.0-alpha02...1.4.0-beta01
1.4.0-alpha02
Dependency Updates
Library Updates
Catalog
- Updated catalog to showcase header view inside a Navigation Rail View. (6a37a55)
- Updated catalog to demonstrate navigation rail in compact style. (ae8b185)
- Updated Navigation Rail catalog demo to showcase a colored navigation rail with animated icons. (4ff1440)
- Updated Navigtaion Rail catalog demo to showcase label visibility mode and menu gravity. (6cd0737)
- Updated catalog demo to showcase navigation rail component. (547979e)
Other
- Increment mdcLibraryVersion to 1.4.0-alpha02 (9bae8a7)
- API Fixes (fed90a9)
- Added setTheme api in builder to support passing theme via builder (6416467)
- Fixed javadoc formatting issue for lerp function (06993c8)
- Updated navigation rail documentation to update images and related example code. (b8ed2da)
- Added support for centering title and subtitle (cbf528e)
- Update packaging.yaml (a9a493f)
BottomSheet
- Sets default for BottomSheetBehavior paddingTopSystemWindowInsets to true (6f220b1)
- Allow opting out of edge to edge on the top (28c3254)
- Only add OnApplyWindowInsetsListener if edgeToEdgeEnabled is true (33f5aef)
ProgressIndicator
- Move canvas to the middle of the bounds, rather than by half the width/height. (dca33e3)
CollapsingToolbarLayout
- Added support for fade out/in title collapse mode (9c75ad0)
- Fixed Toolbar link errors in javadoc due to androidx vs framework Toolbar support (1f6ebe9)
Documentation
- Updated progress indicator document to clarify a usage requirement for linear contiguous animation. (ca285ea)
- Updating date picker doc. (be5d96d)
Transitions / Motion
- Updated FadeThroughProvider to allow customization of the fade through threshold. (5d65278)
TextInputLayout
- Adding setMinWidth and setMaxWidth methods on the TextInputLayout so it works as expected. (f97560d)
- Fixed clear icon being displayed when the text field is not focused. (740a3d2)
- Adding default, max and min widths for text fields to optimize for large screens. (81273ac)
BottomAppBar
- Support fab with rounded corners in cradle (ef8ad4d)
Badging
- Fix badge offset bug when attached and detached from a menu item on a toolbar. (948738e)
MaterialButtonToggleGroup
- Fixed issues with uncheck and check methods (ffb2ad1)
Full list of changes
1.4.0-alpha01...1.4.0-alpha02
1.4.0-alpha01
Library Updates
NavigationRail
- Added Navigation Rail component to the library. (e13610e) 🎉
- Added documentation for navigation rail view component. (853c695)
- Fixed spacing issue between destination icon and label. (585e0ff)
- Fixed issue that caused navigation rail to show label for active destination in compact mode. (1c872e8)
- Fixed issue that caused destination views to be smaller than the rail width. (42a19ab)
- Extracted common logic from bottom navigation component into navigation package. (aca5bfb)
BottomSheet
- Prevent adding half expanded accessibility action if fitToContents is true (2933600)
- Automatically enable insets for ThemeOverlay style (c15139a)
- Added flag to opt in to edge to edge behavior rather than only relying on the navigationBarColor (c574e9e)
- Updated the way BottomSheet handles insets (b163458)
Documentation
- Removed broken @link from MaterialButton Javadoc (25bf03e)
- Fixed theme attr name for floatingActionButtonStyle (5b32b25)
ProgressIndicator
- Updated "indicatorSize" in CircularProgressIndicatorSpec to be never less than twice of "trackThickness". (1fb57bc)
- Fixed NPE while setting progress in the indeterminate mode after inflation. (7a9e3f6)
- Fixed visibility bug in RecyclerView. (5910955)
- Fixed not hidden when committed hiding is interrupted by window hiding (i.e., home button pressed). (196116f)
- Fixed determinate drawable not fully shown when switched from indeterminate mode for the second time in SDK 19/21/23. (712f5f3)
- Fixed indeterminate animation not playing after inflation/being visible in SDK 21. (86b70d7)
- Updated linear indeterminate animation. (fdb420f)
- Updated circular indeterminate animation. (2163e3d)
- Added other predefined styles in document. (2a6715f)
- Fixed incorrect visibility when used in the recycler view. (9ccad21)
- Renamed indeterminateAnimationType enums "seamless" and "spacing". (e5375fc)
- Removed unnecessary style attributes from catalog. (80b5cf6)
- Added sized styles for circular type. (4ab8cb1)
- Corrected comments for javadoc. (3795197)
- Updated track thickness used in standalone demo as 2.5 dp. (968fb19)
- Renamed some attributes. (9d7ae04)
- Hid AnimatorDurationScaleProvider from API. (5ff62d3)
Transitions / Motion
- Updated documentation to include motion theming (3d4a341)
- Added theming to MaterialFadeThrough transition. (655caed)
- Added theming to MaterialSharedAxis transition. (478b412)
- Added theming to MaterialFade transition. (8e79c7e)
- Changed motionPath theme attr format to enum|string (7e578e4)
- Applied easing, duration, and path theme attributes to MaterialContainerTransform (5154eea)
- Added easing, duration, and path theme attributes, as well as utilities to read them (186d5ed)
Catalog
- Make demo links use minHeight instead of specifying height so they won't be truncated at large font sizes. (a8156be)
TimePicker
- Fixed issues when re-using dialog instance (11169ce)
- Changed clock face size to be dynamic (bf0d11b)
- Fixed numbers glitching on first show of time picker (74350de)
- Fixed text input mode to correctly restore state (76cf0eb)
- Added dev docs (3eddfb9)
- Renamed ThemeOverlay.MaterialComponents.MaterialTimePicker to ThemeOverlay.MaterialComponents.TimePicker to be more consistent with other time picker styles (4af9eab)
- Changed text input view to a view stub (cbef0d3)
- Removed hint setting (074ed18)
- Use MaterialColors to correctly read CSLs with theme attributes (9f79157)
- Make default theme overlay public (890b727)
Slider
- Improve listener documentation (1f76fcc)
CollapsingToolbarLayout
- Updated CollapsingToolbarLayout to support framework android.widget.Toolbar (<Toolbar) (036cff7)
Snackbar
TextInputLayout
- Adjusted background of collapsed hint to not overlap with edit text's background. (6015a4e)
- Fixed placeholder text not being properly announced. (40e33a7)
- Fixed IndexOutOfBoundsException when trying to change end icon (dd0e697)
MaterialDatePicker
- Fixed incorrect date being selected on scrollable months. (db42490)
- Fixed NullPointerException on MonthAdapter.updateSelectedState (00e3320)
- Localized numbers in month (3e79942)
- Fixed day of week adapter localization for APIs before O (bec2de9)
Other
- Do not show tooltip on long press for L and M devices to avoid freezing devices on repeated long press. (da2d826)
- Remove duplicate state from BottomSheetBehavior#getState doc. (8f77050)
1.3.0
What's New Since 1.2.1?
New Components
MaterialTimePicker
(docs)
ProgressIndicator
(docs)
More Library Updates
Dependency Updates
Dependency |
Previous version |
New version |
constraintlayout |
1.1.3 |
2.0.1 |
Full list of changes
1.2.1...1.3.0
1.3.0-rc01
Dependency Updates
Library Updates
TimePicker
- Fixed numbers glitching on first show of time picker (182b297)
- Fixed text input mode to correctly restore state (f97779e)
MaterialDatePicker
- Fixed incorrect date being selected on scrollable months. (d523523)
- Fix NullPointerException on MonthAdapter.updateSelectedState(MonthAda… (dad7752)
- Localized numbers in month (206699f)
- Fixed day of week adapter localization for APIs before O (b4b624e)
ProgressIndicator
- Fixed NPE while setting progress in the indeterminate mode after inflation. (c78c1ef)
- Fixed the visibility bug in RecyclerView. (e9fcdf0)
- Fixed not hidden when committed hiding is interrupted by window hiding (i.e., home button pressed). (814ce6d)
- Fixed determinate drawable not fully shown when switched from indeterminate mode for the second time in SDK 19/21/23. (04ae5d7)
- Fixed indeterminate animation not playing after inflation/being visible in SDK 21. (46d8fba)
- Updated linear indeterminate animation. (1ff2d6a)
- Updated circular indeterminate animation. (4dd1d84)
Full set of changes: 1.3.0-beta01...1.3.0-rc01
1.3.0-beta01
Dependency Updates
Library Updates
ProgressIndicator
(new!)
- Fixed incorrect visibility when used in the recycler view. (60723fd)
- Renamed indeterminateAnimationType enums "seamless" and "spacing". (77cf940)
- Removed unnecessary style attributes from catalog. (f7c4056)
- Added sized styles for circular type. (e2a54da)
TimePicker
(new!)
- Renamed ThemeOverlay.MaterialComponents.MaterialTimePicker to ThemeOverlay.MaterialComponents.TimePicker to be more consistent with other time picker styles (130993d)
- Changed text input view to a view stub (3a00d7a)
- Removed hint setting (7915087)
- Using MaterialColors to correctly read CSLs with theme attributes (9c9e6c4)
- Making default theme overlay public (0e04c9d)
Chip
- Updated javadocs @see methods to match the actual methods. (3a0de84)
CollapsingToolbarLayout
- Updated CollapsingToolbarLayout to support framework android.widget.Toolbar (<Toolbar) (d568e55)
Snackbar
TextInputLayout
- Fixed placeholder text not being properly announced. (1290f82)
- Fixed IndexOutOfBoundsException when trying to change end icon (963ad14)
Other
- Added or updated string translations for i18n / l10n (39f7d34)
Full set of changes: 1.3.0-alpha04...1.3.0-beta01
1.3.0-alpha03
Dependency Updates
Dependency |
Previous version |
New version |
constraintlayout |
2.0.0-beta7 |
2.0.1 |
Library Updates
i18n / l10n
- Added string translations for to Date Picker, Time Picker, Bottom Sheet, TextField, Chip, Badge, Dialog (af375eb, c1a290e, 9d1d977, 467bb88, 0845dfe, 23018e1, cf3c091)
NavigationView
- Fix obtaining Activity in setupInsetScrimsListener (a6a750b)
- Support for shapeAppearance and shapeAppearanceOverlay attributes (e6f05bc)
MaterialDatePicker
- Updated header title strings to match spec (d827426)
- Fixed formatting of year month date pattern for year selection dropdown (98c7cd1)
- Fixed issue where default selection date would visually stay selected when choosing different date (8f455c0)
- Updated default selection-based openAt logic to consider valid calendar constraints (5507687)
- Fixed the filled range with RTL layout (ea76386)
- Delay showing validation error by 1 second (5541f02)
- Updates the color of the month labels in fullscreen mode (c65a262)
- Changed openAt to default based on selection, if not provided (193ce2d)
- Allow for styling dialog close icon color for full screen dialog (bf86d82)
- Added a datevalidator for multiple range (85739c7)
- Added DateValidatorPointForwardTest (b3913cb)
- Update month and year navigation to use the correct color (6cb28b9)
- Made some MaterialCalendar related methods/classes public, but still restricted. (431e092)
- Allow RangedDateSelectors with multiples ranges in different months to be shown correctly. (fb23eff)
- Speed up calendar performance by only updating certain views when a day is clicked, instead of recreating and redrawing all of them. (b12c5c5)
- Fix the failed test cases in DateStringsTest (2353a29)
- Added placeholder text in text input mode to show date format (6050bd4)
- Fixed orientation of next/previous month button icons for RTL languages (b82d41f)
- Updated text input mode to respect custom theme res id (5bd64f4)
A11y
- Fixed dropdown list not focusing for editable dropdown menus. (be8fc51)
TimePicker
- Fixed ClassCastException with a Bridge Theme (a4b008e)
- Added the ability to switch to text input mode when double tapping the selected number (bad8131)
- Added content description to button to switch input modes (4fa1341)
- Added setters for the title string (91c972c)
- Documented hour and minutes ranges (c0be2c0)
- Changed positive listener to be an OnClickListener (0aed26b)
- Support formatting the numbers depending on the configuration locale (a543032)
- Added docs (c11ef51)
- Removed newInstance method in favor of Builder Class (dbbd27c)
- Added listeners (2ccc716)
- Fixed size on edit text smaller than on chip button (5f9aa7f)
- Fixed incorrect offset applied to shaders (dd254c5)
- Removed checkable from timepicker mode button (8ea36ae)
- Fixed exception when shrinkResources is enabled (162205b)
BottomSheet
- Fixed issue where peekHeight is more than the height of the contents (e944d1b)
- Changed DialogFragment import to package qualifier in javadoc. (d30f4d2)
- Add custom action to drag bottomsheet half expanded. (db4275f)
- Changed bottom gesture inset handling to ensure a minimum peek height with a buffer built in, instead of always adding the inset to the peek height (when gesture nav is enabled) (0df7724)
- Added missing defensive checks to viewDragHelper calls (3821664)
- Fixed NullPointerException when calling updatePeekHeight with null viewRef (96674d5)
- Updated gesture inset bottom to be saved in separate field to fix compounding peek height issue (9fa9f1e)
Transitions / Motion
- Fixed crash in container transform view demo. (f73d354)
- Updated MaterialFadeThrough to respect client-set alpha values on target views. (06322aa)
- Added content to the contact card in the View Container Transform demo. (4f5e045)
- Added a contact card to View Container Transform demo and created an expanded card for cards transition into. (653701d)
- Update doc with guidance about "Container transform: fade through variant" (474f912)
- Added resource links to documentation (77c71f3)
- Fix catalog hero demo from loosing scroll position when returning to album list. (0314540)
- Swapped shared axis code snippet order for better readability (35b914e)
- Updated Catalog container transform enter/return configuration Slider step sizes to fix crash (a83011d)
- Fix intermediate flash during view container transform demo. (3f52e7f)
- Formatted AndroidX vs Platform transitions info in Motion.md doc (f00cd57)
- Made shared axis end view in catalog demo scrollable. (acdd3a9)
- Removed internal listener from container transform after transition ends. (05e0496)
- Updated library version in doc to 1.2.0 stable (eb1c8a6)
- Improved MaterialContainerTransform approximation of native elevation shadows by using location of bounds on screen (23d6100)
- Updated docs to include view-to-view targeting requirements (76cba45)
Chip
- Fixed wrong behavior when checked chip with id = NO_ID is added to ChipGroup (6d75b92)
- Update chipgroup demo to include switch to toggle the requiredSelection attr. (4b01ac4)
- Generate a valid ID for Chip view on any API level (6daf233)
Snackbar
- Added ability to have Snackbar position respond to anchor view layout changes (89a1bf8)
- Changed dimens according to spec (391d1f8)
MaterialButton
- Support setting vertical insets programatically (f837cb7)
ProgressIndicator
- Fixed update listener for determinate drawable. (f330ee8)
- Removed custom drawing support to minimize API exposure. (395c2cd)
- Added the setter for component's visibility after hide animation. (f0b8c15)
- Fixed the style used on indeterminate drawable in the standalone demo. (7200cd5)
- Updated style names. (90f041d)
- More cleanup of renaming indicatorWidth to indicatorSize. (78aa3ea)
- Corrected the behavior and comment of the setProgress to align with the framework ProgressBar API. (4d866b0)
- Improved inflation performance. (416eab5)
- Renamed indicatorWidth with indicatorSize to eliminate the confusion of indicatorWidth controlling view height in LINEAR types. (77582b5)
- Fixed canvas state leak in IndeterminateDrawable. (5a1c183)
- Added a new attribute to delay show actions. (0b82e81)
- Improved the readability of initializeDrawables() function. (eaa0a7f)
Tabs
- Added getter in TabLayoutMediator to return whether a TabLayout and a ViewPager2 are linked together. (5c9e250)
- Added support for preserving the indicator drawable's intrinsic color (84fd465)
- Add a setId method that can be used for espresso (4e62f96)
MaterialButtonToggleGroup
- Fixed margins on MaterialButtonToggleGroup when changing orientations (70d659d)
Documentation
- Updated switch doc name file. (fe470c0)
- Renamed timepicker to TimePicke...
Read more