6328 Commits

Author SHA1 Message Date
rightnao
845a0e385a [Lists] Update state colors for label styles and update demos so ListItemCardView children will duplicate and pass on its parent state
PiperOrigin-RevId: 856272316
2026-01-14 20:57:03 +00:00
rightnao
5cb1500477 [Catalog] Update List docs and demo to be more clear on the primary action triggered corresponding with the growing element in the list swipe for a11y
Resolves https://github.com/material-components/material-components-android/issues/4992

PiperOrigin-RevId: 854315377
2026-01-12 16:17:32 +00:00
pubiqq
58ad14ea94 [TopAppBar] Make letter spacing dependent on text size in CollapsingTextHelper
Resolves https://github.com/material-components/material-components-android/pull/4640

GIT_ORIGIN_REV_ID=587f81fd992281152fb9a0c83ae74d47cde4c3a0
PiperOrigin-RevId: 854203889
2026-01-12 16:16:57 +00:00
dsn5ft
00e5edac88 [i18n] Update string translations
(copyright year + snackbar close button content description)

PiperOrigin-RevId: 853819674
2026-01-12 16:16:19 +00:00
Material Design Team
1fd35bc7e8 [DatePicker] Add tooltips to icon buttons
Adds tooltips to the month navigation buttons in MaterialCalendar and the header toggle button in MaterialDatePicker

PiperOrigin-RevId: 853333712
2026-01-08 18:00:48 +00:00
Material Design Team
67bd159133 [Catalog] Fix initial content description of the navigation drawer toggle in demos
Without calling `syncState()`, the `ActionBarDrawerToggle` defaults to the "Navigate up" description, ignoring the custom "Show navigation drawer" description until the user interacts with the drawer.

PiperOrigin-RevId: 853203850
2026-01-08 17:57:23 +00:00
pekingme
33ff7ce403 [Catalog] Internal cleanup
PiperOrigin-RevId: 852898414
2026-01-08 17:48:57 +00:00
rightnao
4dba971326 [Catalog] Fix MultiSectionListDemoFragment to correctly read view type
Resolves https://github.com/material-components/material-components-android/issues/4987

PiperOrigin-RevId: 852363363
2026-01-05 19:47:20 +00:00
Material Design Team
dd70ef92df [Catalog] Add tooltips to FABs and expand/collapse button
PiperOrigin-RevId: 852252718
2026-01-05 19:46:36 +00:00
rightnao
504300d37e [Lists] Support start/end reveal gravity in ListItemLayout
PiperOrigin-RevId: 846460595
2025-12-19 13:52:24 +00:00
pubiqq
499350d454 [Button] Fix click sound for checkable button
Resolves https://github.com/material-components/material-components-android/pull/4967
Resolves https://github.com/material-components/material-components-android/issues/4966

  - 30f9eff3320dcf06af85b738e9eb49eb43abc096 by pubiqq <serj.ese@gmail.com>

PiperOrigin-RevId: 846358306
2025-12-19 13:50:49 +00:00
Eugene Golushkov
88717fc8d9 [SideSheet] Prevent NullPointerException when viewRef was nullified and only then accessed by runAfterLayout lambda
Resolves https://github.com/material-components/material-components-android/pull/4974

  - 93ab09b1f1591b9b1d1055545325a0f1f6fe08f8 by Eugene Golushkov <e.golushkov@nospam-gmail.com>

PiperOrigin-RevId: 846288956
2025-12-19 13:50:14 +00:00
Material Design Team
71d88f59ee [TimePicker] Fix ClockFaceView cropping in split-screen
Cropping occurred because `ClockFaceView` size calculation ignored parent constraints and radius calculation didn't update on resize.

PiperOrigin-RevId: 846258916
2025-12-19 13:48:16 +00:00
kendricku
cd3f114a3f [Release] Updated minSdkVersion to 23.
PiperOrigin-RevId: 845841935
2025-12-18 15:24:52 +00:00
kendricku
9cc5d57d7b [Release] Update MDC library version to 1.14.0-alpha08.
PiperOrigin-RevId: 845757552
1.14.0-alpha08
2025-12-17 15:22:45 +00:00
dependabot[bot]
8ba9d8bfb0 [Internal][Gradle] (deps): Bump org.jetbrains.kotlin.android from 2.1.21 to 2.2.20 in /catalog
Resolves https://github.com/material-components/material-components-android/pull/4950

  - 7187d69a254f24865f9df901710d5ccec0316cd2 by dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

PiperOrigin-RevId: 845744757
2025-12-17 15:14:12 +00:00
hunterstich
71f014fa41 [Snackbar] Added optional close icon
PiperOrigin-RevId: 845256053
2025-12-17 14:23:55 +00:00
rightnao
d5934ee5ba [Lists] Support skipping the open swipe state so clients can go straight to the primary action
PiperOrigin-RevId: 843871144
2025-12-15 13:55:28 +00:00
rightnao
75f0a4e812 [Lists] Add getSwipeState method and demo, and refactored to set necessary swipe elements before drag so they are available for programmatic swipes
PiperOrigin-RevId: 842819821
2025-12-12 12:43:12 +00:00
pekingme
f86cedd44a [Button] Defer icon changes during width animation in MaterialButton.
This change introduces pending states for icon and icon size. When a width animation is active, calls to setIcon and setIconSize are deferred and applied only after the animation completes, preventing layout conflicts.

PiperOrigin-RevId: 840343132
2025-12-08 14:24:26 +00:00
Material Design Team
0b669dab7d [Slider] Adjust thumb-track gap only for the pressed thumb
The gap between the thumb and track is now calculated on the fly for each thumb, considering whether the thumb is currently pressed.

PiperOrigin-RevId: 839683792
2025-12-04 16:46:53 +00:00
rightnao
50bca3279a [Lists] Updates to styles
PiperOrigin-RevId: 837253230
2025-12-02 15:15:27 +00:00
Material Design Team
7fc1c4ff14 [Slider][A11y] Fix D-Pad focus trap on horizontal sliders.
On D-Pad controlled devices like Android TV, pressing up or down on a focused horizontal slider would change its value instead of moving focus to an adjacent UI element. This trapped users in the slider.

This CL fixes the focus trap by removing the key handlers for DPAD_UP and DPAD_DOWN, allowing the Android system to handle focus navigation as expected.

PiperOrigin-RevId: 837044072
2025-12-02 15:14:33 +00:00
rightnao
c24017b4fc [Lists] Create expandable demo
PiperOrigin-RevId: 836818695
2025-12-02 15:09:25 +00:00
leticiars
fb64362c9f [Catalog] Update button demos so all buttons are using the updated styles.
PiperOrigin-RevId: 836761765
2025-12-02 15:07:41 +00:00
rightnao
1dbfdd74d5 [Lists] Make SwipeableListItem and RevealableListItem public and add swipe state callback
PiperOrigin-RevId: 836752108
2025-12-02 15:05:54 +00:00
rightnao
cad79edd74 [List] Update docs
PiperOrigin-RevId: 836747924
2025-12-02 15:02:11 +00:00
Material Design Team
dcd9898640 [DatePicker] Cache isFullscreen state in MaterialCalendar
PiperOrigin-RevId: 836142198
2025-11-24 12:44:22 -08:00
rightnao
93ae7307a0 [Lists] Add styles and theme overlays for material icon buttons inside lists
PiperOrigin-RevId: 834834478
2025-11-24 12:43:02 -08:00
rightnao
6310274b72 [List][Catalog] Address a11y issues
PiperOrigin-RevId: 834524481
2025-11-24 12:42:08 -08:00
Material Design Team
0153138811 [FloatingActionButton] Allow collapsed size to be set.
PiperOrigin-RevId: 834422708
2025-11-24 12:41:08 -08:00
conradchen
6b3be338a8 [Release] Update MDC library version to 1.14.0-alpha07.
PiperOrigin-RevId: 834345589
1.14.0-alpha07
2025-11-19 10:53:13 -08:00
Material Design Team
757f9f3db1 [DatePicker][A11y] Fix TAB keyboard trap and add DPAD month navigation.
This change fixes a keyboard trap in MaterialDatePicker where the TAB key focus was stuck within the month grid. TAB navigation is now limited to the days within the current month, allowing focus to move out of the picker.

For navigating between months, this change introduces DPAD (left/right arrow key) navigation. When on the first or last valid day of the month, the arrow keys will navigate to the previous or next month.

This CL also prevents keyboard focus from landing on disabled dates. Since GridView does not natively support skipping disabled items, custom logic has been added to find and focus on the nearest valid day during keyboard navigation.

Finally, a bug that caused focus to incorrectly jump to a previous, non-visible month during TAB navigation has been fixed. This was caused by RecyclerView's view-recycling mechanism. The solution ensures that only the currently visible month is focusable, preventing focus from moving to off-screen months.

PiperOrigin-RevId: 834271529
2025-11-19 08:41:58 -08:00
rightnao
32e9fb21b2 [Lists] Add attr for min child width
PiperOrigin-RevId: 833521355
2025-11-19 08:39:17 -08:00
rightnao
f30777111e [SearchView] Make SearchView root unfocusable
PiperOrigin-RevId: 833520163
2025-11-19 08:30:34 -08:00
rightnao
176e92d3c3 [Lists] Support RTL swiping
PiperOrigin-RevId: 833469324
2025-11-19 08:29:02 -08:00
rightnao
3e5a7fdb44 [Lists] Added onSwipeStateChanged callback, drawable swiped state for ListCardView, and alpha changes to swiped view as it reaches the swipe-to-action state
PiperOrigin-RevId: 833409689
2025-11-17 21:09:21 +00:00
rightnao
3c1a61c3dd [Lists] Add styles for control elements in lists
PiperOrigin-RevId: 832010671
2025-11-17 21:08:16 +00:00
rightnao
69e9676e48 [Lists] Re-measure intrinsic width when measure specs change
PiperOrigin-RevId: 832002199
2025-11-17 21:07:11 +00:00
rightnao
692bd113ad [Lists] Add more optional styles and update demos to show more variety of sample list content
PiperOrigin-RevId: 831979827
2025-11-17 21:05:48 +00:00
rightnao
235e8cfe71 Automated g4 rollback of changelist 816428327
PiperOrigin-RevId: 831030528
2025-11-17 21:04:30 +00:00
manabu-nakamura
861ec3f220 [Catalog] Use wrap overflowMode for button groups in theme picker
Resolves https://github.com/material-components/material-components-android/pull/4926

  - c6ded3d0aed2105cf3981f3531c9c4da4dcd0510 by manabu-nakamura <ma.nakamura@gmail.com>

PiperOrigin-RevId: 830954339
2025-11-11 18:51:01 +00:00
rightnao
0e1724824a [NavigationView] Set navigation menu item's a11y role description so it doesn't default to 'radio button' due to being checkable
PiperOrigin-RevId: 830619106
2025-11-11 18:49:41 +00:00
pekingme
9a8272d9c1 [Shape] Updated isRoundRectCornerMorph and pathDirty logic in MaterialShapeDrawable
PiperOrigin-RevId: 829468349
2025-11-07 17:58:47 +00:00
rightnao
07a3be50c2 [Lists] Add swipe for action state
PiperOrigin-RevId: 828603206
2025-11-07 17:57:33 +00:00
Material Design Team
2e04704341 [Internal change] Removed references to the AndroidJdkLibsChecker Error Prone check
PiperOrigin-RevId: 828144964
2025-11-07 17:56:28 +00:00
leticiars
c4d19f6f7d [Slider] Fix ACTION_CANCEL motion touch event handling so that the slider resets its state if a cancel happens. Also don't let slider update incorrectly when a touch event may be overlapping with back gesture inset areas, as the back event takes precedence.
PiperOrigin-RevId: 828106972
2025-11-07 17:51:26 +00:00
pekingme
90a8043ad3 [Shape] Code format.
PiperOrigin-RevId: 828094095
2025-11-07 17:49:44 +00:00
pekingme
ea9d25050c [Shape] Always skip corner morph animation on bounds change in MaterialShapeDrawable.
PiperOrigin-RevId: 827536893
2025-11-07 17:48:18 +00:00
Material Design Team
a207114c60 [DatePicker] Add MonthAdapter helpers for finding enabled days
This change introduces helper methods to `MonthAdapter` to allow callers to identify days that are enabled according to the `CalendarConstraints`.

PiperOrigin-RevId: 826466043
2025-10-31 21:09:45 +00:00