Releases: material-components/material-components-android
Releases · material-components/material-components-android
1.6.0-alpha03
Dependency Updates
- No dependency updates
Library Updates
Color
- Refactored DynamicColors overloading methods and added DynamicColorsOptions class to support color harmonization. (bdbf052)
- Updated DynamicColors util to applyStyle() on window decorView theme as well to fix potential ContextMenu issue (f6c8fa5)
- Updated DynamicColors util to use activity.getTheme().applyStyle() instead of activity.setTheme() to workaround Force Dark issue (b84f35f)
- Added missing M3 color attributes to public (0c8fc41)
- Add support for color resources harmonization in XML (869d943)
TextInputLayout
- Provide set simple items API with default item layout for MaterialAutoCompleteTextView (85ed993)
- Updated documentation to clarify end icon mode's expected usage and behaviors relating to the icon's drawable. (1b7e92d)
- Fixed icons behaving unexpectedly when switching modes + bug of wrong icon tint state when setting an icon programmatically. (ae16efd)
- Added line mask expansion animation to filled box underline. (2463946)
- Added support for minEms and maxEms (7d46b95)
MaterialButtonToggleGroup
- Removed getAccessibilityClassName() override since TalkBack doesn't recognize the class name, in favor of getting identified as a generic list container (96fa85e)
Catalog
Dialog
- Fixed crashes when colorControlHighlight is a CSL (1c5c054)
NavigationRail
Tokens
Snackbar
Badging
- Prevent multiple badges being attached to a menu item at the same time (b3db1cc)
CollapsingToolbarLayout
A11y
- Fixed prefix/suffix not being properly announced when the text field is focused and they show up. Improved their screen reader focus order to align with the visual order of the elements: navigating to the left will focus on the prefix and navigating to the right will focus on the suffix. (b690127)
- Fixed Switch Access not being able to reach clock items (f9914da)
TopAppBar
MaterialCardView
- Fixed crash on Pre-Q devices when checked icon is null (b4cab87)
BottomNavigationView
BottomSheet
MaterialDatePicker
- Start align edit icon in landscape (94cd532)
Chip
- Refactored chip group selection logic to a standalone class (f3c6430)
MaterialButton
- Fixed icon position not being updated when size is not changed (b0f3700)
TimePicker
- Added setters for hour and minute (85a4405)
Toolbar
- Hide shadows on all M3 Toolbar styles, not just Surface style (b49284e)
Slider
- Added support for custom thumb drawables (17da000)
Typography
Full list of changes
1.6.0-alpha02
Dependency Updates
Dependency | Previous version | New version |
---|---|---|
androidx.fragment | 1.0.0 | 1.2.5 |
Library Updates
Material 3
TextInputLayout
MaterialDatePicker
Dialog
Badging
TopAppBar
Snackbar
A11y
Color
- Avoid Short#compare usage in ColorResourcesTableCreator.java since it requires API level 19 (48741b4)
- Set android:windowBackground to android:colorBackground (dac9bf3)
- Add additional condition to check dynamic color supported devices (833f410)
- Add Resource Table format for XML color Harmonization. (822a5b2)
Divider
- Added attribute in MaterialDividerItemDecoration to remove item decoration from last recycler view item. (9416b2c)
Tabs
MaterialButton
- Support icon gravity with text alignments other than centered (6c41f07)
Slider
- Fix lint error caused by hidden super interface (3cf0647)
Tokens
- Upgrade M3 token resources to v0.71 (4de8565)
Documentation
- Update library version in Getting Started doc to 1.5.0 (e98cee5)
Catalog
- Fix chip icon colors (5fac4fd)
Other
- Update library version to 1.6.0-alpha02 (80e50de)
- Replace all jcenter with mavenCentral (ad97f01)
- Horizontally center the checkbox button drawable if there is no text (8f4837e)
- Fix drawables not applying system level bold (90787bf)
- Simplify MaterialButtonToggleGroup's checking logic (3db25be)
- Remove paddingTopSystemWindowInsets from flags checked to apply windowInsetListener (2e73d1a)
Full list of changes
1.5.0
What's new since 1.4.0
Material3
themes, styles, and functionality! Check out the following resources for more information:- Material 3 site and guidelines
- Start building with Material You blog post
- Migrating to Material Design 3 blog post
- Getting started & dynamic color developer documentation
- New
Divider
component (Docs)
Other highlights
Badging
- Added support for differing offsets for badges with/without text, and support for badge width and padding in styles. (bd4914d)
BottomAppBar
BottomNavigationView
- Updated to explicitly read and set minimum height. (943c4f0)
BottomSheet
- Added maxHeight to bottom sheet behavior (a38d2d8)
Chip
- Fixed icon tint states are not updated after setting new icon (c08a07d)
CollapsingToolbarLayout
- Added option to add extra height when title text spans across multiple lines (655dde0)
- Added option to force always applying system window inset top regardless of layout_height (9ebf1a1)
- Fixed multiline RTL collapsed title text position (af35dfb)
- Added support for expanded and collapsed title text color attributes (5c14772)
- Fixed RTL text only laying out as RTL when actual text is RTL (841f229)
- Added title line spacing and hyphenation frequency setters (f0ce498)
- Added support for multiline RTL when using fade title mode (f0ac362)
- Updated default multiline hyphenation frequency to StaticLayout.HYPHENATION_FREQUENCY_NORMAL (3ad232d)
MaterialButton
MaterialDatePicker
Snackbar
TextInputLayout
TimePicker
Dependency Updates
Dependency | Previous version | New version |
---|---|---|
compileSdkVersion | 30 | 31 |
targetSdkVersion | 29 | 31 |
androidx.annotation | 1.0.1 | 1.2.0 |
androidx.drawerlayout | N/A | 1.1.1 |
Full list of changes
Full list of release notes
1.5.0-rc01
Dependency Updates
- No dependency updates
Library Updates
Material 3
- Add supporting brand list of dynamic colors (66b1c0e)
- Update M3 card elevation according to the spec (91f1f2e)
- Add missing attributes to M3 button styles (55a67a6)
- Update Button elevation to match specs (835624e)
- Update Button padding to match specs (0ac68ec)
- Update M3 navigation rail text appearances (db5b3d4)
- Do not enforce text appearance with Tab M3 styles (7975920)
- Fix M3 date picker styles (1579272)
Chip
- Add missing attributes to M3 chip styles (d95ad41)
Dialog
BottomNavigationView
Snackbar
- Fix maxWidth is not applied on Snackbar (15e2254)
Color
- Add additional condition to check dynamic color supported devices (817dc12)
Other
- Update library release version to 1.5.0-rc01 (f14d1a2)
Full list of changes
1.6.0-alpha01
Dependency Updates
- No dependency updates
Library Updates
Material 3
- Update M3 card elevation according to the spec (bb23e2d)
- Add missing attributes to M3 button styles (3c9b452)
- Update elevation to match specs (db64adb)
- Update padding to match specs (f028380)
- Update M3 navigation rail text appearances (6b57c52)
- Do not enforce text appearance with M3 styles (04a6b6c)
- Fix M3 date picker styles (fba1a34)
- Change checkedIconGravity values to enum (bc56d5b)
- Add supporting manufacturer list of dynamic colors (e5023f6)
- Add textAppearanceListItem* styles to theme (bed2ac1)
A11y
- Improved accessibility for switch access. (2d337c5)
- collapsing toolbar layout not respecting system level bold (65754bd)
- accessibilityManager.isEnabled() is not reliable to check if component is in a11y mode, as it may return true unexpectedly. (b878fc3)
- Fix Talkback doesn't announce minutes selection (c07e5f2)
- Make Talkback announce action on clock items (38406e1)
- Fixed dropdown list not showing for non editable dropdown menus in switch access mode. (d8e19dd)
- Fixed RTL support for setting corner radius on TextInputLayout. (dca7fc0)
- Fix system level bold not applied (c6be59c)
- Removed TextInputLayout's placeholder text duplicated announcement. (20c3ad0)
Documentation
- Added note about screen readers skipping decorative text field elements. (a369449)
- Add migration codelab and M2 -> M3 theme mapping to Getting Started doc (05a74bd)
- Removed broken links from divider doc. (3b6c804)
- Reformatted color.md. (735b88e)
- Update Getting Started doc to link to Material Theme Builder (255cc17)
- Small typo fix in checkbox doc (2b441e6)
TextInputLayout
- Remove unneeded logic (1d50ed7)
- Fix crashes when text field size is too large (cf5df22)
- Correctly calculate hint text offset (34cce18)
- Fixed calculateLabelMarginTop() value for filled text field style, which caused getBaseline() to return a wrong offset. (c7c5c7c)
- Fix helper text label for usage (aaac96d)
- Fixed getBoxCornerRadiusBottomEnd and getBoxCornerRadiusBottomStart returning wrong values. (9d2f864)
- Fixed shouldAnimateCaptionView() returning true when captionText is null. (c352dfd)
- Don't add placeholder view to text field's input frame if placeholder is null. (3ca3b71)
Color
Catalog
TopAppBar
MaterialDatePicker
Chip
MaterialCardView
Tabs
- Fix NPE caused by set a position less than 0 (823c34a)
Dialog
- Enforce material theme in M3 dialog styles (728a1e6)
BottomNavigationView
MaterialShapeDrawable
- Implement getAlpha() (5ff917d)
Other
- update library version to 1.6.0-alpha01 (53ddac4)
- Internal change (a487c89)
- Internal change (9d86d27)
- Add margin flags to BottomSheetBehavior for system inset bars. (185a0f9)
- Automated g4 rollback of changelist 409212345 (d5729d5)
- Removed extra space between the list view container and the navigation bar. (6517aa6)
- Add margin flags to BottomSheetBehavior for system inset bars. (022a05f)
- Small clean-up of CollapsingTextHelper (c80177d)
- Internal change. (33f1e3b)
- Remove IllegalArgumentException in settleToState (dbd37d2)
Full list of changes
1.5.0-beta01
1.5.0-alpha05
Dependency Updates
- No dependency updates.
Library Updates
Material 3
Color
Dialog
Slider
- addOnChangeListener should take NonNull value (8297cf8)
ProgressIndicator
- Fix typo in ProgressIndicator.md (bf3a87e)
TopAppBar
MaterialButton
- Update icon state on Drawable state change. (5844d3c)
MaterialDatePicker
- Replace confirm button strings (cde684a)
CollapsingToolbarLayout
- Allow customizing the title position interpolator (1b8fb30)
BottomNavigationView
- getPresenter update (c1f48a7)
TextInputLayout
TimePicker
- Attempt to fix onDoubleTap() NullPointerException (3a57f5d)
- Make MaterialTimePicker implement OnDoubleTapListener interface instead of instantiating anonymous inner class (93cdd95)
- Fix showing keyboard requires 2 taps in text input mode (e906367)
- Fix Input mode is not changed when keyboard icon is clicked when the app is returned from background (0181029)
FloatingActionButton
- [FloatingActionButton]add setter for max image size (1f7202a)
Snackbar
- Fix maxWidth and maxInlineActionWidth are not applied (8729d8a)
Chip
- Update chip styles with spec (abb9d5b)
Tokens
- Updated resources to v0.54. (c1f7dfc)
A11y
- Removed TextInputLayout's placeholder text duplicated announcement, and fixed edge case where placeholder text was being enabled and added to the input frame while it was set to null. (2701161)
- Removed TextInputLayout's placeholder text duplicated announcement. (aa58657)
- Announce time has changed after clock selection (228ad85)
Catalog
- add snackbars to toggles (7cc64fd)
- Simplified getting the fold position for the Adaptive demos. Included considering whether there's a hinge for some cases. (3668ca7)
- Fixed Activities in manifest for single module Gradle build (79e6834)
- Changed ListView adaptive demo to include fold position if needed. (82ca11a)
- Implemented M3 Supporting Panel demo. (a2815ae)
Documentation
- Update for FAB developer documentation (d247b5b)
- Update Button developer documentation (f14c86d)
- Fix container transform links in Motion dev doc (9954963)
- Update title case to sentence case in developer documentation (905520e)
- Minor punctuation and formatting fixes (84e60c9)
- Update Getting Started doc link to DSL -> MDC migration guide (e4f70b6)
- Update Motion dev doc assets (a5f6d10)
- Small doc fixes. (11c59d6)
- Small fixes. (844248c)
- Fix links in CanonicalLayouts.md (adb1ef5)
- Updated Canonical Layouts doc. (f664923)
- Update library version in Getting Started doc to 1.5.0-alpha04 (2e5957e)
- Fixed formatting of multiline tables in dev docs (a013230)
- Fix dev doc format (615954d)
- Update Divider developer documentation (7879b27)
- Added initial canonical layouts guide doc. (5290988)
Other
- update library version to 1.5.0-alpha05 (fb8e131)
- Automated g4 rollback of changelist 404871534 (8bf3bde)
- Automated g4 rollback of changelist 404266249 (01c1fc7)
- Remove all broken attr links from Javadocs (9ae56ce)
- Added styles in res-public. (9de9319)
- Automated g4 rollback of changelist 398768587 (e9bca65)
- Cleanup (15f9b24)
Full list of changes
1.5.0-alpha04
Dependency Updates
Dependency | Previous version | New version |
---|---|---|
drawerlayout | N/A | 1.1.1 |
Library Updates
Material 3
- Updated generated typography token resources and text appearances (39f6190)
- Added M3 Bottom Sheet styles (cdafe75)
- Added M3 Progress Indicator styles (5c2a592)
- Added M3 Snackbar styles (41219f0)
- Fixed Gradle dependency of BuildCompat (31af619)
- Added Medium and Large collapsing toolbar Top App Bar Catalog demos (7463f9a)
- Added compress effect Top App Bar demo to Catalog (9534612)
- Added tertiary FAB color variant (054f1db)
- Added M3 styles for Dialog (f01e6a8)
- Added M3 theme tests (e509cb4)
- Updated date picker title typography (83e73de)
- Added new navigation rail styles. (c6d0f7c)
- Fixed favorite demo button icon colors in Catalog (574f83d)
- Added M3 styles for navigation view (d0edb45)
- Added filled card style to M3 themes (b40b782)
CollapsingToolbarLayout
- Update the duration in setScrimAnimationDuration if scrimAnimator is already created (9382bb0)
AppBarLayout
- Fixed stateListAnimator related elevation bug (b778645)
MaterialDatePicker
- Fixed excessive whitespace (8fda897)
BottomAppBar
- Support showing/hiding immediately (34740b6)
Color
Catalog
LinearProgressIndicator
- Improved the smooth transition from indeterminate mode to determinate mode (2161743)
TimePicker
NavigationRail
Tab
AppBar
- Fixed incorrect scroll position after orientation changes (4bec3e2)
NavigationView
- Added support for changing item size, divider insets, label insets, and corner size (e8c1d98)
Full list of changes
1.5.0-alpha03
Dependency Updates
Dependency | Previous version | New version |
---|---|---|
compileSdkVersion | 30 | 31 |
targetSdkVersion | 29 | 31 |
annotation | 1.0.1 | 1.2.0 |
Library Updates
Highlight: Early access preview of Material 3
This release includes a preview of the new Material library.
New Material 3 themes and many updated component styles have been added. More to come in future releases!
Important:
- Make sure to update your app's
compileSdkVersion
to 31 when using this version of the library. - If using the new
DynamicColors.java
util class to apply dynamic colors on Android 12, make sure to update your app to depend on AndroidX Core version 1.6.0 or later (e.g.,androidx.core:core:1.6.0
) (#2353).
Changes
Material 3
(new!)- Create M3 themes (27757d0)
- Create M3 Top App Bar styles (18490ff)
- Create M3 Bottom Navigation (Navigation Bar) styles (999b247)
- Create M3 regular FAB styles (b06977b)
- Create M3 large FAB styles (ca8f4cb)
- Create M3 Extended FAB styles (6ba1a92)
- Create M3 Button styles (6bfa584)
- Create M3 Chip styles (7f597a7)
- Create M3 Tabs styles (60782a5)
- Create M3 Bottom App Bar styles (167b198)
- Create M3 Date Picker styles (2901012)
- Create M3 Time Picker styles (a1d09ac)
- Create M3 Menu styles (0998e9d)
- Create M3 Switch styles (906fb2d)
- Create M3 Checkbox styles (4e0d5b0)
- Create M3 Radio Button styles (a342adc)
- Create M3 Text Field styles (edbc4e1)
- Create M3 Slider styles (0064aa1)
- Create M3 Card styles (e5fb9d1)
- Create M3 Badge styles (786e6b5)
- Create M3 Tooltip styles (a7cb1f0)
- Create M3 Divider styles (fabb5ea)
- Split dynamic color token resources into values-v31 (8357c9a)
- Chip style updates (492e37f)
- Update Color dev doc to M3 (687505e)
- Create SurfaceColors class in M3 (27e7b00)
- Reorganize styles (ebacf79)
- Reorganize resources. (f2eaf0c)
- Use colorPrimary for elevation overlay color for both baseline and dynamic (1cf724b)
- Integrated Tokens shape resources. (585fd8d)
- Integrated Tokens motion resources. (083f01d)
- Integrated Tokens state layer resources. (d1fb3f9)
- Integrated Tokens elevation resources. (3caa9cd)
- Integrated Tokens system resources. (293457c)
- Integrated Tokens color system resources. (0995f99)
- Create dynamic color support in M3 (febe257)
- Fixed collapsing toolbar collapsed title text appearance (cb74134)
- Update Font catalog demo to use new typescale. (7bcb917)
- Updated text appearance mappings (a461de5)
- Fixed styling in themes due to bad merge (0c6f435)
- Updated ref colors, background/surface color, and error color. (23c9f27)
- Updated colorPrimaryDark to point to colorPrimary (f428f20)
- Set up elevation overlays and colors in themes + theme overlays (b9e5797)
- Removed disabled color theme attrs (17a459a)
- Create M3 ripple alpha resources (04b06ae)
- Update compileSdkVersion to 31 - Android S (40509dc)
- Add new typography system TextAppearance styles and set attrs in theme. (baf55ec)
- Define new typography system theme attributes. (beb51dc)
- Define new color system theme attributes (1ed1c29)
- Update Dark dialog theme to have correct dark dynamic color theme overlay (c369128)
- Updated some Catalog demo references to Material3 styles (e776908)
- Update Catalog naming to Material 3 (ae20031)
- Update Catalog theme(s) to Material3 and fix Material3 date/time picker theme overlays (5d940f1)
Documentation
TextInputLayout
TimePicker
AppBarLayout
- Make it possible to disable app bars' shadow (a682ab0)
Tabs
CollapsingToolbarLayout
- Fix expanded height incorrect after rotation (ec3f96c)
Catalog
Theming
- Add isMaterial3Theme attr and set to true in 4 main Material3 themes (8670643)
Badging
- Move badge assets into directory to be consistent with other components, and delete unused image (760effb)
Chip
- Remove duplicate line (f80b866)
MaterialButton
- Material button lollipop shape fix (153fdee)
Other
Full list of changes
1.5.0-alpha02
Library Updates
BottomSheet
MaterialCardView
Chip
Slider
- Fix minSeparation having no effect when stepSize > 0 (2d589bd)
BottomAppBar
Other
- Version 1.5.0-alpha02 (0e5c393)
- Updated some string translations for date picker, time picker, and text field (57e3bc0)
- Fixed the transparent strip drawn at the ends of the indicator. (a55f3b8)
- Added null check in requestAnimatorAfterCurrentCycle for disjoint indeterminate animator. (456abd5)
- Fixed the transparent strip drawn at the ends of the indicator. (f9f57d7)
- Add setLiftableOverrideEnabled() method to allow toggling between automatic and manual setLifted() behavior (e2c911b)
- Updated setLifted() to preserve lifted state if using setLiftable() programmatically (67f9e9d)
- Apply the max width/height during measure instead of modifying layout params (9fb73b5)
- Internal change (cbf7bca)
- Added listener for when lift on scroll background elevation and color change (3008d78)
- Modify updateAppBarLayoutDrawableState logic to only require a child at an offset for conditions that depend on that child. For conditions that can be determined just based on the AppBarLayout, always check those conditions. (3eea607)
- Added support for statusBarForeground lift on scroll elevation overlay for edge to edge mode and updated demo (aaa0444)
- Fix ViewDragHelper state inconsistency (a2e7673)
- Fix styles and attrs references in documentation (27b99ed)
Catalog
- Small updates to music player demo. (cc4a604)
Transitions / Motion
- Fix NPE when removing window background (b51692d)
MaterialDatePicker
- Date selector hint incorrectly localized (47868d8)
Documentation
- Fix typo (4229145)